// ===================================================================
// JavaScript
// ===================================================================

// Calendar Arrival
var calarrive= new CalendarPopup("calendararrive");

calarrive.setReturnFunction("showDatearrive");

calarrive.setDayHeaders('Su','M','Tu','W','Th','F','Sa');

if (navigator.appName == "Microsoft Internet Explorer") {
	calarrive.offsetX = -40;
	calarrive.offsetY = 15;
}
else {
	calarrive.offsetX = -86;
	calarrive.offsetY = 6;
}

function showDatearrive(y,m,d) {
	document.frmReservation.arrive.value = m + "/" + d + "/" + y;
}

document.write(calarrive.getStyles());


// Calendar Departure
var caldepart= new CalendarPopup("calendardepart");

caldepart.setReturnFunction("showDatedepart");

caldepart.setDayHeaders('Su','M','Tu','W','Th','F','Sa');

if (navigator.appName == "Microsoft Internet Explorer") {
	caldepart.offsetX = -40;
	caldepart.offsetY = 15;
}
else {
	caldepart.offsetX = -86;
	caldepart.offsetY = 15;
}

function showDatedepart(y,m,d) {
	document.frmReservation.depart.value = m + "/" + d + "/" + y;
}

document.write(caldepart.getStyles());


// Validator
var d1, d2;

function validator() {
	var frmName = document.frmReservation;

	var adult;

	adult = frmName.adult.value;

	frmName.numberOfAdults.value = adult;

	var child;

	child = frmName.child.value;

	frmName.numberOfChildren.value = child;

	var arrive;

	arrive = frmName.arrive.value;

	if(arrive == "Check-In") {
		alert("Please enter check in date.");
		return false;
	}
	else {
		//split the date and extract month, day, year
		var month, day, year;

		var k, y;

		k = arrive.indexOf("/");

		month = arrive.substring(0,k);

		y = arrive.indexOf("/",k+1);

		day = arrive.substring(k+1,y);

		year = arrive.substring(y+1);

		if (year.length == 2)
		{
			year = "20" + year;
		}
				
		//set the date values of the form hidden variables.

		frmName.arrivalDate.value = day;

		frmName.arrivalMonth.value = month;

		frmName.arrivalYear.value = year;

		d1 = new Date(frmName.arrivalYear.value, frmName.arrivalMonth.value-1, frmName.arrivalDate.value);
	}

	var depart;

	depart = frmName.depart.value;

	if(depart == "Check-Out") {
		alert("Please enter check out date.");

		return false;
	}
	else {
		//split the date and extract month, day, year
		var month, day, year;

		var k, y;

		k = depart.indexOf("/");

		month = depart.substring(0,k);

		y = depart.indexOf("/",k+1);

		day = depart.substring(k+1,y);

		year = depart.substring(y+1);

		if (year.length == 2)
		{
			year = "20" + year;
		}
			
		//set the date values of the form hidden variables.

		frmName.departureDate.value = day;

		frmName.departureMonth.value = month;

		frmName.departureYear.value = year;

		d2 = new Date(frmName.departureYear.value, frmName.departureMonth.value-1, frmName.departureDate.value);
	}

	frmName.arrivalDate.value = frmName.arrive.value;
	frmName.departureDate.value = frmName.depart.value;

	// The number of milliseconds in one day
	var oneDay = 1000 * 60 * 60 * 24;

	// Convert both dates to milliseconds
	var date1_ms = d1.getTime();
	var date2_ms = d2.getTime();

	// Calculate the difference in milliseconds
	var difference = Math.abs(date1_ms - date2_ms);

	// Convert back to days and return
	frmName.numberOfNights.value = Math.round(difference/oneDay);
}
