function FrontPage_Form1_Validator(theForm)
{

  if (theForm.FullName.value == "")
  {
    alert("Please enter your name.");
    theForm.FullName.focus();
    return (false);
  }


  if (theForm.Email.value == "")
  {
    alert("Please enter your Email address");
    theForm.Email.focus();
    return (false);
  }

  if (theForm.Email.value.length < 6)
  {
    alert("The Email address you entered is invalid");
    theForm.Email.focus();
    return (false);
  }

  var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzƒŠŒŽšœžŸÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ0123456789-@_-.";
  var checkStr = theForm.Email.value;
  var allValid = true;
  var validGroups = true;
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
  }
  if (!allValid)
  {
    alert("Please enter only letter, digit and \"@_-.\" characters in the Email field.");
    theForm.Email.focus();
    return (false);
  }
 if (theForm.ConfirmEmail.value == "")
  {
    alert("Please confirm your Email address");
    theForm.ConfirmEmail.focus();
    return (false);
  }

  if (theForm.ConfirmEmail.value.length < 6)
  {
    alert("The Email address you entered is invalid");
    theForm.ConfirmEmail.focus();
    return (false);
  }

  var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzƒŠŒŽšœžŸÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ0123456789-@_-.";
  var checkStr = theForm.ConfirmEmail.value;
  var allValid = true;
  var validGroups = true;
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
  }
  if (!allValid)
  {
    alert("Please enter only letter, digit and \"@_-.\" characters in the Email field.");
    theForm.ConfirmEmail.focus();
    return (false);
  }
  if (theForm.ConfirmEmail.value != theForm.Email.value)
  {
    alert("Your Email addresses do not match");
    theForm.ConfirmEmail.focus();
    return (false);
  }
  if (theForm.PhoneNumber.value == "")
  {
    alert("Please Enter your Phone Number");
    theForm.PhoneNumber.focus();
    return (false);
  }



 if (theForm.CountryOfOrigin.selectedIndex == 0)
  {
    alert("The first \"CountryOfOrigin\" option is not a valid selection.  Please choose one of the other options.");
    theForm.CountryOfOrigin.focus();
    return (false);
  }


 if (theForm.AccommodationType.selectedIndex == 0)
  {
    alert("The \"AccommodationType\" option is not a valid selection.  Please choose one of the other options.");
    theForm.AccommodationType.focus();
    return (false);
  }

  if (theForm.NumberOfAdults.value == "")
  {
    alert("Please enter a value for the \"NumberOfAdults\" field.");
    theForm.NumberOfAdults.focus();
    return (false);
  }


  if (theForm.ArriveDay)
{
  if (theForm.ArriveDay.selectedIndex == 0 || theForm.ArriveDay.selectedIndex == 1)
  {
    alert("The \"Arrival Day\" is not a  valid selection");
    document.forms.form.ArriveDay.focus();
    return (false);
  }
    if (theForm.ArriveMonth.selectedIndex == 0 || theForm.ArriveMonth.selectedIndex == 1)
  {
    alert("The \"Arrival Month\" is not a  valid selection");
    document.forms.form.ArriveMonth.focus();
    return (false);
  }
      if (theForm.ArriveYear.selectedIndex == 0 || theForm.ArriveYear.selectedIndex == 1)
  {
    alert("The \"Arrival Year\" is not a  valid selection");
    document.forms.form.ArriveYear.focus();
    return (false);
  }
}

 



  if (theForm.DepartDay)
{
    if (theForm.DepartDay.selectedIndex == 0 || theForm.DepartDay.selectedIndex == 1)
  {
    alert("The \"Departure Day\" is not a  valid selection");
    document.forms.form.DepartDay.focus();
    return (false);
  }
    if (theForm.DepartMonth.selectedIndex == 0 || theForm.DepartMonth.selectedIndex == 1)
  {
    alert("The \"Departure Month\" is not a  valid selection");
    document.forms.form.DepartMonth.focus();
    return (false);
  }
      if (theForm.DepartYear.selectedIndex == 0 || theForm.DepartYear.selectedIndex == 1)
  {
    alert("The \"Departure Year\" is not a  valid selection");
    document.forms.form.DepartYear.focus();
    return (false);
  }
}
  
  if (theForm.SpamCheck.value == "")
  {
    alert("Please enter the red number");
    theForm.SpamCheck.focus();
    return (false);
  }
  
  return (true);
}
