function checkForm(obj) {
	valid = true;
	// format for function variables is form(leave as 'obj'), field name, and message text.
	if (!checkField(obj,'Name','Name')) { valid = false; return valid; }
	if (!checkEmail(obj,'Email','Email')) { valid = false; return valid; }
	if (!checkField(obj,'Phone','Daytime Phone')) { valid = false; return valid; }
	if (!checkField(obj,'Comments','Comments')) { valid = false; return valid; }
	if (!checkSelect(obj,'HowFound','Please select how you found this site.')) { valid = false; return valid; }
	return valid;
}
function checkRecForm(obj) {
	valid = true;
	if (!checkField(obj,'YName','Your Name')) { valid = false; return valid; }
	if (!checkEmail(obj,'YEmail','Your Email')) { valid = false; return valid; }
	if (!checkField(obj,'FName','Your Friend\'s Name')) { valid = false; return valid; }
	if (!checkEmail(obj,'FEmail','Your Friend\'s Email')) { valid = false; return valid; }
}

/*
/// SAMPLE FUNCTION TO TEST AN ESTIMATE FORM
function checkEstimate(obj) {
	valid = true;
	if (!checkField(obj,'estName','Name')) { valid = false; return valid; }
	if (!checkEmail(obj,'estEmail','Email')) { valid = false; return valid; }
	if (!checkSelect(obj,'estState','Please select a state.')) { valid = false; return valid; }
	if (!checkCheckbox(obj,'estChecky','Select the damn checkbox!')) { valid = false; return valid; }
	if (!checkRadio(obj,'estRadio','Maybe','Please select "Maybe" from the options.','required','Please select one of the Yes/No/Maybe options.')) { valid = false; return valid; }
	return valid;
}
*/

/// STANDARD FORM FIELD CHECK FUNCTIONS

function checkField(obj,field,msg) {
	valid = true;
	if (obj[field].value == "") {
		alert("You must fill out the " + msg + " field.");
		obj[field].focus();
		valid = false;
	}
	return valid;
}
function checkEmail(obj,field,msg) {
	valid = true;
	if (obj[field].value == "") {
		alert("You must fill out the " + msg + " field.");
		obj[field].focus();
		valid = false;
	} else {
		email = emailCheck(obj[field].value);
		if (!email) {
			alert("The email address you entered is not a valid format.\nPlease carefully retype your email address.");
			obj[field].focus();
			valid = false;
		}
	}
	return valid;
}
function emailCheck(addr) {
	var reg1 = /(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/; // not valid
	var reg2 = /^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/; // valid
	if (!reg1.test(addr) && reg2.test(addr)) {
		return true;
	} else {
		return false;
	}
}
function checkSelect(obj,field,msg) {
	valid = true;
	if (obj[field].options[obj[field].selectedIndex].value == "") {
		alert(msg);
		obj[field].focus();
		valid = false;
	}
	return valid;
}
function checkRadio(obj,field,correctOpt,msgIncorrect,req,msgSelect) {
	valid = true;
	notChecked = true;
	for(i=0;i<obj[field].length;i++) {
		if (obj[field][i].checked) {
			notChecked = false;
			if(obj[field][i].value != correctOpt) {
				alert(msgIncorrect);
				obj[field][i].focus();
				valid = false;
			}
		}
	}
	if (req && notChecked) {
		alert(msgSelect);
		valid = false;
	}
	return valid;
}
function checkCheckbox(obj,field,msg) {
	valid = true;
	if (!obj[field].checked) {
		alert("You must mark the check box called " + msg + ".");
		obj[field].focus();
		valid = false;
	}
	return valid;
}


//// OTHER STUFF

/*
function radioCheck(obj,field,msg) {
	valid = true;
	if (!obj.radioNum[0].checked) {
		fieldNum = 5;
		for (i=1;i<fieldNum;i++) {
			if (obj["textField"+i].value != "") {
				if (!emailCheck(obj["textField"+i].value)) {
					alert("The email address you entered for \"textField "+(i+1)+"\" is not a valid format.\nPlease correct the email address.");
					obj["textField"+i].focus();
					valid = false;
					break;
				}
			}
		}
	}
	return valid;
}
*/

