function checkForm() {
	var errorMsg = "";
	if (checkBox) {
		var test = eval("document.forms[0]." + checkBox + ".checked");
		if (test == false) {
			errorMsg += "Please be sure to check the " + checkBox + " checkbox\n";
		}
	}
	for (i = 1; i < requiredFields.length; i++) {
		var test = eval("document.forms[0]." + requiredFields[i] + ".value");
		if (test == "") {
			errorMsg += "  \"" + fieldNames[i] + "\" cannot be empty.\n";
		}
	}
	if (emailField) {
		if (!isValidEmail(eval("document.forms[0]." + emailField + ".value"), emailField)) {
			errorMsg += "  E-mail address is not properly formatted\n";
		}
	}
	if (errorMsg) {
		errorMsg += "\nPlease fill out all required fields and try again.";
		alert(errorMsg);
		return false;
	} else {
		return true;
	}
}

function isValidEmail(address, emailField) {
	if (address != '' && address.search) {
      if (address.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1) {
	  	return true;
      } else {
		eval("document.forms[0]." + emailField + ".focus()");
		eval("document.forms[0]." + emailField + ".select()");
		return false;
	  }
	}
   // allow empty strings to return true - screen these with either a 'required' test or a 'length' test
   else return true;
}
