From 956f6fc2c6a36b44e91703dbbeec6ca8ceaf2b68 Mon Sep 17 00:00:00 2001 From: quenenni Date: Thu, 17 Aug 2017 04:35:51 +0200 Subject: [PATCH] fonction generate_password dans alternc.js --- bureau/admin/js/alternc.js | 57 ++++++++++++++++++++++++++++---------- 1 file changed, 42 insertions(+), 15 deletions(-) diff --git a/bureau/admin/js/alternc.js b/bureau/admin/js/alternc.js index b835b7c0..e0ecabb5 100644 --- a/bureau/admin/js/alternc.js +++ b/bureau/admin/js/alternc.js @@ -59,24 +59,51 @@ function false_if_empty(id,err_msg) { } } -function generate_password(len){ - len = parseInt(len); - if(!len) - len = 8; - var password = ""; - var chars = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; - var charsN = chars.length; - var nextChar; - - for(i=0; i= 4) { + var allChars = numberChars + upperChars + lowerChars + specialchars; + } else { + var allChars = numberChars + upperChars + lowerChars; } - return password; + var randPasswordArray = Array(passwordLength); + randPasswordArray[0] = numberChars; + randPasswordArray[1] = upperChars; + randPasswordArray[2] = lowerChars; + if (classcount == 4) { + randPasswordArray[3] = specialchars; + randPasswordArray = randPasswordArray.fill(allChars, 4); + } else { + randPasswordArray = randPasswordArray.fill(allChars, 3); + } + + return shuffleArray(randPasswordArray.map(function(x) { return x[Math.floor(Math.random() * x.length)] })).join(''); } -function generate_password_html(id, size, field1, field2) { - $("#z"+id).html(" Refresh"); +function shuffleArray(array) { + for (var i = array.length - 1; i > 0; i--) { + var j = Math.floor(Math.random() * (i + 1)); + var temp = array[i]; + array[i] = array[j]; + array[j] = temp; + } + return array; +} + +function generate_password_html(id, size, field1, field2, classcount) { + $("#z"+id).html(" Refresh"); $("#inp"+id).focus(); $("#inp"+id).select(); if (field1 != "") { $(field1).val( $("#inp"+id).val() ); }