Reset Password Check Input

100%
<script type="text/javascript">
    // Source: http://stackoverflow.com/questions/2593637/how-to-escape-regular-expression-in-javascript
    RegExp.quote = function(str) {
        return (str + '').replace(/[.?*+^$[\]\\(){}|-]/g, "\\$&");
    };
    $('.validation').hide();
    let $password = $("#password");
    let $confirmPassword = $("#confirm_password");
    let $submitButton = $("#reset-password-btn");
    let $form = $('#reset-password-form');

    function isPasswordValid() {
        return (checkMinLength() && checkMaxLength() && checkMinNumber() && checkMinUpperCase() && checkMinLowerCase() && checkMinCustomCharacters());
    }

    function checkMinLength() {
        return true;
    }

    function checkMaxLength() {
        return true;
    }

    function checkMinNumber() {
        return true;
    }

    function checkMinUpperCase() {
        return true;
    }

    function checkMinLowerCase() {
        return true;
    }

    function checkMinCustomCharacters() {
        return true;
    }

    function arePasswordsMatching() {
        return $password.val() === $confirmPassword.val();
    }

    function fieldsAreFilled() {
        return $password.val() !== "" && $confirmPassword.val() !== ""
    } <
    !--Can submit-- >
    function canSubmit() {
        return isPasswordValid() && fieldsAreFilled() && arePasswordsMatching();
    }

    function passwordEvent() {
        if (isPasswordValid()) {
            $password.next().hide();
        } else {
            $password.next().show();
        }
    } <
    !--Check Passwords match-- >
    function confirmPasswordEvent() {
        if (arePasswordsMatching()) {
            $confirmPassword.next().hide();
        } else {
            $confirmPassword.next().show();
        }
    }

    function htmlDecode(input) {
        let doc = new DOMParser().parseFromString(input, "text/html");
        return doc.documentElement.textContent;
    } <
    !--Enable or disable the submit button-- >
    function enableSubmitEvent() {
        $submitButton.prop("disabled", !canSubmit());
    } <
    !--Run passwords match check on click submit-- >
    $form.submit(function(event) {
            event.preventDefault(); //this will prevent the default submit
            if (arePasswordsMatching()) {
                $(this).unbind('submit').submit(); // continue the submit unbind preventDefault
            }
            confirmPasswordEvent();
        }) <
        !--Run passwords rule and field filled check-- >
        $password.focus(passwordEvent).keyup(passwordEvent).keyup(enableSubmitEvent); <
    !--Run field filled check-- >
    $confirmPassword.keyup(enableSubmitEvent); <
    !--Run submit button
    function code-- >
    enableSubmitEvent();
</script>
<script type="text/javascript">

    // Source: http://stackoverflow.com/questions/2593637/how-to-escape-regular-expression-in-javascript
    RegExp.quote = function(str) {
        return (str+'').replace(/[.?*+^$[\]\\(){}|-]/g, "\\$&");
    };


    $('.validation').hide();

    let $password = $("#password");
    let $confirmPassword = $("#confirm_password");
    let $submitButton = $("#reset-password-btn");
    let $form = $('#reset-password-form');

    function isPasswordValid() {
        return (checkMinLength() && checkMaxLength() && checkMinNumber() && checkMinUpperCase() && checkMinLowerCase() && checkMinCustomCharacters());
    }

    function checkMinLength() {
        ${#client.config.password_rules.min_length}$
        return ($password.val().length >= ${client.config.password_rules.min_length}$);
        ${/client.config.password_rules.min_length}$
        ${^client.config.password_rules.min_length}$
        return true;
        ${/client.config.password_rules.min_length}$
    }

    function checkMaxLength() {
        ${#client.config.password_rules.max_length}$
        return ($password.val().length <= ${client.config.password_rules.max_length}$);
        ${/client.config.password_rules.max_length}$
        ${^client.config.password_rules.max_length}$
        return true;
        ${/client.config.password_rules.max_length}$
    }

    function checkMinNumber() {
        ${#client.config.password_rules.min_number}$
        let numbers = ($password.val().match(/[0-9]/g)|| []);
        return (numbers.length >= ${client.config.password_rules.min_number}$);
        ${/client.config.password_rules.min_number}$
        ${^client.config.password_rules.min_number}$
        return true;
        ${/client.config.password_rules.min_number}$
    }

    function checkMinUpperCase() {
        ${#client.config.password_rules.min_upper_case}$
        let upper = ($password.val().match(/[A-Z]/g) || []);
        return (upper.length >= ${client.config.password_rules.min_upper_case}$);
        ${/client.config.password_rules.min_upper_case}$
        ${^client.config.password_rules.min_upper_case}$
        return true;
        ${/client.config.password_rules.min_upper_case}$
    }

    function checkMinLowerCase() {
        ${#client.config.password_rules.min_lower_case}$
        let lower = ($password.val().match(/[a-z]/g) || []);
        return (lower.length >= ${client.config.password_rules.min_lower_case}$);
        ${/client.config.password_rules.min_lower_case}$
        ${^client.config.password_rules.min_lower_case}$
        return true;
        ${/client.config.password_rules.min_lower_case}$
    }

    function checkMinCustomCharacters() {
        ${#client.config.password_rules.min_custom_characters}$
        let regex = new RegExp("[" + RegExp.quote(htmlDecode("${client.config.password_rules.custom_characters}$")) + "]", 'g');
        let custom = ($password.val().match(regex) || []);
        return (custom.length >= ${client.config.password_rules.min_custom_characters}$);
        ${/client.config.password_rules.min_custom_characters}$
        ${^client.config.password_rules.min_custom_characters}$
        return true;
        ${/client.config.password_rules.min_custom_characters}$
    }

    function arePasswordsMatching() {
        return $password.val() === $confirmPassword.val();
    }

    function fieldsAreFilled() {
        return $password.val() !== "" && $confirmPassword.val() !== ""
    }

    <!--Can submit -->
    function canSubmit() {
        return isPasswordValid() && fieldsAreFilled() && arePasswordsMatching();
    }

    function passwordEvent() {
        if (isPasswordValid()) {
            $password.next().hide();
        } else {
            $password.next().show();
        }
    }

    <!--Check Passwords match-->
    function confirmPasswordEvent() {
        if (arePasswordsMatching()) {
            $confirmPassword.next().hide();
        } else {
            $confirmPassword.next().show();
        }
    }

    function htmlDecode(input) {
        let doc = new DOMParser().parseFromString(input, "text/html");
        return doc.documentElement.textContent;
    }

    <!--Enable or disable the submit button-->
    function enableSubmitEvent() {
        $submitButton.prop("disabled", !canSubmit());
    }

    <!--Run passwords match check on click submit-->
    $form.submit(function(event) {
        event.preventDefault(); //this will prevent the default submit
        if(arePasswordsMatching()){
            $(this).unbind('submit').submit(); // continue the submit unbind preventDefault
        }
        confirmPasswordEvent();
    })

    <!--Run passwords rule and field filled check-->
    $password.focus(passwordEvent).keyup(passwordEvent).keyup(enableSubmitEvent);

    <!--Run field filled check-->
    $confirmPassword.keyup(enableSubmitEvent);

    <!--Run submit button function code-->
    enableSubmitEvent();
</script>
/* No context defined. */
  • Content:
    <script type="text/javascript">
    
        // Source: http://stackoverflow.com/questions/2593637/how-to-escape-regular-expression-in-javascript
        RegExp.quote = function(str) {
            return (str+'').replace(/[.?*+^$[\]\\(){}|-]/g, "\\$&");
        };
    
    
        $('.validation').hide();
    
        let $password = $("#password");
        let $confirmPassword = $("#confirm_password");
        let $submitButton = $("#reset-password-btn");
        let $form = $('#reset-password-form');
    
        function isPasswordValid() {
            return (checkMinLength() && checkMaxLength() && checkMinNumber() && checkMinUpperCase() && checkMinLowerCase() && checkMinCustomCharacters());
        }
    
        function checkMinLength() {
            ${#client.config.password_rules.min_length}$
            return ($password.val().length >= ${client.config.password_rules.min_length}$);
            ${/client.config.password_rules.min_length}$
            ${^client.config.password_rules.min_length}$
            return true;
            ${/client.config.password_rules.min_length}$
        }
    
        function checkMaxLength() {
            ${#client.config.password_rules.max_length}$
            return ($password.val().length <= ${client.config.password_rules.max_length}$);
            ${/client.config.password_rules.max_length}$
            ${^client.config.password_rules.max_length}$
            return true;
            ${/client.config.password_rules.max_length}$
        }
    
        function checkMinNumber() {
            ${#client.config.password_rules.min_number}$
            let numbers = ($password.val().match(/[0-9]/g)|| []);
            return (numbers.length >= ${client.config.password_rules.min_number}$);
            ${/client.config.password_rules.min_number}$
            ${^client.config.password_rules.min_number}$
            return true;
            ${/client.config.password_rules.min_number}$
        }
    
        function checkMinUpperCase() {
            ${#client.config.password_rules.min_upper_case}$
            let upper = ($password.val().match(/[A-Z]/g) || []);
            return (upper.length >= ${client.config.password_rules.min_upper_case}$);
            ${/client.config.password_rules.min_upper_case}$
            ${^client.config.password_rules.min_upper_case}$
            return true;
            ${/client.config.password_rules.min_upper_case}$
        }
    
        function checkMinLowerCase() {
            ${#client.config.password_rules.min_lower_case}$
            let lower = ($password.val().match(/[a-z]/g) || []);
            return (lower.length >= ${client.config.password_rules.min_lower_case}$);
            ${/client.config.password_rules.min_lower_case}$
            ${^client.config.password_rules.min_lower_case}$
            return true;
            ${/client.config.password_rules.min_lower_case}$
        }
    
        function checkMinCustomCharacters() {
            ${#client.config.password_rules.min_custom_characters}$
            let regex = new RegExp("[" + RegExp.quote(htmlDecode("${client.config.password_rules.custom_characters}$")) + "]", 'g');
            let custom = ($password.val().match(regex) || []);
            return (custom.length >= ${client.config.password_rules.min_custom_characters}$);
            ${/client.config.password_rules.min_custom_characters}$
            ${^client.config.password_rules.min_custom_characters}$
            return true;
            ${/client.config.password_rules.min_custom_characters}$
        }
    
        function arePasswordsMatching() {
            return $password.val() === $confirmPassword.val();
        }
    
        function fieldsAreFilled() {
            return $password.val() !== "" && $confirmPassword.val() !== ""
        }
    
        <!--Can submit -->
        function canSubmit() {
            return isPasswordValid() && fieldsAreFilled() && arePasswordsMatching();
        }
    
        function passwordEvent() {
            if (isPasswordValid()) {
                $password.next().hide();
            } else {
                $password.next().show();
            }
        }
    
        <!--Check Passwords match-->
        function confirmPasswordEvent() {
            if (arePasswordsMatching()) {
                $confirmPassword.next().hide();
            } else {
                $confirmPassword.next().show();
            }
        }
    
        function htmlDecode(input) {
            let doc = new DOMParser().parseFromString(input, "text/html");
            return doc.documentElement.textContent;
        }
    
        <!--Enable or disable the submit button-->
        function enableSubmitEvent() {
            $submitButton.prop("disabled", !canSubmit());
        }
    
        <!--Run passwords match check on click submit-->
        $form.submit(function(event) {
            event.preventDefault(); //this will prevent the default submit
            if(arePasswordsMatching()){
                $(this).unbind('submit').submit(); // continue the submit unbind preventDefault
            }
            confirmPasswordEvent();
        })
    
        <!--Run passwords rule and field filled check-->
        $password.focus(passwordEvent).keyup(passwordEvent).keyup(enableSubmitEvent);
    
        <!--Run field filled check-->
        $confirmPassword.keyup(enableSubmitEvent);
    
        <!--Run submit button function code-->
        enableSubmitEvent();
    </script>
    
  • URL: /components/raw/hub_resetpasswordcheckinput/resetPasswordCheckInput.mustache
  • Filesystem Path: src/patterns/50-external/Xpresso/Hub_Partial/resetPasswordCheckInput/resetPasswordCheckInput.mustache
  • Size: 4.9 KB
  • Handle: @hub_resetpasswordcheckinput
  • Preview:
  • Filesystem Path: src/patterns/50-external/Xpresso/Hub_Partial/resetPasswordCheckInput/resetPasswordCheckInput.mustache

No notes defined.