function radio_button_checker()
{
	var OBSelected = false;
	var IBSelected = false;
	var OBBookcode = "", IBBookcode = "";
	var i = 0;
	var OBCheckboxes = document.forms["flightResults"].bookcodeOB
	var IBCheckboxes = document.forms["flightResults"].bookcodeIB
	if(OBCheckboxes) // return flight
	{
		if(OBCheckboxes.length > 1)
		{
			for(i = 0; i < OBCheckboxes.length; i++)
			{
				if(OBCheckboxes[i].checked == true)
				{
					OBSelected = true;
					OBBookcode = OBCheckboxes[i].value;
				}
			}
		}
		else
		{
			OBCheckboxes.checked = true;
			OBSelected = true;
		}
	}
	if(IBCheckboxes) // return flight
	{
		if(IBCheckboxes.length > 1)
		{
			for(i = 0; i < IBCheckboxes.length; i++)
			{
				if(IBCheckboxes[i].checked == true)
			{
					IBSelected = true;
					IBBookcode = IBCheckboxes[i].value;
				}
			}
		}
		else
		{
			IBCheckboxes.checked = true;
			IBSelected = true;
		}
	}
	else
	{
		IBSelected = true;
	}
	if(OBSelected && IBSelected)
	{
		if(IBCheckboxes) // return flight
		{
			var OBDepDate = Date.parse(document.getElementById(OBBookcode).value);
			var IBDepDate = Date.parse(document.getElementById(IBBookcode).value);
			if(OBDepDate > IBDepDate)
			{
				alert("Sorry, your selected outbound flight leaves after your selected return flight\nPlease re-select your flights");
				return false;
			}
			else if(OBDepDate == IBDepDate)
			{
				if(confirm("You have booked your outbound and return flights on the same day. Is this intentional? If not please re-select"))
				{
					return true
				}
				else
				{
					return false;
				}
			}
			/*alert(document.getElementById(OBBookcode).value + " = " + OBDepDate + "\n" + document.getElementById(IBBookcode).value + " = " + IBDepDate);
			return false;*/
		}
		return true;
	}
	else if ((OBCheckboxes) && (IBCheckboxes) && (!OBSelected) && (!IBSelected))
	{
		alert("Please make sure you select an outbound and inbound flight");
		return false;
	}
	else if ((IBCheckboxes) && (!IBSelected))
	{
		alert("Please make sure you select an inbound flight");
		return false;
	}
	else if ((OBCheckboxes) && (!OBSelected))
	{
		alert("Please make sure you select an outbound flight");
		return false;
	}
	return true;
}

function validatePage(){
	
	var i = 1;
	var theForm = document.forms['form1'];
	while(document.getElementById("firstname"+i) != null)
	{
		if(document.getElementById("firstname"+i).value == "")
		{
			alert("Please remember to enter the first names of all the passengers");
    		document.getElementById("firstname"+i).focus();
    		return false;
		}
		i++;
	}
	i = 1;
	while(document.getElementById("surname"+i) != null)
	{
		if(document.getElementById("surname"+i).value == "")
		{
			alert("Please remember to enter the surnames of all the passengers");
    		document.getElementById("surname"+i).focus();
    		return false;
		}
		i++;
	}
   if(document.forms['form1'].chd_title.value =="none")
  {
    alert("Please select a title");
    document.forms['form1'].chd_title.focus();
    return false;
  }

    if(document.forms['form1'].chd_firstname.value =="")
  {
    alert("Please enter your firstname");
    document.forms['form1'].chd_firstname.focus();
    return false;
  }
     if(document.forms['form1'].chd_surname.value =="")
  {
    alert("Please enter your surname");
    document.forms['form1'].chd_surname.focus();
    return false;
  }
       if(document.forms['form1'].chd_address1.value =="")
  {
    alert("Please enter the first line of your address");
    document.forms['form1'].chd_address1.focus();
    return false;
  }
  	if(document.forms['form1'].chd_town.value =="")
  {
    alert("Please enter your town");
    document.forms['form1'].chd_town.focus();
    return false;
  }
  	if(document.forms['form1'].chd_country.value =="")
  {
    alert("Please enter your Country");
    document.forms['form1'].chd_country.focus();
    return false;
  }
     if(document.forms['form1'].chd_postCode.value =="")
  {
    alert("Please enter your postcode e.g. RH19 4HY");
    document.forms['form1'].chd_postCode.focus();
    return false;
  }
     if(document.forms['form1'].chd_phone.value == "")
  {
    alert("Please enter your phone number");
    document.forms['form1'].chd_phone.focus();
    return false;
  }
  if (document.forms['form1'].chd_email.value=="Email Address*" ||document.forms['form1'].chd_email.value.indexOf("@")==-1 || document.forms['form1'].chd_email.value.indexOf(".")==-1 || document.forms['form1'].chd_email.value.indexOf(" ")!=-1 || document.forms['form1'].chd_email.value.length<6)
 {
    alert("Please enter a valid email address as an itinerary of your booking will be sent there");
    document.forms['form1'].chd_email.focus();
    return false;
  }
  if(theForm.chd_emailConfirm.value != theForm.chd_email.value)
  {
	  alert("Your email address has not been correctly confirmed");
      theForm.chd_emailConfirm.focus();
      return false;
  }
  	if(document.forms['form1'].mediaCode.value == "")
  {
    alert("Please tell us how you heard about us");
    document.forms['form1'].mediaCode.focus();
    return false;
  }
    if(document.forms['form1'].name.value == "")
  {
    alert("Please enter the card holders name");
    document.forms['form1'].name.focus();
    return false;
  }
    while(document.forms['form1'].pan.value.indexOf(" ") > -1)
    {
       document.forms['form1'].pan.value = document.forms['form1'].pan.value.replace(" ","");
    }
	
    if(!document.forms['form1'].pan.value.match(/^[\d]+$/))
  {
    alert("Please enter a valid card number");
    document.forms['form1'].pan.focus();
    return false;
  }
  if(!isValidCard())
  {
      alert("Please make sure your card number matches your selected card type");
      document.forms['form1'].pan.focus();
      return false;
  }
    if(!document.forms['form1'].chd_security.value.match(/^\d+$/))
  {
    alert("Please enter your cards security number. (Last 3 digits on the back)");
    document.forms['form1'].chd_security.focus();
    return false;
  }
  if(document.forms['form1'].type.value != "SWI")
  {
    document.forms['form1'].issue.value = "";
  }
  if((document.forms['form1'].issue.value != "" && !document.forms['form1'].issue.value.match(/^\d+$/)))
  {
    alert("Please remember to enter your issue number if you have a Switch/Maestro or Solo card");
    document.forms['form1'].issue.focus();
    return false
  }
  
	
    if(document.forms['form1'].confirmBox2.checked != true)
  {
    alert("Please confirm that all passenger details are as they appear on each of their respective passports");
    document.forms['form1'].confirmBox2.focus();
    return false;
  }
    if(document.forms['form1'].confirmBox.checked != true)
  {
    alert("Please make sure you confirm that you have read our terms and conditions");
    document.forms['form1'].confirmBox.focus();
    return false;
  }
  showWaitingMessage();
  submitForm();
    //document.form1.submit()
}

function isValidCard()
{
	var pan = document.forms['form1'].pan.value;
	var type = document.forms['form1'].type.value;
	
	if(/^5/.test(pan) && type == "MC")
	{
		return true;
	}
	else if(/^4/.test(pan) && (type == "VIS"))
	{
		return true;
	}
	else if((type == "VISD" || type == "SWI") && (/^[456]/.test(pan)))
	{
		return true;
	}
	return false;
}

function submitForm(){
  //document.getElementById("preload").style.display = "block";
  //document.getElementById("preload").style.visibility = "visible";
 // document.getElementById("load").style.visibility = "hidden";
  //document.getElementById("load").style.display = "none";
  document.forms['form1'].submit();
}
