function check_form ()
{
  valid = true; // assume valid

  if (document.visitation.patient.value.length == 0)
     { valid = false; alert('Patient`s Name Must be Filled In!');
      document.visitation.patient.focus();return false; }

		if (document.visitation.age.value.length == 0)
     { valid = false; alert('Patient`s Age Must be Filled In!');
      document.visitation.age.focus();return false; }

		if (!document.visitation.gender[0].checked &&
			  !document.visitation.gender[1].checked)
     { valid = false; alert('Patient`s Gender Must be Filled In!');
      document.visitation.gender[0].focus();return false; }

  if (document.visitation.why.selectedIndex == false )
     { valid = false; alert('What is Patient in for or Why Must be Selected!');
      document.visitation.why.focus();return false; }

  if (document.visitation.why.selectedIndex == 1 &&
		  document.visitation.why_other.value.length == 0)
     { valid = false; alert('If Other Not Listed, Please Explain!');
      document.visitation.why_other.focus();return false; }

  if (document.visitation.mod.selectedIndex == false )
     { valid = false; alert('Month (mm) of Been Admitted as an Inpatient Must be Selected!');  
      document.visitation.mod.focus();return false; }

  if (document.visitation.dod.selectedIndex == false )
     { valid = false; alert('Day (dd) of Been Admitted as an Inpatient  Must be Selected!');
      document.visitation.dod.focus();return false; }

	if (document.visitation.yod.value.length == 0)
     { valid = false; alert('Year (yyyy) of Been Admitted as an Inpatient  Must be Filled In!');
      document.visitation.yod.focus();return false; }

  if (document.visitation.facility.value.length == 0)
     { valid = false; alert('Hospital or Health Care Facility Name Must be Filled In! \n(If patient is at home, please type "Home") ');
      document.visitation.facility.focus(); return false;}

//	if (document.visitation.address1.value.length == 0)
//     { valid = false; alert('Address line 1 Must be Filled In!');
//      document.visitation.address1.focus(); return false;}

  if (document.visitation.city.value.length == 0)
     { valid = false; alert('City Must be Filled In!');
      document.visitation.city.focus(); return false;}

  if (document.visitation.state.selectedIndex == false )
     { valid = false; alert('State Must be Selected!');
      document.visitation.state.focus();return false; }

	if (document.visitation.zip.value.length == 0)
     { valid = false; alert('Zip Must be Filled In!');
      document.visitation.zip.focus(); return false;}

  if (document.visitation.pministry[0].checked &&
		  document.visitation.pministry_yes.value.length == 0)
     { valid = false; alert('Patient Involved in Any Area of the Ministry Selected YES \nPlease Explain Must be Filled In!');
      document.visitation.pministry_yes.focus();return false; }


	if (document.visitation.contact.value.length == 0)
     { valid = false; alert('Contact Person Name Must be Filled In!');
      document.visitation.contact.focus(); return false;}

	if (document.visitation.phone.value.length == 0)
     { valid = false; alert('Contact Phone Number Must be Filled In!');
      document.visitation.phone.focus(); return false;}

  if (document.visitation.relation.selectedIndex == false )
     { valid = false; alert('Relationship to the Patient Person Must be Selected!');
      document.visitation.relation.focus();return false; }

  if (document.visitation.cministry[0].checked &&
		  document.visitation.cministry_yes.value.length == 0)
     { valid = false; alert('(Contact) Involved in Any Area of the Ministry Selected YES! \n\nPlease Explain Must be Filled In!');
      document.visitation.cministry_yes.focus();return false; }

  if (document.visitation.email.value.length > 0)
  	 {valid = VerifyEmailaddress1();}

  if (valid)
        {
      alert("Please be patient while your form is processed. \n" +
			"DO NOT CLICK SUBMIT AGAIN, \n" + 
		    "It can result in a duplicate information." +
			"\n\n Click OK to Continue.");

			document.visitation.subject.value = document.visitation.subject.value + document.visitation.patient.value;
			document.visitation.datex.value = document.visitation.mod.value + "/" + document.visitation.dod.value + "/" + document.visitation.yod.value;

			if (document.visitation.visitation[0].checked){document.visitation.visitationx.value = "Hospital";}
			if (document.visitation.visitation[1].checked){document.visitation.visitationx.value = "Nursing Home";}
			if (document.visitation.visitation[2].checked){document.visitation.visitationx.value = "Shut-in";}
			if (document.visitation.gender[0].checked){document.visitation.genderx.value = "Male";}
			if (document.visitation.gender[1].checked){document.visitation.genderx.value = "Female";}

			if (document.visitation.believer[0].checked){document.visitation.believerx.value = "YES";}
			if (document.visitation.believer[1].checked){document.visitation.believerx.value = "NO";}
			if (document.visitation.believer[2].checked){document.visitation.believerx.value = "Unknown";}
			if (document.visitation.pmember[0].checked){document.visitation.pmemberx.value = "YES";}
			if (document.visitation.pmember[1].checked){document.visitation.pmemberx.value = "NO";}
			if (document.visitation.pmember[2].checked){document.visitation.pmemberx.value = "Unknown";}
			if (document.visitation.pministry[0].checked){document.visitation.pministryx.value = "YES";}
			if (document.visitation.pministry[1].checked){document.visitation.pministryx.value = "NO";}
			if (document.visitation.pministry[2].checked){document.visitation.pministryx.value = "Unknown";}

			if (document.visitation.cmember[0].checked){document.visitation.cmemberx.value = "YES";}
			if (document.visitation.cmember[1].checked){document.visitation.cmemberx.value = "NO";}
			if (document.visitation.cmember[2].checked){document.visitation.cmemberx.value = "Unknown";}
			if (document.visitation.cministry[0].checked){document.visitation.cministryx.value = "YES";}
			if (document.visitation.cministry[1].checked){document.visitation.cministryx.value = "NO";}
			if (document.visitation.cministry[2].checked){document.visitation.cministryx.value = "Unknown";}


      document.visitation.submit();
      return true;

        }

   document.visitation.email.focus();
   return false;
}


function VerifyEmailaddress1()
{
  var Reason  = "Your Email address1 appears incorrect.  \n\nPlease check. \n\nReason:"
  var Success = "Email address1 entered Correctly!"
  var checkStr = document.visitation.email.value;
  var ix = (checkStr.length - 4)
  var RC = true;
  var x = AtSignValid = DoublePeriod = PeriodValid = SpaceValid = ExtValid = RL = 0;

  for (i = 0;  i < checkStr.length;  i++)
  {
    if (checkStr.charAt(i) == '@')
      AtSignValid++;
    else if (checkStr.charAt(i) == '.')
    {
      if (x == (i-1))
        DoublePeriod++;
      else
      {
        x = i;
        PeriodValid++;
      }
    }
    else if (checkStr.charAt(i) == ' ')
      SpaceValid ++;
  }
  if (checkStr.indexOf(".com", ix) > -1)
    ExtValid++;
  else if (checkStr.indexOf(".edu", ix) > -1)
    ExtValid++;
  else if (checkStr.indexOf(".biz", ix) > -1)
    ExtValid++;
  else if (checkStr.indexOf(".net", ix) > -1)
    ExtValid++;
  else if (checkStr.indexOf(".org", ix) > -1)
    ExtValid++;
  else if (checkStr.indexOf(".gov", ix) > -1)
    ExtValid++;
  else if (checkStr.indexOf(".mil", ix) > -1)
    ExtValid++;
  else if (checkStr.indexOf(".cc", ix) > -1)
    ExtValid++;
  RL = Reason.length;
  if (AtSignValid != 1)
    Reason += "\nOnly one '@' allowed, " + AtSignValid + " found.";
  if (PeriodValid == 0)
    Reason += "\naddress1 must contain at least one period.";
  if (SpaceValid > 0)
    Reason += "\nNo Spaces allowed. address1 contains " + SpaceValid + " space";
  if (SpaceValid > 1)
    Reason += "s.";
  if (checkStr.length > 120)
    Reason += "\nPlease limit the Email address1 to 120 characters.";

  if (RL != Reason.length)
  {
 alert(Reason);
 return false;
  }
  return true;
}
