// Check that a string contains only numbers
function isNumeric(string, ignoreWhiteSpace) {
	if (string.search) {
		if ((ignoreWhiteSpace && string.search(/[^\d\s]/) != -1) || (!ignoreWhiteSpace && string.search(/\D/) != -1)) return false;
	}
	return true;
}

function validateName(name)	{
	if (name.length < 1)
		return false;
	else if (name.indexOf("~") != -1) {
		return false;
		}
	else if (name.indexOf("^") != -1) {
		return false;
		}
	return true;
	}
	
function validateZip9(zip) {
	if (zip.length < 5 || !isNumeric(zip, false))
		return false;
	return true;
	}
	
function validatePhone10(phone) {
	if (phone.length != 10 || !isNumeric(phone, false))
		return false;
	return true;
	}
	
function validateUserEmail(validateComments) {
	var form = document.EmailForm;
	if (!validateName(form.userFirstName.value)) {
		alert("Your First Name is required and cannot contain tildes or carets");
		form.userFirstName.focus();
		return false;
		}
	if (!validateName(form.userLastName.value))	{
		alert("Your Last Name is required and cannot contain tildes or carets");
		form.userLastName.focus();
		return false;
		}
	if (!validateEmail(form.userEmailAddress.value))	{
		form.userEmailAddress.focus();
		return false;
		}
	if (validateComments && form.userComments.value.length < 1) {
		alert("Your message contains no text.  Please type text in the comments section");
		form.userComments.focus();
		return false;
		}
	return true;
	}

function validateAddUpdateDelete(){
	var form = document.EmailForm;
	if (!validateUserEmail(false))	return false;
	if (form.memAction.value == "") {
		alert("Action is required");
		form.memAction.focus();
		return false;
		}
	if (!validateName(form.firstName.value))	{
		alert("First Name is required and cannot contain tildes or commas");
		form.firstName.focus();
		return false;
		}
	if (!validateName(form.lastName.value))	{
		alert("Last Name is required and cannot contain tildes or commas");
		form.lastName.focus();
		return false;
		}
	if (form.campusNm.value == "") {
		alert("Campus Name is required");
		form.campusNm.focus();
		return false;
		}
	if (form.city.value.length < 1)	{
		alert("City is a required field");
		form.city.focus();
		return false;
		}
	if (form.state.value.isNull()) {
		alert("State is required");
		form.state.value = form.state.value.strip();
		form.state.focus();
		return false;
		}
	if (!validateZip9(form.zip.value)) {
		alert("Zip Code is a required numeric field and must be at least 5 digits");
		form.zip.focus();
		return false;
		}
	if (form.phone.value.length > 0 && !validatePhone10(form.phone.value)) {
		alert("Phone number must be 10 digits with no hyphens or spaces");
		form.phone.focus();
		return false;
		}
	if (form.phoneExt.value.length > 0 && !isNumeric(form.phoneExt.value, false)) {
		alert("Phone Extension must be numeric");
		form.phoneExt.focus();
		return false;
		}
	if (form.fax.value.length > 0 && !validatePhone10(form.fax.value)) {
		alert("Fax must be 10 digits with no hyphens or spaces");
		form.fax.focus();
		return false;
		}
	if (form.email.value.length >0 && !validateEmail(form.email.value)) {
		form.email.focus();
		return false;
		}
	if (form.startDateSuny.value.length > 0 && !validateDateEntry(form.startDateSuny.value, "/", null)) {
		form.startDateSuny.focus();
		return false;
		}
	if (form.startDateCampus.value.length > 0 && !validateDateEntry(form.startDateCampus.value, "/", null)) {
		form.startDateCampus.focus();
		return false;
		}
	return true;
	}