// JavaScript Document
setRange("checkin", daysAfter(1), daysAfter(500));
setRange("checkout", dayOffset(document.forms[0].txtCheckIn.value, 3), daysAfter(500));
var date_interval=3;

function dateOffset(date,n) {
	var d=toJSDate(date||"");
	d.setTime(d.getTime()+86400000*n);
	return toCalendarDate(d);
}

function beforeSetDateValue(ref_field, target_field, date) {
	if (date!="") {
		if (target_field==document.forms[0].txtCheckOut || target_field==document.forms[0].txtCheckIn){
			var startDate=document.forms[0].txtCheckIn;
			var endDate=document.forms[0].txtCheckOut;

			if (target_field==endDate &&
				checkDate(getDateValue(startDate))==0 &&
				compareDates(dateOffset(getDateValue(startDate), date_interval), date)>0) {
				date=getDateValue(endDate);
				alert("The minimal rental period is "+date_interval+" days. Please select again.");
			}
		}
	}

	return date;
}

function afterSetDateValue(ref_field, target_field, date) {
	if (date!="") {
		if (target_field==document.forms[0].txtDropoffDate || target_field==document.forms[0].txtCheckIn){
			var startDate=document.forms[0].txtCheckIn;
			var endDate=document.forms[0].txtCheckOut;

			if (target_field==startDate &&
				checkDate(getDateValue(endDate))==0 &&
				compareDates(dateOffset(date, date_interval), getDateValue(endDate))>0) {
				setDateValue(endDate, dateOffset(date, date_interval));
				alert("Dropoff Date was too early, and it's reset to "+date_interval+" days after Collect Date.");
			}
		}
	}
}

function checkFormDates() {
	var startDate=document.forms[0].txtCheckIn;
	var endDate=document.forms[0].txtCheckOut;

	if (checkDate(getDateValue(startDate))!=0) {
		alert("Please select the collect Date.");
	} else if (checkDate(getDateValue(endDate))!=0) {
		alert("Please select the dropoff Date.");
	} else if (compareDates(dateOffset(getDateValue(startDate), date_interval), getDateValue(endDate))>0) {
		alert("The minimal rental period is "+date_interval+" days. Please select again.");
	}
}

function ValidateDates(source, arguments){
	var startDate=document.forms[0].txtCheckIn;
	var endDate=document.forms[0].txtCheckOut;
	if (compareDates(getDateValue(startDate), daysAfter(1))<0){
		arguments.IsValid=false;
	} else {
		if (compareDates(dateOffset(getDateValue(startDate), date_interval), getDateValue(endDate))>0) {
			arguments.IsValid=false;
		} else {
			arguments.IsValid=true;
		}
	}
}
