$()

in source/web_site/js/dash.js [528:618]


    $("#newPasswordForm").submit(function (e) {
      var newPassword = $("#newPassword").val();

      // If new password meets the criteria,
      if (newPassword.length >= 8 && newPassword.match(/[a-z]/)
        && newPassword.match(/[A-Z]/) && newPassword.match(/[0-9]/)
        && newPassword == $("#newPassword2").val())
      {
        $("#newPasswordModal").modal("hide");
        $("#newPasswordErr").addClass("hidden");
        $("#newPasswordMatchErr").addClass("hidden");
        $("#newPasswordComplexityErr").addClass("hidden");

        var userName = $("#userName").val();
        var password = $("#password").val();

        var authData = {
          UserName: userName,
          Password: password
        };

        var authDetails = new AmazonCognitoIdentity.AuthenticationDetails(authData);

        var poolData = {
          UserPoolId: cognitoUserPoolId,
          ClientId: cognitoAppClientId
        };

        var userPool = new AmazonCognitoIdentity.CognitoUserPool(poolData);
        var userData = {
          Username: userName,
          Pool: userPool
        };

        cognitoUser = new AmazonCognitoIdentity.CognitoUser(userData);

        cognitoUser.authenticateUser(authDetails, cognitoAuthFunctions);

      } else {
        $("#newPasswordErr").removeClass("hidden");

        if (newPassword != $("#newPassword2").val()) {
          $("#newPasswordMatchErr").removeClass("hidden");
        }
        else {
          $("#newPasswordMatchErr").addClass("hidden");
        }

        if (newPassword.length < 8 || !newPassword.match(/[a-z]/)
          || !newPassword.match(/[A-Z]/) || !newPassword.match(/[0-9]/)) {

          $("#newPasswordComplexityErr").removeClass("hidden");

          // Must be longer than 8 characters
          if (newPassword.length < 8 ) {
            $("#newPasswordLengthErr").removeClass("hidden");
          }
          else {
            $("#newPasswordLengthErr").addClass("hidden");
          }

          // Must contain a lowercase error.
          if (!newPassword.match(/[a-z]/)) {
            $("#newPasswordLowerErr").removeClass("hidden");
          }
          else {
            $("#newPasswordLowerErr").addClass("hidden");
          }

          // Must contain an uppercase letter.
          if (!newPassword.match(/[A-Z]/)) {
            $("#newPasswordUpperErr").removeClass("hidden");
          }
          else {
            $("#newPasswordUpperErr").addClass("hidden");
          }

          // Must contain a number.
          if (!newPassword.match(/[0-9]/)) {
            $("#newPasswordNumberErr").removeClass("hidden");
          }
          else {
            $("#newPasswordNumberErr").addClass("hidden");
          }
          
        }
        else {
          $("#newPasswordComplexityErr").addClass("hidden");
        }
      }
    });