function CheckEmail(email, name){
	emailExp = /[A-Za-z0-9\-_~\.]{1,}@[A-Za-z1-9\-_~]{1,}\.[A-Za-z1-9\-_~\.]{2,}/;
	var result = emailExp.test(email.value);
	if(result == false){
		alert(name + " was input incorrectly.  It must be input like standard e-mail address (joe@smith.com).");
		email.focus();
	}
	return result;
}

function CheckLogin(logForm){
	var result = CheckEmail(logForm.email, "E-mail address");
	logForm.email.focus();
	logForm.password.value.toLowerCase();
	return result;
}

function CheckPureAlpha(field, name){
	alphaExp = /[^A-Za-z ]{1,}/;
	var result = alphaExp.test(field.value);  //Checking for the presence of bad characters
	if(result == true){ //If its true bad characters exist
		alert(name + " was input incorrectly.  It can only contain letters.");
		field.focus();
	}
	return result;
}

function CheckMixed(field, name){
	mixExp = /[^A-Za-z\d#@\.,\-_ \\\/\(\)\']/;
	var result = mixExp.test(field.value);//Checking for the presence of bad characters
	if(result == true){ //If its true bad characters exist
		alert(name + " contains invalid characters.  Please correct this field.");
		field.focus();
	}
	return result;
}

function CheckURL(field, name){
	urlExp = /[A-Za-z1-9\-_~:\/]{1,}\.[A-Za-z1-9\-_~]{1,}\.[A-Za-z1-9\-_~\.]{1,}/;
	var result = urlExp.test(field.value); //Checking for specific pattern
	if(field.value == ""){
		result = true;
	}
	if(result == false && field.value != ""){ //If pattern isn't present or field is empty
		alert(name + " contains invalid characters.  It must be a standard web address: http://www.yoursite.com.");
		field.focus();
	}
	return result;
}

function CheckRegister(regForm){
	if(CheckRequired(regForm) == false){return false;}
	if(CheckPureAlpha(regForm.name, "Name") == true){return false;}
	if(CheckMixed(regForm.firm, "Firm") == true){return false;}
	if(CheckMixed(regForm.address, "Address") == true){return false;}
	if(CheckMixed(regForm.city, "City") == true){return false;}
	if(CheckMixed(regForm.state, "State") == true){return false;}
	if(CheckMixed(regForm.zip, "Zip/Postal Code") == true){return false;}
	if(CheckMixed(regForm.country, "Country") == true){return false;}
	if(CheckMixed(regForm.phone, "Phone") == true){return false;}
	if(CheckMixed(regForm.fax, "Fax") == true){return false;}
	if(CheckEmail(regForm.email, "E-Mail Address") == false){return false;}
	if(CheckURL(regForm.website, "Web Site Address") == false){return false;}
	regForm.password.value.toLowerCase();
	regForm.password2.value.toLowerCase();
	if(regForm.password.value != regForm.password2.value){
		alert("Your passwords are not the same please re-enter them.");
		regForm.password.value = "";
		regForm.password2.value = "";
		return false;
	}
	return true;
}	

function CheckRequired(regForm){
	var result = true;
	if(regForm.name.value == ""){
		result = DispAlert("Name");
	}
	if(regForm.firm.value == ""){
		result = DispAlert("Firm");
	}
	if(regForm.email.value == ""){
		result = DispAlert("E-Mail Address");
	}
	if(regForm.password.value == ""){
		result = DispAlert("Password");
	}
	return result;
}

function DispAlert(name){
	alert(name + " is a required field.  Please enter a value.");
	return false;
}

function CheckChangePass(passForm){
	var result = CheckEmail(passForm.email, "E-mail address");
	passForm.email.focus();
	passForm.passwordOld.value.toLowerCase();
	passForm.password.value.toLowerCase();
	passForm.password2.value.toLowerCase();
	if(passForm.password.value != passForm.password2.value){
		alert("Your new passwords are not the same.  Please re-enter them.");
		regForm.password.value = "";
		regForm.password2.value = "";
		result = false;
	}
	return result;
}

function CheckChangeEmail(emailForm){
	var result = true;
	if(CheckEmail(emailForm.email, "Old E-mail Address") == false){result = false;}
	if(CheckEmail(emailForm.emailNew, "New E-mail Address") == false){result = false;}
	emailForm.password.value.toLowerCase();
	return result;
}