From: Rico Hoppe Date: Wed, 27 Dec 2023 20:01:03 +0000 (+0000) Subject: redesigned change passwd pages X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e0b25f03c63eff24e9089d0f9d20399a7a5c2fbf;p=ipfire.org.git redesigned change passwd pages --- diff --git a/src/templates/auth/modules/password.html b/src/templates/auth/modules/password.html index 53978e30..f96869ad 100644 --- a/src/templates/auth/modules/password.html +++ b/src/templates/auth/modules/password.html @@ -1,38 +1,22 @@
-
- + -
- -
+
+
-
-
- -
- -
- {{ _("Passwords do not match") }} -
+
+
-
-
-
-
-
+
    -

    - - -
      -
      +
      diff --git a/src/templates/auth/modules/password.js b/src/templates/auth/modules/password.js index 43cadf79..562c83ef 100644 --- a/src/templates/auth/modules/password.js +++ b/src/templates/auth/modules/password.js @@ -15,7 +15,18 @@ $(function() { var quality; password1.keyup(function(event) { + form.trigger("change"); + }); + + password2.keyup(function(event) { + form.trigger("change"); + }); + + form.on("change", function() { + submit.prop("disabled", true); + var val1 = password1.val(); + var val2 = password2.val(); if (val1) { // Estimate password quality @@ -25,7 +36,7 @@ $(function() { var percentage = (quality.score + 1) * 20; // Set progress bar width - progress.css("width", percentage + "%"); + progress.val(percentage); // Clear all previous backgrounds progress.removeClass([ @@ -50,12 +61,15 @@ $(function() { } // Show any feedback - warning.empty(); feedback.empty(); if (quality.feedback) { + if (val2 && (val1 !== val2)) { + feedback.append("
    • {{ _("Passwords do not match") }}
    • "); + } + if (quality.feedback.warning) { - warning.html(quality.feedback.warning); + feedback.append("
    • " + quality.feedback.warning + "
    • "); } $.each(quality.feedback.suggestions, function (i, suggestion) { @@ -63,37 +77,16 @@ $(function() { }); } } else { - progress.css("width", "0%"); + progress.val(0); // Clear all feedback - warning.empty(); feedback.empty(); } - form.trigger("change"); - }); - - password2.keyup(function(event) { - form.trigger("change"); - }); - - form.on("change", function() { - $("#password-mismatch").hide(); - submit.prop("disabled", true); - - var val1 = password1.val(); - var val2 = password2.val(); - // We cannot submit the form when password2 is empty if (!val2) return; - // If the passwords match, we allow to submit the form - if (val1 !== val2) { - $("#password-mismatch").show(); - return; - } - if (!quality || quality.score < 3) return; diff --git a/src/templates/users/passwd.html b/src/templates/users/passwd.html index aadc69f7..1171196f 100644 --- a/src/templates/users/passwd.html +++ b/src/templates/users/passwd.html @@ -3,26 +3,38 @@ {% block title %}{{ account }} - {{ _("Change Password") }}{% end block %} {% block content %} -
      -
      -

      {{ _("Change Password") }}

      +
      +
      +
      +
      +
      +

      {{ _("Change Password") }}

      -
      - {% raw xsrf_form_html() %} +
      + + {% raw xsrf_form_html() %} -
      - +
      +
      + - -
      + +
      +
      - {% module Password(account) %} + {% module Password(account) %} -
      - +
      +
      + +
      +
      + +
      +
      - +
      -
      +
      {% end block %}