// This is the CheckoutOrder javascript file for the BRSF
//Date: 04/10/08 Time: 9:17 am
//Name: Kunal Teckchandnai
//Description: All the inline javascript functions for the CheckoutOrder section of the BRSF should
//			   be included in this CheckoutOrder.js function only

 
function submitForm(form)
	{

		form.submit()
	} 	  
	
	  


function requireSelected(flSel)  {
var selindex = flSel.selectedIndex;
//var myindex= flSel.options[selindex];

if (selindex == 0) {
	return false;
}
return true;
} 

function isInteger(s){
	var i = 0;
    for (i = 0; i < s.length; i++){   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}

function requireValue(fld)
{ // disallow a blank field
 	if(fld.disabled) return true;
	if(!fld.value.length)
  	{ return false; }
  	return true;
}

function requireLength(fld,min,max)
{ // set minimum and/or maximum field lengths
 //alert('requireLength'); 
  if(!fld.value.length||fld.disabled) return true; // blank fields are the domain of requireValue 
  var len= fld.value.length;
  if(min > -1 && len < min)
  { //alert('min');
   return false; }
  if(max > -1 && len > max)
  { //alert('max'); 
  	return false; }
  return true;
}


function changeCase(form)  
{
	document.forms.Register.logonId.value=document.forms.Register.logonId.value.toLowerCase();
}

function resetErrorFieldsForUpdate()
		{
			
			var fieldClass = "field";
			var longFieldClass = "field long";
			var tallFieldClass = "field_tall";
			
			document.getElementById("firstNameError").className = fieldClass;
			document.getElementById("lastNameError").className = fieldClass;
			document.getElementById("emailAddressError").className = fieldClass;
			document.getElementById("securityQuestionError").className = fieldClass;
			document.getElementById("securityQuestionAnswerError").className = fieldClass;		
			var topErrorMessages = document.getElementById('topErrorMessages');
			topErrorMessages.innerHTML = '';	
			topErrorMessages.className = '';
			foundError = false;		
			
		}

function resetErrorFieldsForAdd()
		{
			
			var fieldClass = "field";
			var longFieldClass = "field long";
			var tallFieldClass = "field_tall";
			
			document.getElementById("usernameError").className = fieldClass;
			document.getElementById("passwordError").className = fieldClass;
			document.getElementById("confirmPasswordError").className = fieldClass;
			document.getElementById("firstNameError").className = fieldClass;
			document.getElementById("lastNameError").className = fieldClass;
			
			
			document.getElementById("securityQuestionError").className = fieldClass;
			document.getElementById("securityQuestionAnswerError").className = fieldClass;
			document.getElementById("emailAddressError").className = fieldClass;
					
			var topErrorMessages = document.getElementById('topErrorMessages');
			topErrorMessages.innerHTML = '';	
			topErrorMessages.className = '';
			foundError = false;		
			
		}

function resetLogonErrorFields()
		{
			
			var fieldClass = "field";
			var longFieldClass = "field long";
			var tallFieldClass = "field_tall";
			
			document.getElementById("usernameError").className = fieldClass;
			document.getElementById("passwordError").className = fieldClass;
			var topErrorMessages = document.getElementById('topErrorMessages');
			topErrorMessages.innerHTML = '';	
			topErrorMessages.className = '';
			foundError = false;		
			
		}		
	
		function isValidEmail(strEmail){
			var errorEmail = '';
			if (strEmail == null || strEmail == '') {
		  		errorEmail = '11000';
				return errorEmail;
			}
				
			var str = strEmail;
		  	var reg1 = /(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)|(^\#)|(^\*)|(^\@)|(^\&)|(^\^)|(%)/; //not valid 
		  	var reg2 = /^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{1,3}|[0-9]{1,3})(\]?)$/; // valid
			var reg3 = /^www/;//not valid
			//var reg4 = /[^0-9](aol|yahoo|msn|hotmail)/;
			var reg4 = /^[0-9][a-zA-Z0-9\-\.]+\@(aol|yahoo|msn|hotmail)/;//not valid
			//As people generally know about some basic admin email addresses, they are not allowed.
			var reg5 = /^webmaster@|^administrator@|^support@|^admin@/; //not valid
			//Regular domain level checks & Country level domain checks
			var reg6 = /(\.aero|\.biz|\.cat|\.com|\.coop|\.edu|\.gov|\.info|\.int|\.jobs|\.mil|\.mobi|\.museum|\.name|\.net|\.org|\.pro|\.tel|\.travel|\.ac|\.ad|\.ae|\.af|\.ag|\.ai|\.al|\.am|\.an|\.ao|\.aq|\.ar|\.as|\.at|\.au|\.aw|\.ax|\.az|\.ba|\.bb|\.bd|\.be|\.bf|\.bg|\.bh|\.bi|\.bj|\.bm|\.bn|\.bo|\.br|\.bs|\.bt|\.bv|\.bw|\.by|\.bz|\.ca|\.cc|\.cd|\.cf|\.cg|\.ch|\.ci|\.ck|\.cl|\.cm|\.cn|\.co|\.cr|\.cu|\.cv|\.cx|\.cy|\.cz|\.de|\.dj|\.dk|\.dm|\.do|\.dz|\.ec|\.ee|\.eg|\.er|\.es|\.et|\.eu|\.fi|\.fj|\.fk|\.fm|\.fo|\.fr|\.ga|\.gb|\.gd|\.ge|\.gf|\.gg|\.gh|\.gi|\.gl|\.gm|\.gn|\.gp|\.gq|\.gr|\.gs|\.gt|\.gu|\.gw|\.gy|\.hk|\.hm|\.hn|\.hr|\.ht|\.hu|\.id|\.ie|\.il|\.im|\.in|\.io|\.iq|\.ir|\.is|\.it|\.je|\.jm|\.jo|\.jp|\.ke|\.kg|\.kh|\.ki|\.km|\.kn|\.kr|\.kw|\.ky|\.kz|\.la|\.lb|\.lc|\.li|\.lk|\.lr|\.ls|\.lt|\.lu|\.lv|\.ly|\.ma|\.mc|\.md|\.mg|\.mh|\.mk|\.ml|\.mm|\.mn|\.mo|\.mp|\.mq|\.mr|\.ms|\.mt|\.mu|\.mv|\.mw|\.mx|\.my|\.mz|\.na|\.nc|\.ne|\.nf|\.ng|\.ni|\.nl|\.no|\.np|\.nr|\.nu|\.nz|\.om|\.pa|\.pe|\.pf|\.pg|\.ph|\.pk|\.pl|\.pm|\.pn|\.pr|\.ps|\.pt|\.pw|\.py|\.qa|\.re|\.ro|\.ru|\.rw|\.sa|\.sb|\.sc|\.sd|\.se|\.sg|\.sh|\.si|\.sj|\.sk|\.sl|\.sm|\.sn|\.so|\.sr|\.st|\.su|\.sv|\.sy|\.sz|\.tc|\.td|\.tf|\.tg|\.th|\.tj|\.tk|\.tl|\.tm|\.tn|\.to|\.tp|\.tr|\.tt|\.tv|\.tw|\.tz|\.ua|\.ug|\.uk|\.um|\.us|\.uy|\.uz|\.va|\.vc|\.ve|\.vg|\.vi|\.vn|\.vu|\.wf|\.ws|\.ye|\.yt|\.yu|\.za|\.zm|\.zw)$/; //valid
		
		  if (!reg1.test(str) && reg2.test(str) &&  !reg3.test(str) && !reg4.test(str.toLowerCase()) && !reg5.test(str.toLowerCase()) && reg6.test(str.toLowerCase())) { 
		  		errorEmail = 'true';
		    	return errorEmail;
		 	} else {
		 		errorEmail = '11000';
		 		if (reg5.test(str.toLowerCase()))
		 			errorEmail = '11010';
		 		else if (!reg6.test(str.toLowerCase()))
		 			errorEmail = '11011';
				return errorEmail;
			}
		}     		
		
function writeErrorMSG(errorMessage) {
	
		var commerceErrorMessages = document.getElementById('commerceErrorMessages');
		var errorClass = "field error";
		if(commerceErrorMessages != null && commerceErrorMessages != '') {
			var une = document.getElementById("userNameError");
			une.className = errorClass;
			error = "The username you entered is already in use. Please choose another username.";
			errorMessage += "<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" + error;
			commerceErrorMessages.innerHTML = errorMessage;
			
		}
		else {
			
			var topErrorMessages = document.getElementById('topErrorMessages');
			topErrorMessages.innerHTML = errorMessage;	
			topErrorMessages.className = 'error';
		}
		
		return false;
	}  		
		
		//Function use in borders rewards jsps to display error message and highlight span element in form
function writeErrorMSGfromWS(ErrArray) {
			
			var errorArray = ErrArray;
			var errorLength = ErrArray.length;
						
			var errorMessage = "";
			var errorClass = "field error";
			var longErrorClass = "field error long";
			var tallErrorClass = "field_tall error";
			var errorwritten = false; 
			for(var x =0; x < errorLength; x++) {
				var testCode = errorArray[x];
				var error = "";
				
				if (testCode == '52000') 	
				{
					error = "Please enter nick name.";
					try 
					{
						var une = document.getElementById("nickNameError");				
						une.className = tallErrorClass;
					}
					catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				
				if (testCode == '58000') 	
				{
					error = "The nick name for your preferred address can not match your username. Please enter a different nick name.";
					try 
					{
						var une = document.getElementById("nickNameError");				
						une.className = tallErrorClass;
					}
					catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}

				if (testCode == '55000') 	
				{
					error = "Please enter preferred street address.";
					try 
					{
						var une = document.getElementById("preferredAddress1Error");				
						une.className = errorClass;
					}   
					catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				if (testCode == '56000') 	
				{
					error = "Please enter preferred city.";
					try 
					{
						var une = document.getElementById("preferredCityError");				
						une.className = errorClass;
					}
					catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				
				
				if (testCode == '57000') 	{
					error = "Invalid phone number. Please try again.";
					try {
					
					var une = document.getElementById("addressPhoneNumberError");		
					une.className = errorClass;
					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				
				if (testCode == '40') 	{
					//Don't do anything related to this error code.
					errorwritten = true;
				}
																							
				if (testCode == '2000') 	{
					error = "Please enter a username.";
					try {
					
					var une = document.getElementById("usernameError");				
					une.className = errorClass;
					
					
					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				
				
				if (testCode == '3000') 	{
					error = "Please enter a valid username.";
					try {
					
					var une = document.getElementById("usernameError");				
					une.className = errorClass;
					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
			
				if (testCode == '5000') 	{
					error = "Please enter a password.";
					try {		
							
					var une = document.getElementById("passwordError");	
						
					une.className = errorClass;
					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				if (testCode == '5003') 	{
					error = "Please enter a new password.";
					try {		
							
					var une = document.getElementById("passwordError");	
						
					une.className = errorClass;
					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				if (testCode == '5004') 	{
					error = "Please re-enter your new password.";
					try {		
							
					var une = document.getElementById("passwordError");	
						
					une.className = errorClass;
					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				if (testCode == '5000U') 	{
					error = "Please enter your current password.";
					try {		
							
					var une = document.getElementById("oldPasswordError");	
					var une1 = document.getElementById("newPasswordError");
					var une2 = document.getElementById("confirmNewPasswordError");	
					une.className = errorClass;
					une1.className = errorClass;
					une2.className = errorClass;
					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				if (testCode == '6000') 	{
					error = "Please choose a password with 6 or more characters.";
					try {			
					var une = document.getElementById("confirmPasswordError");				
					var unep = document.getElementById("passwordError");				
					
					une.className = errorClass;
					unep.className = errorClass;
					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				if (testCode == '6001') 	{
					error = "Verify password does not match.";
					try {			
					var une = document.getElementById("confirmPasswordError");				
					une.className = errorClass;
					une = document.getElementById("passwordError");				
					une.className = errorClass;
					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				if (testCode == '6001U') 	{
					error = "Verify Password does not match.";
					try {			
					var une = document.getElementById("confirmNewPasswordError");				
					une.className = errorClass;
					une = document.getElementById("newPasswordError");				
					une.className = errorClass;
					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				if (testCode == '6002') 	{
					error = "Please choose a security question.";
					try {
					
					var une = document.getElementById("securityQuestionError");
					une.className = errorClass;
					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				if (testCode == '6003') 	{
					error = "Please provide an answer to the security question.";
					try {
					
					var une = document.getElementById("securityQuestionAnswerError");
					une.className = errorClass;
					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
								
				if (testCode == '10000') 	{
					error = "Please enter your email address.";
					try {
					
					var une = document.getElementById("emailError");
					if (une == null) 
						une = document.getElementById("emailAddressError");		
					une.className = errorClass;
					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				if (testCode == '11000' && testCode != '10000') 	{
					error = "Please enter your email address in this format: youremail@domain.com";
					try {					
					var une = document.getElementById("emailError");
					if (une == null) 
						une = document.getElementById("emailAddressError");		
					une.className = errorClass;
					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				if (testCode == '11001') 	{
					error = "Please enter your email address.";
					try {
					
					var une = document.getElementById("confirmEmailAddressError");
					une.className = errorClass;

					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				if (testCode == '11002') 	{
					error = "Confirm email does not match";
					try {
					
					var une = document.getElementById("emailError");
					une.className = errorClass;
					une = document.getElementById("confirmEmailAddressError");
					une.className = errorClass;
					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				if (testCode == '11010') 	{
					error = "Email address with admin rights can not be used.";
					try {					
					var une = document.getElementById("emailError");
					if (une == null) 
						une = document.getElementById("emailAddressError");		
					une.className = errorClass;
					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				if (testCode == '11011') 	{
					error = "Email address has an invalid domain.";
					try {					
					var une = document.getElementById("emailError");
					if (une == null) 
						une = document.getElementById("emailAddressError");		
					une.className = errorClass;
					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				if (testCode == '12000') 	{
					error = "Please enter your first name.";
					try {
					
					var une = document.getElementById("firstNameError");
					une.className = errorClass;
					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				if (testCode == '13000') 	{
					error = "Please enter your first name.";
					try {
					
					var une = document.getElementById("firstNameError");	
					une.className = errorClass;
					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				if (testCode == '14000') 	{
					error = "Please enter your last name.";
					try {
					
					var une = document.getElementById("lastNameError");	
					une.className = errorClass;
					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				if (testCode == '15000') 	{
						error = "Please enter your last name.";
					try {
				
					var une = document.getElementById("lastNameError");					
					une.className = errorClass;
					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				
				if (testCode == '16000') 	{
					error = "Invalid phone number. Please try again.";
					try {
					
					var une = document.getElementById("phoneNumberError");		
					une.className = errorClass;
					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				if (testCode == '17000') 	{
					error = "Invalid Phone Number";
					try {
					
					var une = document.getElementById("phoneNumberError");				
					une.className = errorClass;
						}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				
				
				if (testCode == '22000') 	{
					error = "Please enter valid zip code.";
					try {
					
					var une = document.getElementById("zipCodeError");				
					une.className = errorClass;
					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				if (testCode == '22500') 	{
					error = "Please enter valid zip code.";
					try {
					var une = document.getElementById("zipCode1Error");				
					une.className = longErrorClass;
					}catch(err) {}
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
									
				
				if (errorwritten == false & testCode.length > 0 & testCode != 10 ) 	{
					//var une = document.getElementById("transaction_amtError");
					error = "We're sorry.  This feature is temporarily unavailable.  Please try again later.";

					//une.className = errorClass;
					errorMessage += "<li>" + error + "</li>";
					errorwritten = true;
				}
				
			}

			if (errorwritten) {
				writeErrorMSG("<ul>" + errorMessage + "</ul>");
			} else {
				//writeErrorMSG("<b>*</b> required fields");
			}
	}
	
	

function checkValidateForAdd(form)   
		{
			
			changeCase(form);
			resetErrorFieldsForAdd();
			
			// Remove white Spaces.
			document.forms.Register.logonId.value = ltrim(document.forms.Register.logonId.value);
			document.forms.Register.logonId.value = rtrim(document.forms.Register.logonId.value);
			document.forms.Register.logonPassword.value = ltrim(document.forms.Register.logonPassword.value);
			document.forms.Register.logonPassword.value = rtrim(document.forms.Register.logonPassword.value);
			document.forms.Register.firstName.value = ltrim(document.forms.Register.firstName.value);
			document.forms.Register.firstName.value = rtrim(document.forms.Register.firstName.value);
			document.forms.Register.lastName.value = ltrim(document.forms.Register.lastName.value);
			document.forms.Register.lastName.value = rtrim(document.forms.Register.lastName.value);
			document.forms.Register.challengeAnswer.value = ltrim(document.forms.Register.challengeAnswer.value);
			document.forms.Register.challengeAnswer.value = rtrim(document.forms.Register.challengeAnswer.value);
			
			var errorString = '';
			var emailProvided = true;
			//Client side validation
			if (!requireValue(document.forms.Register.logonId)) {
				errorString += '2000,';
				foundError = true;
				}
			
			if (!requireLength(document.forms.Register.logonId,4,254 )) {
				errorString += '3000,';
				foundError = true;
				}

			if (!requireValue(document.forms.Register.logonPassword)) {
					errorString += '5000,';
					foundError = true;
				}
			
				
			if (requireValue(document.forms.Register.logonPassword) && document.forms.Register.logonPassword.value.length < 6) {
					errorString += '6000,';
					foundError = true;
				}				
			
			if ((document.forms.Register.logonPasswordVerify.value != document.forms.Register.logonPassword.value) || 
				(!requireValue(document.forms.Register.logonPassword) && !requireValue(document.forms.Register.logonPasswordVerify))) {
					errorString += '6001,';
					foundError = true;
				}
			if (!requireSelected(document.forms.Register.challengeQuestion)) {
				errorString += '6002,';
				foundError = true;
				}
			if (!requireValue(document.forms.Register.challengeAnswer)) {
				
				errorString += '6003,';
				foundError = true;
				}
			
			if (!requireValue(document.forms.Register.firstName)) {
				
				errorString += '12000,';
				foundError = true;
				}
		
			if (!requireValue(document.forms.Register.lastName)) {
				errorString += '15000,';
				foundError = true;
				}

			if (!requireValue(document.forms.Register.email1)) {
					
					emailProvided = false;
					errorString += '10000,';
					foundError = true;
				}

			if(emailProvided)
			{
				if (isValidEmail(document.forms.Register.email1.value) != 'true') 
				{
					var emailError = isValidEmail(document.forms.Register.email1.value);
					if (emailError == '11010') {
						errorString += '11010,';
					} else if (emailError == '11011') {
						errorString += '11011,';
					} else {
						errorString += '11000,';
					}
					foundError = true;
				}
			}
					
		    if (foundError) {     
		     	writeErrorMSGfromWS(errorString.split(','));
		     	//scrolling page to the top so that error msgs are visible
		     	window.scrollTo(0,0);
		     	//resetting page flag
		     	foundError = false;
		       
		    } 
		    else {   
			    //No errors! -> Conditionally submit the form:
			     var topErrorMessages = document.getElementById('topErrorMessages');
			     topErrorMessages.innerHTML = ""; 
			     topErrorMessages.className = '';
			     
			     document.forms.Register.submit();									
		     
		    }						
		}
		 
	
function validateLogonSubmit(form) 
{
		
		//	changeCase(form);
			resetLogonErrorFields();
			
			var errorString = '';
			
			//Client side validation
			if (!requireValue(form.logonId)) {
				errorString += '2000,';
				foundError = true;
				}
				if (!requireValue(form.logonPassword)) {
					errorString += '5000,';
					foundError = true;
				}
			
			 if (foundError) {     
		     	writeErrorMSGfromWS(errorString.split(','));
		     	//scrolling page to the top so that error msgs are visible
		     	window.scrollTo(0,0);
		     	//resetting page flag
		     	foundError = false;
		       
		    } 
		    else {   
			    //No errors! -> Conditionally submit the form:
			     var topErrorMessages = document.getElementById('topErrorMessages');
			     topErrorMessages.innerHTML = ""; 
			     topErrorMessages.className = '';
			     
			     form.submit();									
		     
		    }			
}
		
   
function validateChangePasswordSubmit(form) 
{
		
		//	changeCase(form);
		//	resetLogonErrorFields();
			
			var errorString = '';
			var foundError = '';
			//Client side validation
			if (!requireValue(form.logonPasswordOld)) {
				errorString += '5000U,';
				foundError = true;
				}
				if (!requireValue(form.logonPassword)) {
					errorString += '5003,';
					foundError = true;
				}
				if (!requireValue(form.logonPasswordVerify)) {
					errorString += '5004,';
					foundError = true;
				}
				
				if(((form.logonPassword.value != form.logonPasswordVerify.value) )&& (!foundError) ) {
					errorString += '6001U';
					foundError = true;
				}
			   
			 if (foundError) {     
		     	writeErrorMSGfromWS(errorString.split(','));
		     	//scrolling page to the top so that error msgs are visible
		     	window.scrollTo(0,0);
		     	//resetting page flag
		     	foundError = false;
		       
		    } 
		    else {   
			    //No errors! -> Conditionally submit the form:
			     var topErrorMessages = document.getElementById('topErrorMessages');
			     topErrorMessages.innerHTML = ""; 
			     topErrorMessages.className = '';
			     
			     form.submit();									
		     
		    }			
}
		

   
function ltrim(stringToTrim) {
	return stringToTrim.replace(/^\s+/,"");
}
function rtrim(stringToTrim) {
	return stringToTrim.replace(/\s+$/,"");
}  

function validateUserRegistrationUpdate(form)   
		{
			
			//changeCase(form);
			resetErrorFieldsForUpdate();
			
			document.forms.Register.firstName.value = ltrim(document.forms.Register.firstName.value);
			document.forms.Register.firstName.value = rtrim(document.forms.Register.firstName.value);
			document.forms.Register.lastName.value = ltrim(document.forms.Register.lastName.value);
			document.forms.Register.lastName.value = rtrim(document.forms.Register.lastName.value);
			document.forms.Register.challengeAnswer.value = ltrim(document.forms.Register.challengeAnswer.value);
			document.forms.Register.challengeAnswer.value = rtrim(document.forms.Register.challengeAnswer.value);
			
			var errorString = '';
			var emailProvided = true;
			//Client side validation
			if (!requireValue(document.forms.Register.firstName)) {
				
				errorString += '12000,';
				foundError = true;
				}
		
			if (!requireValue(document.forms.Register.lastName)) {
				errorString += '15000,';
				foundError = true;
				}
				
			if (!requireValue(document.forms.Register.challengeAnswer)) {
				errorString += '6003,';
				foundError = true;
				}	

			

			if (!requireValue(document.forms.Register.email1)) {
					
					emailProvided = false;
					errorString += '10000,';
					foundError = true;
				}

			if(emailProvided)
			{
				if (isValidEmail(document.forms.Register.email1.value) != 'true') 
				{
					var emailError = isValidEmail(document.forms.Register.email1.value);
					if (emailError == '11010') {
						errorString += '11010,';
					} else if (emailError == '11011') {
						errorString += '11011,';
					} else {
						errorString += '11000,';
					}
					foundError = true;
				}
			}
			
		/*
			if (!requireSelected(document.forms.Register.challengeQuestion)) {
					errorString += '6002,';
					foundError = true;
				}					
		
			if (!requireValue(document.forms.Register.challengeAnswer)) {
				errorString += '6003,';
				foundError = true;
			} 
				
			if (!requireValue(document.forms.Register.address1))
			{					
				errorString += '55000,';      
				foundError = true;
			}
			
			if (!requireValue(document.forms.Register.city))
			{					
				errorString += '56000,';      
				foundError = true;
			}
		 
		 			if ((!requireValue(document.forms.Register.phone1) || document.forms.Register.phone1.value.length < 10)) 
			{
					errorString += '16000,';
					foundError = true;
			}
			if (!requireValue(document.forms.Register.zipCode) || document.forms.Register.zipCode.value.length < 5 || !isInteger(document.forms.Register.zipCode.value)) 
			{
					errorString += '22500,';
					foundError = true;
			}
			  */
		    if (foundError) {     
		     	writeErrorMSGfromWS(errorString.split(','));
		     	//scrolling page to the top so that error msgs are visible
		     	window.scrollTo(0,0);
		     	//resetting page flag
		     	foundError = false;
		       
		    } 
		    else {   
			    //No errors! -> Conditionally submit the form:
			     var topErrorMessages = document.getElementById('topErrorMessages');
			     topErrorMessages.innerHTML = ""; 
			     topErrorMessages.className = '';
			     
			     document.forms.Register.submit();									
		     
		    }						
		}
		 
	
		
   

function validateForgotPasswordSubmit(form)   
{
			
			//changeCase(form);
			//resetErrorFieldsForUpdate();
			var foundError=false;
			var errorString = '';
			var emailProvided = true;
			var fieldClass = 'field';
			
			//remove the white spaces
			document.forms.ResetPasswordDisplay.logonId.value = ltrim(document.forms.ResetPasswordDisplay.logonId.value);
			document.forms.ResetPasswordDisplay.logonId.value = rtrim(document.forms.ResetPasswordDisplay.logonId.value);
			document.forms.ResetPasswordDisplay.challengeAnswer.value = ltrim(document.forms.ResetPasswordDisplay.challengeAnswer.value);
			document.forms.ResetPasswordDisplay.challengeAnswer.value = rtrim(document.forms.ResetPasswordDisplay.challengeAnswer.value);
			
			// reset the error fields
			document.getElementById("usernameError").className = fieldClass;
			document.getElementById("securityQuestionAnswerError").className = fieldClass;
			//Client side validation
			if (!requireValue(form.logonId)) {
				
				errorString += '3000,';
				foundError = true;
				}
		
			
			
			if (!requireValue(form.challengeAnswer)) {
				errorString += '6003,';
				foundError = true;
			} 
				
			
		    if (foundError) {     
		     	writeErrorMSGfromWS(errorString.split(','));
		     	//scrolling page to the top so that error msgs are visible
		     	window.scrollTo(0,0);
		     	//resetting page flag
		     	foundError = false;
		       
		    } 
		    else {   
			    //No errors! -> Conditionally submit the form:
			     var topErrorMessages = document.getElementById('topErrorMessages');
			     topErrorMessages.innerHTML = ""; 
			     topErrorMessages.className = '';
			     
			     form.submit();									
		     
		    }						
		}
	

function validateQuickRegisterSubmit(form){
	changeCase(form);
	resetErrorQuickRegisterFieldsForAdd();
	
	var errorString = '';
	var emailProvided = true;
	//Client side validation
	if (!requireValue(document.forms.Register.logonId)) {
		errorString += '2000,';
		foundError = true;
		}
	
	if (!requireLength(document.forms.Register.logonId,4,254 )) {
		errorString += '3000,';
		foundError = true;
		}

	if (!requireValue(document.forms.Register.logonPassword)) {
			errorString += '5000,';
			foundError = true;
		}
	
		
	if (requireValue(document.forms.Register.logonPassword) && document.forms.Register.logonPassword.value.length < 6) {
			errorString += '6000,';
			foundError = true;
		}				
	
	if ((document.forms.Register.logonPasswordVerify.value != document.forms.Register.logonPassword.value) || 
		(!requireValue(document.forms.Register.logonPassword) && !requireValue(document.forms.Register.logonPasswordVerify))) {
			errorString += '6001,';
			foundError = true;
		}
		
	if (foundError) {     
 	writeErrorMSGfromWS(errorString.split(','));
 	//scrolling page to the top so that error msgs are visible
 	window.scrollTo(0,0);
 	//resetting page flag
 	foundError = false;
       
    } 
    else {   
	    //No errors! -> Conditionally submit the form:
	     var topErrorMessages = document.getElementById('topErrorMessages');
	     topErrorMessages.innerHTML = ""; 
	     topErrorMessages.className = '';
	     
	     document.forms.Register.submit();									
     
    }
}

function resetErrorQuickRegisterFieldsForAdd()
{
	
	var topErrorMessages = document.getElementById('topErrorMessages');
	topErrorMessages.innerHTML = '';	
	topErrorMessages.className = '';
	foundError = false;		
	
}

function clearTrailMailText(field)
{
	if(field != null) field.value = '';
}

function validateTrailMailSubmit(form){

	//alert('form '+form);
		
	var errorString = '';
	var foundError = true;
	
	//alert("Validating Trailmail Email Address Value");
	//alert("form.email1.value "+form.email1.value);
	//alert("isValidEmail(form.email1.value) "+isValidEmail(form.email1.value));
	if (isValidEmail(form.email1.value) != 'true') 
	{
		var emailError = isValidEmail(form.email1.value);
		if (emailError == '11010') {
			errorString += '11010,';
		} else if (emailError == '11011') {
			errorString += '11011,';
		} else {
			errorString += '11000,';
		}
		foundError = true;
	} else{
		foundError = false;
	}
	
	//alert("foundError "+foundError);	
	//alert("errorString "+errorString);		
	
	if(foundError){
		writeErrorMSGfromWS(errorString.split(','));
	 	//scrolling page to the top so that error msgs are visible
	 	window.scrollTo(0,0);
	 	//resetting page flag
	 	foundError = false;
	 	
		return false;
	}else {   
	    //No errors! -> Conditionally submit the form:
	     var topErrorMessages = document.getElementById('topErrorMessages');
	     topErrorMessages.innerHTML = ""; 
	     topErrorMessages.className = '';
	     
	     return true;
    }
    
    
	/*
	if(!requireValue(form.email1.value)){
		errorString += '2000,';
		foundError = true;
	}
	else 
	*/
	
    
}

function validateTrailMailSubmitFooter(form){

	//alert('form '+form);
		
	var errorString = '';
	var foundError = true;
	
	//alert("Validating Trailmail Email Address Value");
	//alert("form.email1.value "+form.email1.value);
	//alert("isValidEmail(form.email1.value) "+isValidEmail(form.email1.value));
	if (isValidEmail(form.email1.value) != 'true') 
	{
		var emailError = isValidEmail(form.email1.value);
		if (emailError == '11010') {
			errorString += '11010';
		} else if (emailError == '11011') {
			errorString += '11011';
		} else {
			errorString += '11000';
		}
		foundError = true;
	} else{
		foundError = false;
	}
	
	//alert("foundError "+foundError);	
	//alert("errorString "+errorString);		
	
	if(foundError){
		var errorMsg = null;
		if (errorString == '11011') 	{
			errorMsg = "Email address has an invalid domain.";
		}
		if(errorMsg != null){
			alert(errorMsg);
		}
	 	foundError = false;
	 	
		return false;
	}else {   
	    //No errors! -> Conditionally submit the form:
	     var topErrorMessages = document.getElementById('topErrorMessages');
	     if(topErrorMessages != null){
		     topErrorMessages.innerHTML = ""; 
		     topErrorMessages.className = '';
	     }
	     return true;
    }
    
    
	/*
	if(!requireValue(form.email1.value)){
		errorString += '2000,';
		foundError = true;
	}
	else 
	*/
	
    
}

var phone = "()- 0123456789";
var numb = "0123456789";
var alpha = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ ";
function txtValidator(t,v)
{	
	var w = "";
	for (i=0; i < t.value.length; i++) {
		x = t.value.charAt(i);
		if (v.indexOf(x,0) != -1)
			w += x;
	}
	t.value = w;
}