// javascript document
var weekday=new Array('Sun','Mon','Tue','Wed','Thu','Fri','Sat');

function checkAvailability()
{
	var stdate=new Date();
	var edate=new Date();
	dd=document.getElementById('IN_DAY').selectedIndex +1;
	ym=document.getElementById('IN_MONTH').value;
	yyyy=parseInt(ym.substring(0,4),10);
	mm=parseInt(ym.substring(4),10);
	stdate=new Date(yyyy, mm-1, dd);
	dd=document.getElementById('OUT_DAY').selectedIndex +1;
	ym=document.getElementById('OUT_MONTH').value;
	yyyy=parseInt(ym.substring(0,4),10);
	mm=parseInt(ym.substring(4),10);
	edate=new Date(yyyy, mm-1, dd);
	var t_nights=days_elapsed(stdate,edate);
	if(stdate.getTime()<limitStartDate.getTime())
	{
		alert("Start date cannot be less than "+limitStartDate.getDate()+"/"+(limitStartDate.getMonth()+1)+"/"+limitStartDate.getFullYear());
		return;
	}
	else if(edate.getTime() > limitEndDate.getTime())
	{
		alert("End date cannot be more than "+limitEndDate.getDate()+"/"+(limitEndDate.getMonth()+1)+"/"+limitEndDate.getFullYear());
		return;
	}
	else if(t_nights<=0)
	{
		alert("Start date must be less than end date");
		return;
	}
	else if(t_nights<min_nights_of_booking)
	{
		alert("Number of nights cannot be less than "+min_nights_of_booking);
		return;
	}
	else if(t_nights>max_nights)
	{
		alert("Number of nights cannot be more than "+max_nights);
		return;
	}
	document.reservation_selector_form.submit();
}


function days_elapsed(start_date,end_date)
{
	return (end_date.getTime()-start_date.getTime())/86400000;
}

function change_rooms(roomscountlist)
{
	noofrooms=roomscountlist.value;
	for(i=1;i<=max_rooms_for_reservation;i++){
		var divid='occ_div_'+i;
		var adultslistname='adults_'+i;
		var childrenlistname='children_'+i;
		
		if(i>noofrooms){
			eval("document.reservation_selector_form."+adultslistname+".selectedIndex=0");
			eval("document.reservation_selector_form."+childrenlistname+".selectedIndex=0");
			document.getElementById(divid).style.display='none';	
		}else{
			document.getElementById(divid).style.display='block';	
		}		
	}
}

function change_adults(roomno){
	//alert('change_adults');
	var adultslistname='adults_'+roomno;
	var childrenlistname='children_'+roomno;
	var adultcount=eval("document.reservation_selector_form."+adultslistname+".selectedIndex")+1; // index and value are equal
	eval("document.reservation_selector_form."+childrenlistname+".options.length=0");
	for(i=0;i<=(max_members-adultcount);i++){
		var childrenlist=eval("document.reservation_selector_form."+childrenlistname);
		childrenlist.options[i]=new Option(i,i);
	}
}

function checkAvailability1(){
	//alert('startOver');
	//alert('Submitting');
	if(!arrivalDateAfterEarliestArrival()){
		alert("Arrival date is not valid");
		document.reservation_selector_form.number_of_nights.selectedIndex=0;
		return;
	}
	//document.reservation_selector_form.in_day_of_week.value=getWeekDay(returnArrivalDepartureDateObj('arrival'));
	if(!departureDateAfterEarliestDeparture()){
		alert("Departure date is not valid");
		document.reservation_selector_form.number_of_nights.selectedIndex=0;
		return;
	}
	
	var nights=document.reservation_selector_form.number_of_nights.selectedIndex
	var checkout_date=document.getElementById('OUT_DAY').value+"-"+document.getElementById('OUT_MONTH').value.substring(4)+"-"+document.getElementById('OUT_MONTH').value.substring(0,4);
	var checkin_date=document.getElementById('IN_DAY').value+"-"+document.getElementById('IN_MONTH').value.substring(4)+"-"+document.getElementById('IN_MONTH').value.substring(0,4);
	var nights=getDateDiff(checkin_date, checkout_date)
	if(nights<min_nights_of_booking){
		alert("Number of nights must be greater or equal to "+min_nights_of_booking+".");
		return;
	}
	else if(nights>max_nights){
		alert("Number of nights must be less than or equal to "+max_nights+".");
		document.reservation_selector_form.number_of_nights.selectedIndex=0;
		return;
	}
	document.reservation_selector_form.submit();
}

function getDaysInMonth(mm, yy)
{
	if(mm==2)
	{
		if(isLeapYear(yy))
			return 29;
		return 28;
	}
	else if(mm==1 || mm==3 || mm==5 || mm==7 || mm==8 || mm==10 || mm==12)
		return 31;
	else
		return 30;
}


function isLeapYear (year)
{
	if (((year % 4)==0) && ((year % 100)!=0) || ((year % 400)==0))
	{return true;} else{ return false; }
}

function ret_lastday(monthyear)
{
	var inMonthTranslated =    eval(monthyear.substring(4,6));
        var year=eval(monthyear.substring(0,4));
	var lastDay = 31;

	switch (inMonthTranslated)
	{
		case 9:
		case 4:
		case 6:
		case 11:
			lastDay = 30
			break;
		case 2:
			if(isLeapYear(year))
				lastDay =29;
			else
				lastDay=28;
			break;
	}
	return lastDay;
}
