function doCheckList(f) {
	var fn = f.firstName;
	var ln = f.lastName;
	var em = f.email;
	var ph = f.telephone;
	var ps = f.partySize;
	var dd = f.day;
	var dm = f.month;
	var dy = f.year;
	var td = f.todayDay;
	var tm = f.todayMonth;
	var ty = f.todayYear;
	var sdr = (dm.value - 1) + "/" + dd.value + "/" + dy.value;
	var sdt = (tm.value - 1) + "/" + td.value + "/" + ty.value;
	var formOK = true;

	if (isBlank(fn.value)) {
		alert("Please provide your first name.");
		fn.focus();
		formOK = false;
		return formOK};

	if (isBlank(ln.value)) {
		alert("Please provide your last name.");
		ln.focus();
		formOK = false;
		return formOK};

	if (!(isEmail(em.value))) {
		alert("Please enter a valid email address,");
		em.focus();
		formOK = false;
		return formOK};

	if (isBlank(ph.value)) {
		alert("Please provide your telephone number.");
		ph.focus();
		formOK = false;
		return formOK};

	var datereq = new Date(sdr);
	var datetoday = new Date(sdt);
	var diff = datereq.getTime() - datetoday.getTime();
	var diffdays = Math.floor (diff / (1000 * 60 * 60 * 24));

	if (!(diffdays > 3)) {
		alert("Date must be at least 3 days in advance.");
		dd.focus();
		formOK = false;
		return formOK};

	if ((sdr == "6/1/2010") || (sdr == "6/2/2010") || (sdr == "6/3/2010") || (sdr == "6/4/2010")) {
		alert("July 4th Weekend is almost fully booked\nPlease call (508) 487-1500 to check for availability.");
		dd.focus();
		formOK = false;
		return formOK};

	if (isBlank(ps.value)) {
		alert("Please provide your party's size.");
		ps.focus();
		formOK = false;
		return formOK};

	return formOK;
}

function isBlank(s) {
	if ((s == null) || (s == "")) {return true};
	for (var i=0;i<s.length;i++) {
		var c = s.charAt(i);
		if ((c != ' ') && (c != '\n') && (c != '\t')) return false;
	};
	return true;
}

function isEmail(strEmail) {

  var emailOK = true;
  var intPosAt = strEmail.indexOf("@");
  var intLPosAt = strEmail.lastIndexOf("@");
  var intPosDot = strEmail.indexOf(".");
  var intLPosDot = strEmail.lastIndexOf(".");
  
  if ((intPosAt != intLPosAt) ||
      (intPosAt < 1) ||
      (intLPosDot < intPosAt) ||
      (intLPosDot >= (strEmail.length - 2))) {
    emailOK = false;
  };
  return emailOK;
}