function isEmailAddr(email){
  var result = false;
  var theStr = new String(email);
  var index = theStr.indexOf("@");
  if (index > 0)
  {
    var pindex = theStr.indexOf(".",index);
    if ((pindex > index+1) && (theStr.length > pindex+1))
	result = true;
  }
  return result;
}

function validRequired(formField,fieldLabel){
  var result = true;
  if (formField.value == "")
  {
    alert('Please enter a value for the "' + fieldLabel +'" field.');
    formField.focus();
    result = false;
  }
    return result;
}

function validEmail(formField,fieldLabel,required){
  var result = true;
  if (required && !validRequired(formField,fieldLabel))
  result = false;
  if (result && ((formField.value.length < 3) || !isEmailAddr(formField.value)) )
  {
    alert("Please enter a complete email address in the form: yourname@yourdomain.com");
    formField.focus();
    result = false;
  }
  return result;
}

function validateForm(theForm){
  if (!validRequired(theForm.Society,"Name of Company or Society"))
    return false;
  if (!validRequired(theForm.Organiser,"Organiser`s Name"))
    return false;
  if (!validEmail(theForm.email,"Email Address",true))
    return false;
  if (!validRequired(theForm.Address1,"Postal Address"))
    return false;
  if (!validRequired(theForm.Postcode,"Postcode"))
    return false;
  if (!validRequired(theForm.Telephone,"Contact Tel. No."))
    return false;
  if (!validRequired(theForm.VisitDate,"Date of Proposed Visit"))
    return false;
  if (!validRequired(theForm.NumberOfPlayersAM,"No. of Players (A.M.)"))
    return false;
  if (!validRequired(theForm.NumberOfPlayersPM,"No. of Players (P.M.)"))
    return false;
  if (!validRequired(theForm.TeeOffAM,"Tee Off Times required (A.M.)"))
    return false;
  if (!validRequired(theForm.TeeOffPM,"Tee Off Times required (P.M.)"))
    return false;
  if (!validRequired(theForm.PlayFormatAM,"Format of Play (A.M.)"))
    return false;
  if (!validRequired(theForm.PlayFormatPM,"Format of Play (P.M.)"))
    return false;
  if (!validRequired(theForm.AMfood,"Arrival - Coffee/Tea & filled roll"))
    return false;
  if (!validRequired(theForm.Lunch,"Lunch - Soup & Sandwiches"))
    return false;
  if (!validRequired(theForm.Htea,"Evening - High Tea"))
    return false;
  return true;
}