/*This function verifies password entry in the registration and options areas */
function doDigestPassword() {
    var password = "";
    var pw1 = document.userinfo.pw1.value;
    var pw2 = document.userinfo.pw2.value;
	
    if ( pw1.length > 0 ) {
      if ( pw1 == pw2 ) {
        password = MD5(pw1);
      } else {
        document.userinfo.errorState.value = "PW1_PW2_MISMATCH";
      }
    } else {
      document.userinfo.errorState.value = "NEED_PW1";
    }
    document.userinfo.pass.value = password;
    document.userinfo.pw1.value = "";
    document.userinfo.pw2.value = "";
    document.userinfo.submit();
  }


/*This function sets the response value for the login form. */
function doChallengeResponse() {
  var username;
  var am;
  var full_username = document.login.username.value;
  var pos = full_username.indexOf(":");
  if ( pos >= 0 && pos < full_username.length - 1 ) {
    username = full_username.substring(0,pos);
    am = full_username.substring(pos+2,full_username.length);
    if ( am == "am" || am == "AM" ) {
      document.login.am_login.value = "Y";
    } else {
      username = full_username;
    }
  } else {
    username = full_username;
  }

  document.login.username.value = username;
  str = username + ":" +
        MD5(document.login.pass.value) + ":" +
        document.login.challenge.value;

  document.login.response.value = MD5(str);
  document.login.pass.value = "";
  document.login.pass.disabled = true;
  document.login.submit();
}

/*This function checks the passwords for password change. */
function doPasswordCheck() {
  doSubmit = false;
  var npassword = "";
  var pw1 = document.newuser.password.value;
  var pw2 = document.newuser.password2.value;
  var errorText = "";

	
    	if ( pw1.length > 0 ) 
    	{
     		if ( pw1 == pw2 ) 
     		{
      		doSubmit = true;
      		npassword = MD5(pw1);
      	}
      	 else 
      	{
        		errorText = "Your verify password does not match your new password.";
      	}
      }
      else
      	doSubmit = true;
      	
  	if ( doSubmit ) 
  	{
    		document.newuser.password2.value = null;
    		document.newuser.password.value = npassword;
    		document.newuser.submit();
  	} 
  	else 
  	{
    		alert(errorText);
  	}

}

/*This function checks all the passwords for password change. */
function doFullPasswordCheck(cpassword) {
  doSubmit = false;
  var opassword = MD5(document.changepass.oldpass.value);
  var npassword = "";
  var oldpass = document.changepass.oldpass.value;
  var pw1 = document.changepass.newpass.value;
  var pw2 = document.changepass.newpass2.value;
  var errorText = "";

  if ( oldpass.length > 0 ) {
    if ( opassword == cpassword ) {
      if ( pw1.length > 0 ) {
        if ( pw1 == pw2 ) {
          doSubmit = true;
          npassword = MD5(pw1);
        } else {
          errorText = "Your confirm password does not match your new password.";
        }
      } else {
        errorText = "You need to specify a new password.";
      }
    } else {
      errorText = "That is not your current password.";
    }
  } else {
    errorText = "You need to specify your current password.";
  }

  if ( doSubmit ) {
    document.changepass.opass.value = opassword;
    document.changepass.npass.value = npassword;
    document.changepass.newpass.value = "";
    document.changepass.newpass2.value = "";
    document.changepass.submit();
  } else {
    alert(errorText);
  }

}


