function textRequired(field, fieldLabel, fieldLength) {
	result = true;
	if (field.value == "") {
		alert('Please enter a value for the "' + fieldLabel + '" field.');
		field.focus();
		result = false;
	} else if (field.value.length < fieldLength) {
		alert('The entry for the "' + fieldLabel + '" field is insufficient. The minimum length is ' + fieldLength + ' characters.');
		field.focus();
		result = false;
	}
	return result;
}

function numberRequired(field, fieldLabel, fieldLength, required) {
	result = true;
	if (parseInt(field.value) != field.value && field.value.length > 0) {
		//alert(parseInt(field.value));
		//alert(field.value);
		alert('Your entry for the "' + fieldLabel + '" field may contain only numbers.');
		field.focus();
		result = false;
	} else if (field.value.length < fieldLength && field.value.length > 0 || required == "yes") {
		//alert(field.value.length);
		alert('The entry for the "' + fieldLabel + '" field is insufficient. The minimum length is ' + fieldLength + ' characters.');
		field.focus();
		result = false;
	}
	return result;
}

function emailRequired(field, fieldLabel) {
	result = true;
	if (field.value == 0 || field.value.length < 5 || field.value.indexOf("@") < 1 || field.value.length  - field.value.indexOf("@") < 4) {
		alert('The "' + fieldLabel + '" is invalid.');
		field.focus();
		result = false;
	}
	return result;
}

function selectionRequired(field, fieldLabel) {
	result = true;
	if (field.selectedIndex == 0) {
		alert('The "' + fieldLabel + '" is not selected.');
		field.focus();
		result = false;
	}
	return result;
}

function validateContact(theForm) {
	// used for all validation checks
	if (!textRequired(theForm.Name, "Name", 2)) {
		return false;
	}
	if (!textRequired(theForm.City, "City", 4)) {
		return false;
	}
	if (!selectionRequired(theForm.State, "State")) {
		return false;
	}
	if (!emailRequired(theForm.Email, "Email Address")) {
		return false;
	}
	if (!numberRequired(theForm.Phone1, "Phone Number (Area Code)", 3, "no")) {
		return false;
	}
	if (!numberRequired(theForm.Phone2, "Phone Number (First 3 digits)", 3, "no")) {
		return false;
	}
	if (!numberRequired(theForm.Phone3, "Phone Number (Last 4 digits)", 4, "no")) {
		return false;
	}
}