Piwigo Bugtracker

Piwigo bug tracker has moved to Github

This bugtracker is kept to provide history on old issues.


View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0002787Piwigousers & groupspublic2012.11.11 18:412015.07.06 12:15
Reporterlildadou 
Assigned Toplg 
PrioritynormalSeveritytweakReproducibilityN/A
StatusassignedResolutionopen 
PlatformOSOS Version
Product Version2.4.5 
Target Version2.8.0beta1Fixed in Version 
Summary0002787: Générateur de mot de passe dans les formulaire de création
Descriptionhttp://fr.piwigo.org/forum/viewtopic.php?pid=196059 [^]
TagsNo tags attached.
browserany
Database engine and version
PHP version
Web server
Attached Files

- Relationships

-  Notes
(0006732)
lildadou (reporter)
2012.11.11 18:43

Plop à tous,
je ne sais pas pour vous mais je suis toujours en manque d'inspiration lorsque je créer un nouvel utilisateur et que je me trouve face au champ "Mot de passe". Je dois souvent générer un mot de passe avec le trousseau de MacOS ou chercher un générateur côté client sur le Web quand je suis sur une machine Windows® pour en générer un.

Bref, tout ça pour dire que je trouve très utile ma petite modif du template d'origine pour générer un mot de passe simplement en cliquant à l'intérieur du champ. Le code JavaScript est pompé depuis [url=http://www.abricocotier.fr/12018-un-generateur-de-mots-de-passe-en-javascript [^]]abricocotier.fr[/url]. Je sais pas si le code est libre de droit.

Voici le diff:
[code]--- user_list.tpl.bak 2012-10-29 16:15:31.447316179 +0100
+++ user_list.tpl 2012-10-29 14:19:35.536823678 +0100
@@ -10,7 +10,7 @@
         <label>{'Password'|@translate} <input type="password" name="password"></label>
         <label>{'Confirm Password'|@translate} <input type="password" name="password_conf" id="password_conf"></label>
         {else}
- <label>{'Password'|@translate} <input type="text" name="password"></label>
+ <label>{'Password'|@translate} <input type="text" name="password" onclick="GeneratePassword(this)"></label>
         {/if}
         <label>{'Email address'|@translate} <input type="text" name="email"></label>
     <label>{'Send connection settings by email'|@translate} <input type="checkbox" name="send_password_by_mail" value="1" checked="checked"></label>
@@ -284,7 +284,56 @@
     }
     return true;
 }
-);{/literal}
+);
+
+function GeneratePassword(input) {
+ var length=21;
+ var sPassword = "";
+
+ var lowercase = true;
+ var uppercase = true;
+ var figures = true;
+ var punction = false;
+
+ for (i=1; i <= length; i++) {
+
+ numI = getRandomNum();
+ if ((punction == 0 && checkPunc(numI)) || (figures == 0 && checkFigures(numI)) ||(uppercase == 0 && checkUppercase(numI))) {
+ i -= 1;
+ } else {
+ sPassword = sPassword + String.fromCharCode(numI);
+ }
+ }
+ input.value=sPassword;
+ return true;
+}
+
+function getRandomNum() {
+ // between 0 - 1
+ var rndNum = Math.random()
+ // rndNum from 0 - 1000
+ rndNum = parseInt(rndNum * 1000);
+ // rndNum from 33 - 127
+ rndNum = (rndNum % 94) + 33;
+ return rndNum;
+}
+
+function checkPunc(num) {
+ if (((num >=33) && (num <=47)) || ((num >=58) && (num <=64))) return true;
+ if (((num >=91) && (num <=96)) || ((num >=123) && (num <=126))) return true;
+ return false;
+}
+
+function checkFigures(num) {
+ if ((num >=48) && (num <=57)) return true;
+ else return false;
+}
+
+function checkUppercase(num) {
+ if ((num >=65) && (num <=90)) return true;
+ else return false;
+}{/literal}
+
 // ]]>
 </script>[/code]

- Issue History
Date Modified Username Field Change
2012.11.11 18:41 lildadou New Issue
2012.11.11 18:41 lildadou browser => any
2012.11.11 18:43 lildadou Note Added: 0006732
2015.07.06 12:15 plg Assigned To => plg
2015.07.06 12:15 plg Status new => assigned
2015.07.06 12:15 plg Target Version => 2.8.0beta1


Copyright © 2000 - 2017 MantisBT Team
Contact
Powered by Mantis Bugtracker