function check_book_dates(formfrom,formto) 
{
	var one_day=1000*60*60*24;
	var from = formfrom.value;
	var to = formto.value;
	var checkdate = parseDate(from, 'd/M/y');
	var todate = parseDate(to, 'd/M/y');
 	if ((isDate(to,'d/M/y')==true) && (isDate(from,'d/M/y')==true) ) {
		quickbooking.action = 'car.php?q=book';
		quickbooking.submit();
 	}
 	else {
 		alert ("Please enter a pick-up and drop-off date!");
 	} 
}

function calculate_price(formcar,formfrom,formfromhrs,formto,formtohrs,formprice,formpricegbp) 
{

	//Set 1 day in milliseconds
	var one_day=1000*60*60*24;
	var from = formfrom.value;
	var to = formto.value;
	var car = formcar.value;
	var tohrs = formtohrs.value;
	var fromhrs = formfromhrs.value;
	var fromtohrsdif = tohrs - fromhrs;
	var fromdate = parseDate(from, 'd/M/y');
	var checkdate = parseDate(from, 'd/M/y');
	var todate = parseDate(to, 'd/M/y');
	var summerbookingdays = 0;
	var winterbookingdays = 0;
	var price =0;
	
	
	// check if from date contains a date
	// check if to date contains a date 
	// check if starting date is before ending date
	// check if car is selected

 	if ((isDate(to,'d/M/y')==true) && (isDate(from,'d/M/y')==true) && (fromdate < todate) && (car != 'pickbyprice')) { 

		// since days are ok then find how many days is the booking
		var days = Math.ceil((todate.getTime()-fromdate.getTime())/(one_day)); 
		// select the correct rate to charge the customer		
		if (days <= 6)
		{
			var rate=0;
		}
		else if ((days >= 7) && (days <= 14))
		{
			var rate=1;
		}
		else if (days > 14)
		{
			var rate=2;
		}		
		// if the hours diference is more than 5 then add another day
		if (fromtohrsdif >= 5){
			//alert ("from "+fromhrs+" to "+tohrs+" dif "+fromtohrsdif); 
			//alert ("extra day added"); 
			todate.setDate(todate.getDate()+1);
			
		}
		
		
		while(checkdate<todate)	{
			var summerpediodstart = new Date(checkdate.getYear(),03,01);
			var summerpediodend = new Date(checkdate.getYear(),10,01);
			var winterpediodstart1 = new Date(checkdate.getYear(),10,01);
			var winterpediodend1 = new Date(checkdate.getYear(),11,31);
			var winterpediodstart2 = new Date(checkdate.getYear(),0,01);
			var winterpediodend2 = new Date(checkdate.getYear(),03,01);			

			if ((checkdate >= summerpediodstart) && (checkdate < summerpediodend)) {
				summerbookingdays++;
			}			
			if ((checkdate >= winterpediodstart1) && (checkdate <= winterpediodend1)) {
				winterbookingdays++;
			}
			if ((checkdate >= winterpediodstart2) && (checkdate < winterpediodend2)) {
				winterbookingdays++;
			}
			//increment the day we are checking
			checkdate.setDate(checkdate.getDate()+1);
			
		} 
		price = (summerbookingdays * carrate[car][rate]) + (winterbookingdays * carrate[car][rate+3]);  
 
		//alert (" Car Hire Pricing Breakdown " 
		//+ "\n From "+ formfrom.value + " to " + formto.value
		//+ "\n ----------------------------------------------------"
		//+ "\n Early Summer  for "+earlysummerbookingdays 
		//+ "\n Summer for "+summerbookingdays
		//+ "\n Winter for "+winterbookingdays
		//+ "\n Car "+car  
		//+ "\n ----------------------------------------------------");		
				
		formprice.value = "EUR €"+price;
		formpricegbp.value = "GBP £"+Math.round(price*currrate);
		
	}	
}
