function checks2f() {
 if (!checkMissingS2F()) {
  return false;
 }
 if (!checkEmail(document.s2f.email, 'Your')) {
  return false;
 }
 if (!checkEmail(document.s2f.femail, 'Your Friend\'s')) {
  return false;
 }
 return true;
}

function checkMissingS2F() 
{
	var focusField;  //the field to focus
	var missingField = '';

	if (document.s2f.femail.value == '') 
		{
		missingField = '\n   Friend\'s Email Address' + missingField;
		focusField = document.s2f.femail;
		}
	if (document.s2f.flname.value == '') 
		{
		missingField = '\n   Friend\'s Last Name' + missingField;
		focusField = document.s2f.flname;
		}
	if (document.s2f.ffname.value == '') 
		{
		missingField = '\n   Friend\'s First Name' + missingField;
		focusField = document.s2f.ffname;
		}
	if (document.s2f.email.value == '') 
		{
		missingField = '\n   Email Address' + missingField;
		focusField = document.s2f.email;
		}
	if (document.s2f.lname.value == '') 
		{
		missingField = '\n   Last Name' + missingField;
		focusField = document.s2f.lname;
		}
	if (document.s2f.fname.value == '') 
		{
		missingField = '\n   First Name' + missingField;
		focusField = document.s2f.fname;
		}
	if (missingField != '') 
		{
		alert ('Please fill out the following required field(s): \n' + missingField);
		focusField.focus();
		return false;
		}

	return true;
}

function checkSubmit() {
 if (!checkMissingFields()) {
  return false;
 }
 if (!checkEmail(document.register.email, 'Your')) {
  return false;
 }
 return true;
}

function checkMissingFields() 
{
	var focusField;  //the field to focus
	var missingField = '';
	if (document.register.acknowledgement.checked == false) 
		{
		missingField = '\n Please review our cancellation policy.' + missingField;
		focusField = document.register.acknowledgement;
		}
	if (!document.forms["register"].payment_type[0].checked) 
	{
		if (document.register.cc_name.value=="")
		{
			missingField='\n Name on Credit Card' + missingField;
			focusField=document.register.cc_name;
		}
		if (document.register.cc_security.value=="")
		{
			missingField='\n Security Code' + missingField;
			focusField=document.register.cc_security;
		}
		if (document.register.cc_exp.value=="")
		{
			missingField='\n Expiration Date' + missingField;
			focusField=document.register.cc_exp;
		}
		if (document.register.cc_no.value=="")
		{
			missingField='\n Credit Card Number' + missingField;
			focusField=document.register.cc_no;
		}
	}
	if (!document.register.payment_type[0].checked && !document.register.payment_type[1].checked) 
		{
		missingField = '\n Payment Method' + missingField;
		focusField = document.register.payment_type[0];
		}
	/*if (!document.register.enrollment_type[0].checked && !document.register.enrollment_type[1].checked) 
		{
		missingField = '\n   Enrollment Type' + missingField;
		focusField = document.register.enrollment_type[0];
		} */
	if (document.register.email.value == '') 
		{
		missingField = '\n Email Address' + missingField;
		focusField = document.register.email;
		}
	if (document.register.phone.value == '') 
		{
		missingField = '\n Daytime Phone' + missingField;
		focusField = document.register.phone;
		}
	if (document.register.zip.value == '') 
		{
		missingField = '\n Zip Code' + missingField;
		focusField = document.register.zip;
		}
	if (document.register.state.selectedIndex == 0) 
		{
		missingField = '\n State' + missingField;
		focusField = document.register.state;
		}
	if (document.register.city.value == '') 
		{
		missingField = '\n City' + missingField;
		focusField = document.register.city;
		}
	if (document.register.addr1.value == '') 
		{
		missingField = '\n Address' + missingField;
		focusField = document.register.addr1;
		}
	if (document.register.lname.value == '') 
		{
		missingField = '\n Last Name' + missingField;
		focusField = document.register.lname;
		}
	if (document.register.fname.value == '') 
		{
		missingField = '\n First Name' + missingField;
		focusField = document.register.fname;
		}
	if (document.register.program_date.value == '') 
		{
		missingField = '\n Program Date' + missingField;
		focusField = document.register.program_date;
		}
	
	if (missingField != '') 
		{
		alert ('Please fill out the following required field(s): \n' + missingField);
		focusField.focus();
		return false;
		}

	return true;
}

function checkEmail(email, msg) {
	if (email.value != '') {
		if (!emailCheck(email.value)) {
			alert(msg+' Email Address is invalid.');
			email.focus();
			return false;
		}
	}
	return true;
}

function emailCheck (emailStr) {
  if (  emailStr.match( new RegExp( '^(\\s*)(("[^"]*")|\\w+([*&+~!-\\.]\\w+)*)@\\w+([-\\.]\\w+)*\\.\\w{1,3}(\\s*)$' ) ) == null )
	return false;
  return true;
}