
function checkform ( form )
{

  // ** START **



 if (form.tour1.options[0].selected != ""){
    alert( "Please select a tour." );
    form.tour1.focus();
    return false ;
  }


  if (form.adults.value == "") {
    alert( "Please enter the number of adults." );
    form.adults.focus();
    return false ;
  }


// START confirm entry in adults field is a number and not a letter

  var digits = "0123456789";

  for (var i = 0; i < form.adults.value.length; i++)
  {
    temp = form.adults.value.substring(i, i+1)

    if (digits.indexOf(temp) == -1 &&
     form.adults.value != "")
    {
    alert( "You must enter a number in No of Adults field." );
    form.adults.focus();
    return false ;
    }
  }

// END confirm entry in adults field is a number and not a letter




  if (form.date1.value == "") {
    alert( "Please enter date you wish tour to start." );
    form.date1.focus();
    return false ;
  }


// START confirm entry in date1 field is in the correct format

    var minYear = (new Date()).getFullYear();
    var maxYear = ((new Date()).getFullYear())+2;

    // regular expression to match required date format
    re = /^(\d{1,2})\/(\d{1,2})\/(\d{4})$/;

    if(form.date1.value != '') {
      if(regs = form.date1.value.match(re)) {
        if(regs[1] < 1 || regs[1] > 31) {
          alert("Invalid day: " + regs[1]);
          form.date1.focus();
          return false;
        }
        if(regs[2] < 1 || regs[2] > 12) {
          alert("Invalid month: " + regs[2]);
          form.date1.focus();
          return false;
        }
        if(regs[3] < minYear || regs[3] > maxYear) {
          alert("Invalid year: " + regs[3] + " - must be between "  + minYear + " and " + maxYear);
          form.date1.focus();
          return false;
        }
      } else {
        alert("Invalid date format. Enter as dd/mm/yyyy ");
        form.date1.focus();
        return false;
      }
    }

// END confirm entry in date1 field is in the correct format



  if (form.pickup.value == "") {
    alert( "Please enter your pickup location." );
    form.pickup.focus();
    return false ;
  }

  if (form.dropoff.value == "") {
    alert( "Please enter your drop off location." );
    form.dropoff.focus();
    return false ;
  }


  if (form.partyname.value == "") {
    alert( "Please enter your party name." );
    form.partyname.focus();
    return false ;
  }


  if (form.bookedname.value == "") {
    alert( "Please enter the name the tour is being booked under." );
    form.bookedname.focus();
    return false ;
  }



if (form.email.value == "")
  {
    alert( "Please enter your email address." );
    form.email.focus();
    return false ;
  }

// START confirm valid email address

if ((form.email.value.indexOf ('@',0) == -1 ||
   form.email.value.indexOf ('.',0) == -1) &&
   form.email.value != "")
  {
    alert( "The email address entered doesn’t seem to be valid." );
    form.email.focus();
    return false ;
  }

// END confirm valid email address



if (form.tel.value == "")
  {
    alert( "Please enter your telephone number." );
    form.tel.focus();
    return false ;
  }

// START confirm entry in tel field is a number and not a letter

  var digits = "0123456789 +";

  for (var i = 0; i < form.tel.value.length; i++)
  {
    temp = form.tel.value.substring(i, i+1)

    if (digits.indexOf(temp) == -1 &&
     form.tel.value != "")
    {
    alert( "You must enter a number in telephone No ." );
    form.tel.focus();
    return false ;
    }
  }

// END confirm entry in tel field is a number and not a letter




  // ** END **
  return true ;
}












