diff --git a/app/modules/web/themes/material-blue/js/app-theme.js b/app/modules/web/themes/material-blue/js/app-theme.js index c2a34579..339f07c1 100644 --- a/app/modules/web/themes/material-blue/js/app-theme.js +++ b/app/modules/web/themes/material-blue/js/app-theme.js @@ -68,93 +68,65 @@ sysPass.Theme = function (Common) { }; // Función para generar claves aleatorias. - const password = function ($target) { - let i = 0; - let chars = ""; - let genPassword = ""; + const randomPassword = function ($target) { + Common.generateRandomPass(function (password, level) { + $target.attr("data-pass", password); - const getRandomChar = function (min, max) { - return chars.charAt(Math.floor((Math.random() * max) + min)); - }; + // if ($target) { + const $dstParent = $target.parent(); + const $targetR = $("#" + $target.attr("id") + "_repeat"); - if (Common.passwordData.complexity.symbols) { - chars += "!\"\\·@|#$~%&/()=?'¿¡^*[]·;,_-{}<>"; - } + Common.outputResult(level, $target); - if (Common.passwordData.complexity.numbers) { - chars += "1234567890"; - } + // Actualizar los componentes de MDL + const mdl = new MaterialTextfield(); - if (Common.passwordData.complexity.chars) { - chars += "abcdefghijklmnopqrstuvwxyz"; + // Poner la clave en los input y actualizar MDL + $dstParent.find("input:password").val(password); + $dstParent.addClass(mdl.CssClasses_.IS_DIRTY).removeClass(mdl.CssClasses_.IS_INVALID); - if (Common.passwordData.complexity.uppercase) { - chars += String("abcdefghijklmnopqrstuvwxyz").toUpperCase(); + // Poner la clave en el input de repetición y encriptarla + if ($targetR.length > 0) { + $targetR.val(password).parent().addClass(mdl.CssClasses_.IS_DIRTY).removeClass(mdl.CssClasses_.IS_INVALID); + Common.encryptFormValue($targetR); } - } - for (; i++ < Common.passwordData.complexity.numlength;) { - genPassword += getRandomChar(0, chars.length - 1); - } - - $target.attr("data-pass", genPassword); - - const level = zxcvbn(genPassword); - Common.passwordData.passLength = genPassword.length; - - // if ($target) { - const $dstParent = $target.parent(); - const $targetR = $("#" + $target.attr("id") + "_repeat"); - - Common.outputResult(level, $target); - - // Actualizar los componentes de MDL - const mdl = new MaterialTextfield(); - - // Poner la clave en los input y actualizar MDL - $dstParent.find("input:password").val(genPassword); - $dstParent.addClass(mdl.CssClasses_.IS_DIRTY).removeClass(mdl.CssClasses_.IS_INVALID); - - // Poner la clave en el input de repetición y encriptarla - if ($targetR.length > 0) { - $targetR.val(genPassword).parent().addClass(mdl.CssClasses_.IS_DIRTY).removeClass(mdl.CssClasses_.IS_INVALID); - Common.encryptFormValue($targetR); - } - - // Mostar el indicador de complejidad - $dstParent.find("#passLevel").show(500); - // } else { - // Common.outputResult(level); - // $("input:password, input.password").val(genPassword); - // $("#passLevel").show(500); - // } + // Mostar el indicador de complejidad + $dstParent.find("#passLevel").show(500); + // } else { + // Common.outputResult(level); + // $("input:password, input.password").val(genPassword); + // $("#passLevel").show(500); + // } + }); }; // Diálogo de configuración de complejidad de clave const complexityDialog = function () { const content = - "