<!---Contact us Validation---->
function Form_Validator(theForm)
{

var digits = "0123456789";
var phoneNumberDelimiters = "()- ";
var validWorldPhoneChars = phoneNumberDelimiters + "+";
var minDigitsInIPhoneNumber = 10;

function isInteger(s)
{   var i;
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}

function stripCharsInBag(s, bag)
{   var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character isn't whitespace.
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function checkInternationalPhone(strPhone){
s=stripCharsInBag(strPhone,validWorldPhoneChars);
return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
}

function echeck(str) {

		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		   alert("Please enter a valid email.")
		   return (false);
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   alert("Please enter a valid email.")
		   return (false);
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    alert("Please enter a valid email.")
		    return (false);
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    alert("Please enter a valid email.")
		    return (false);
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    alert("Please enter a valid email.")
		    return (false);
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    alert("Please enter a valid email.")
		    return (false);
		 }
		
		 if (str.indexOf(" ")!=-1){
		    alert("Please enter a valid email.")
		    return (false);
		 }

 		 return true;
}

	if (theForm.title.value == "")
  {
     alert("Please enter your title.");
     theForm.title.focus();
     return (false);
  }
	
	if (theForm.forename.value == "")
  {
     alert("Please enter your forename.");
     theForm.forename.focus();
     return (false);
  }
  
  if (theForm.surname.value == "")
  {
     alert("Please enter your surname.");
     theForm.surname.focus();
     return (false);
  }
  
  if (theForm.address.value == "")
  {
     alert("Please enter your address.");
     theForm.address.focus();
     return (false);
  }
  if (theForm.cityortown.value == "")
  {
     alert("Please enter your city or town.");
     theForm.cityortown.focus();
     return (false);
  }
  if (theForm.countyorstate.value == "")
  {
     alert("Please enter your country or state.");
     theForm.countyorstate.focus();
     return (false);
  }
  
  if (theForm.country.value == "")
  {
     alert("Please enter your country.");
     theForm.country.focus();
     return (false);
  }
  
  if (theForm.postcode.value == "")
  {
     alert("Please enter your postcode.");
     theForm.postcode.focus();
     return (false);
  }
	if (theForm.tel.value == "")
  {
     alert("Please enter your Telephone Number");
     theForm.tel.focus();
     return(false);
  }
	var PhoneNo = theForm.tel;
	if (checkInternationalPhone(PhoneNo.value)==false)
	{
	 alert("Please enter valid telephone number");
	 theForm.tel.focus();
	 return(false);
	}

var emailID=theForm.email;
	
if ((emailID.value==null)||(emailID.value=="")) {
  alert("Please enter your email address.");
  theForm.email.focus();
  return false;
}

if (echeck(emailID.value)==false) {
  emailID.value="";
  theForm.email.focus();
 return false;
}

if (theForm.hear.value == "")
{
   alert("Please choose where you heared about us.");
   theForm.hear.focus();
   return (false);
}

if (theForm.full.value == "")
{
   alert("Please choose a ticket.");
   theForm.full.focus();
   return (false);
}

if (theForm.cancellationpolicy.checked == false)
{
   alert("You must agree to the Cancellation Policy to continue.");
   theForm.cancellationpolicy.focus();
   return (false);
}
	return (true);
}