function isEmpty(value) {
	if (value == null || value == "") {
		return true
	}
	return false
}


function isName(value) {
// as long as value contains either English characters or "-", ".", ",", or " ", consider it valid
	var temp = value.toString()
	var string = temp.toLowerCase()
	for (var i = 0; i < string.length; i++) {
		var oneChar = string.charAt(i)
		if (oneChar < "a" || oneChar > "z") {
			if (oneChar != "-" && oneChar != "." && oneChar != "," && oneChar != " ") {
				return false
			}
		}
	}
	return true
}


function isPhoneNumber(value) {
// as long as value contains 10 numbers (no more, no less), consider it valid
	var string = value.toString()
	var counter = 0
	for (var i = 0; i < string.length; i++) {
		if (!isNaN(string.charAt(i)) && string.charAt(i) != " ") {
			counter++
		}
	}
	if (counter == 10) {
		return true
	}
	return false
}


function isValidEmail(value) {
// as long as value contains "@" and ".", consider it valid

	var temp = value.toString()
	var string = temp.toLowerCase()
	if (string.indexOf("@") == -1 || string.indexOf(".") == -1) {
		return false
	}
	return true
}


function validate(form) {
	// check first name
	if (isEmpty(form.first.value)) {
		alert("Please enter your First Name.")
		form.first.focus()
		return false
	} else if (!isName(form.first.value)) {
		alert("Please enter a valid first name.")
		form.first.focus()
		return false
	}

	// check last name
	if (isEmpty(form.last.value)) {
		alert("Please enter your Last Name.")
		form.last.focus()
		return false
	} else if (!isName(form.last.value)) {
		alert("Please enter a valid last name.")
		form.last.focus()
		return false
	}

	// check evening phone
	if (!isPhoneNumber(form.evePhone.value)) {	
		alert("Please enter a valid telephone number, including area code.")
		form.evePhone.focus()
		return false
	}

	// check e-mail
	if (!isValidEmail(form.email.value)) {
		alert("Please enter a valid email address.")
		form.email.focus()
		return false
	}
	
	// check contact time selected
	if (form.contactTime.value == "") {
		alert("Please select the best time to reach you.")
		form.contactTime.focus()
		return false
	}
	
	// check contact method selected
	if (form.contactMethod.value == "") {
		alert("Please select the best method to reach you.")
		form.contactMethod.focus()
		return false
	}
	return true
}