function checkbooking() {

  bfirstname = document.booking.firstname.value;
  blastname = document.booking.lastname.value;
  baddress = document.booking.address.value;
  bemail = document.booking.email.value;

  bpickupday = document.booking.pickupday.options[document.booking.pickupday.selectedIndex].value; 
  bpickupmonth = document.booking.pickupmonth.options[document.booking.pickupmonth.selectedIndex].value; 
  bpickupyear = document.booking.pickupyear.options[document.booking.pickupyear.selectedIndex].value; 
  bdropoffday = document.booking.dropoffday.options[document.booking.dropoffday.selectedIndex].value; 
  bdropoffmonth = document.booking.dropoffmonth.options[document.booking.dropoffmonth.selectedIndex].value; 
  bdropoffyear = document.booking.dropoffyear.options[document.booking.dropoffyear.selectedIndex].value; 
  bpickuplocation = document.booking.pickuplocation.options[document.booking.pickuplocation.selectedIndex].value;
  bdropofflocation = document.booking.dropofflocation.options[document.booking.dropofflocation.selectedIndex].value; 

  filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
  var now = new Date();
  now = now.getTime(); //NN3
  var dateToCheck = new Date();
  dateToCheck.setYear(bpickupyear);
  dateToCheck.setMonth(bpickupmonth-1,bpickupday);
  dateToCheck.setDate(bpickupday);
  var checkDate = dateToCheck.getTime();
  
  var now2 = new Date();
  now2 = now2.getTime(); //NN3
  var dateToCheck2 = new Date();
  dateToCheck2.setYear(bdropoffyear);
  dateToCheck2.setMonth(bdropoffmonth-1,bdropoffday);
  dateToCheck2.setDate(bdropoffday);
  var checkDate2 = dateToCheck2.getTime();
  
  one_day = 1000 * 60 * 60 * 24;
  difference_ms = Math.abs(checkDate2 - checkDate);
  totaldays = Math.round(difference_ms/one_day);
  totaldays = totaldays + 1;
 
 
 returnval = true;
 hideAllErrors();
 if (bfirstname == "") {
 document.getElementById("nameError").style.display = "inline";
 returnval = false;
  }
 if (blastname == "") {
 document.getElementById("name2Error").style.display = "inline";
 returnval = false;
  }
if (bemail == "") {
 document.getElementById("emailError").style.display = "inline";
 returnval = false;
  }
if (bemail != "" && !(filter.test(bemail))) { 
 returnval = false;
 document.getElementById("email2Error").style.display = "inline";
 }
if (bpickupday == "select" || bpickupmonth == "select" || bpickupyear == "select") 
  {
     document.getElementById("pickupdateError").style.display = "inline";
	 returnval = false;
 }
if (bdropoffday == "select" || bdropoffmonth == "select" || bdropoffyear == "select") 
  {
     document.getElementById("dropoffdateError").style.display = "inline";
	 returnval = false;
 }
if (bpickuplocation == "select") 
  {
     document.getElementById("pickuplocationError").style.display = "inline";
	 returnval = false;
 }
if (bdropofflocation == "select") 
  {
     document.getElementById("dropofflocationError").style.display = "inline";
	 returnval = false;
 }
if (bdropofflocation == "1" || bpickuplocation == "1" && baddress == "") 
  {
     document.getElementById("addressError").style.display = "inline";
	 returnval = false;
 }
else { document.getElementById("addressError").style.display = "none";}

 if (now > checkDate){
  returnval = false;
 document.getElementById("pickupdate2Error").style.display = "inline"; 
 }
 if (now2 > checkDate2){
  returnval = false;
 document.getElementById("dropoffdate2Error").style.display = "inline"; 
 }
 if (checkDate > checkDate2){
  returnval = false;
 document.getElementById("dateError").style.display = "inline"; 
 }
if(bpickupday != "select" && bpickupmonth != "select" && bpickupyear != "select" && bdropoffday != "select" && bdropoffmonth != "select" && bdropoffyear != "select"){
if(totaldays < 3){
	document.getElementById("totaldaysError").style.display = "inline";
	 returnval = false;
}
}
 
 return returnval;
}
 
function hideAllErrors() {
 document.getElementById("nameError").style.display = "none";
 document.getElementById("name2Error").style.display = "none";
 document.getElementById("emailError").style.display = "none";
 document.getElementById("email2Error").style.display = "none";
 document.getElementById("pickupdateError").style.display = "none";
 document.getElementById("dropoffdateError").style.display = "none";
 document.getElementById("pickupdate2Error").style.display = "none";
 document.getElementById("dropoffdate2Error").style.display = "none";
 document.getElementById("pickuplocationError").style.display = "none";
 document.getElementById("dropofflocationError").style.display = "none";
 document.getElementById("totaldaysError").style.display = "none";
 document.getElementById("dateError").style.display = "none";
}

function checkccdetails(){
 
  creditname = document.placebooking.ccname.value;
  creditnum = document.placebooking.ccnumber.value;
  credittype = document.placebooking.cctype.options[document.placebooking.cctype.selectedIndex].value;
  creditexpirymonth = document.placebooking.ccexpirymonth.options[document.placebooking.ccexpirymonth.selectedIndex].value;
  creditexpiryyear = document.placebooking.ccexpiryyear.options[document.placebooking.ccexpiryyear.selectedIndex].value;
  day = 1;
  
  var now = new Date();
  now = now.getTime(); //NN3
  var dateToCheck = new Date();
  dateToCheck.setYear(creditexpiryyear);
  dateToCheck.setMonth(creditexpirymonth-1);
  var checkDate = dateToCheck.getTime();

 returnval = true;
 hideAllErrors2();

if (creditname == "") {
 returnval = false;
 document.getElementById("ccnameError").style.display = "inline";
  }
 if (creditnum == "") {
 returnval = false;
 document.getElementById("ccnumberError").style.display = "inline";
  } 
 if (credittype == "select") {
 returnval = false;
 document.getElementById("cctypeError").style.display = "inline";
 } 
if(creditexpirymonth == "select" || creditexpiryyear == "select"){
 returnval = false;
 document.getElementById("ccexpiryError").style.display = "inline";
 }
 if(now > checkDate){	 
    returnval = false;
    document.getElementById("ccexpiry2Error").style.display = "inline";
 }
 return returnval;
}

function hideAllErrors2() {
 document.getElementById("ccnameError").style.display = "none";
 document.getElementById("ccnumberError").style.display = "none";
 document.getElementById("cctypeError").style.display = "none";
 document.getElementById("ccexpiryError").style.display = "none";
 document.getElementById("ccexpiry2Error").style.display = "none";
}
