var ADateRange=new Array(),DDateRange=new Array();var adYear,adMon,adDay,ddYear,ddMon,ddDay,_DepartureDate,_ArrivalDate;var DayInMonth=new Array(31,28,31,30,31,30,31,31,30,31,30,31);function checkDate(d){var s=d;if(!s)return null;var D=String(s).split("-");if(D.length<3)return null;var yy=parseInt(D[0],10);var mm=parseInt(D[1],10)-1;var dd=parseInt(D[2],10);var _d=new Date(yy,mm,dd);var c=isNaN(_d);return c?null:_d;}
function onSetRoomPerson(){if(typeof RoomType!='undefined'){var room=parseInt(RoomType,10);var e;if(!isNaN(room)){e=$("CountOfRoom");if(e)e.selectedIndex=room-1;}}
if(typeof RoomType!='undefined'){var amount=parseInt(AmountOfRooms,10);if(!isNaN(amount)){e=$("CountOfPerson");if(e)e.selectedIndex=amount-1;}}}
function onSetPeriod(){onSetRoomPerson();var ADate,cDate=new Date();if(typeof ArrivalDate!='undefined')
ADate=checkDate(ArrivalDate);if(!ADate||ADate<cDate){ADate=new Date();ADate.setTime(ADate.getTime()+(0*24*60*60*1000))}
var DDate;if(typeof DepartureDate!='undefined')
DDate=checkDate(DepartureDate);if(!DDate||DDate<=ADate){DDate=new Date();DDate.setTime(DDate.getTime()+(1*24*60*60*1000))}
iADYear=ADate.getFullYear();iADMonth=ADate.getMonth();iADDay=ADate.getDate();iDDYear=DDate.getFullYear();iDDMonth=DDate.getMonth();iDDDay=DDate.getDate();adYear=$("adYear");if(!adYear)return;adYear.options.length=0;for(i=iADYear,j=0;i<iADYear+3;i++,j++){elOpt=new Option;elOpt.value=String(i);elOpt.text=String(i);adYear.options[j]=elOpt;}
adYear.selectedIndex=0;adYear.onchange=ArrivalDeparture_Year;adMon=$("adMon");adMon.selectedIndex=iADMonth;adMon.onchange=ArrivalDeparture_Mon;adDay=$("adDay");adDay.selectedIndex=iADDay-1;adDay.onchange=ArrivalDeparture_Day;_ArrivalDate=$("_ArrivalDate");ddYear=$("ddYear");ddYear.options.length=0;for(i=iDDYear,j=0;i<iDDYear+3;i++,j++){elOpt=new Option;elOpt.value=String(i);elOpt.text=String(i);ddYear.options[j]=elOpt;}
ddYear.selectedIndex=0;ddYear.onchange=ArrivalDeparture_Year;ddMon=$("ddMon");ddMon.selectedIndex=DDate.getMonth();ddMon.onchange=ArrivalDeparture_Mon;ddDay=$("ddDay");ddDay.selectedIndex=DDate.getDate()-1;ddDay.onchange=ArrivalDeparture_Day;_DepartureDate=$("_DepartureDate");_DDate=new Date();_DDate.setTime(_DDate.getTime()+(365*24*60*60*1000));ADateRange[0]=Array(cDate.getFullYear(),cDate.getMonth()+1,cDate.getDate());ADateRange[1]=Array(_DDate.getFullYear()+3,_DDate.getMonth()+1,_DDate.getDate());_DDate.setTime(_DDate.getTime()+(30*60*60*1000));DDateRange[0]=Array(cDate.getFullYear(),cDate.getMonth()+1,cDate.getDate());DDateRange[1]=Array(_DDate.getFullYear()+3,_DDate.getMonth()+1,_DDate.getDate());ArrivalDeparture_Year();if(typeof EnableHotelRates!='undefined')EnableHotelRates();}
function InitPeriod(){adYear=$("adYear");adYear.onchange=ArrivalDeparture_Year;adMon=$("adMon");adMon.onchange=ArrivalDeparture_Year;adDay=$("adDay");adDay.onchange=ArrivalDeparture_Year;_ArrivalDate=$("_ArrivalDate");$v("_ArrivalDate",$v("adYear")+"-"+String($v("adMon")).lpad(2,'0')+"-"+String($v("adDay")).lpad(2,'0'));ddYear=$("ddYear");ddYear.onchange=ArrivalDeparture_Year;ddMon=$("ddMon");ddMon.onchange=ArrivalDeparture_Year;ddDay=$("ddDay");ddDay.onchange=ArrivalDeparture_Year;_DepartureDate=$("_DepartureDate");$v("_DepartureDate",$v("ddYear")+"-"+String($v("ddMon")).lpad(2,'0')+"-"+String($v("ddDay")).lpad(2,'0'));}
function ArrivalDeparture_Day(){ArrivalDateOrDepartureDate_Change()}
function ArrivalDeparture_Mon(){if(this==adMon)CorrectDays(adDay,adMon,adYear);else if(this==ddMon)CorrectDays(ddDay,ddMon,ddYear);}
function ArrivalDeparture_Year(){if(this==adYear)CorrectDays(adDay,adMon,adYear);else if(this==ddYear)CorrectDays(ddDay,ddMon,ddYear);else ArrivalDateOrDepartureDate_Change();}
function ChangeDays(adDay,adMon,adYear){CorrectDays(adDay,adMon,adYear);ArrivalDateOrDepartureDate_Change()}
function CorrectDaysOfMon(adDay,adMon,adYear){lDay=parseInt(adDay.value);lMonth=parseInt(adMon.value);lYear=parseInt(adYear.value);iDaysCount=DayInMonth[adMon.value-1];if(lYear%4==0&&lMonth==2)iDaysCount=29;var j=adDay.options.length;if(iDaysCount<j)for(i=j-1;i>iDaysCount;i--)adDay.options[i]=null;else for(i=j;i<iDaysCount;i++){elOpt=new Option;elOpt.value=i+1;elOpt.text=i+1;adDay.options[i]=elOpt;}
adDay.options.length=iDaysCount;}
function CorrectDays(adDay,adMon,adYear){CorrectDaysOfMon(adDay,adMon,adYear);ArrivalDateOrDepartureDate_Change();}
function ArrivalDateOrDepartureDate_Change(){if(String(typeof(hideHotelRates))=="function")hideHotelRates();var _AD=adYear.options[adYear.selectedIndex].value+"-"+
adMon.options[adMon.selectedIndex].value+"-"+
adDay.options[adDay.selectedIndex].value;var _DD=ddYear.options[ddYear.selectedIndex].value+"-"+
ddMon.options[ddMon.selectedIndex].value+"-"+
ddDay.options[ddDay.selectedIndex].value;var _ADate=new Date(adYear.options[adYear.selectedIndex].value,adMon.options[adMon.selectedIndex].value-1,adDay.options[adDay.selectedIndex].value);var _DDate=new Date(ddYear.options[ddYear.selectedIndex].value,ddMon.options[ddMon.selectedIndex].value-1,ddDay.options[ddDay.selectedIndex].value);if(_ArrivalDate.value!=_AD){if(_DDate<=_ADate)_DDate.setTime(_ADate.getTime()+(1*24*60*60*1000));_ArrivalDate.value=_AD;_DepartureDate.value=String(_DDate.getFullYear())+"-"+String(_DDate.getMonth()+1)+"-"+String(_DDate.getDate());for(i=0;i<ddYear.options.length;i++)
if(ddYear.options[i].value==String(_DDate.getFullYear())){ddYear.selectedIndex=i;break}
ddMon.selectedIndex=_DDate.getMonth();CorrectDaysOfMon(ddDay,ddMon,ddYear);ddDay.selectedIndex=_DDate.getDate()-1;}
else if(_DepartureDate.value!=_DD){if(_DDate<=_ADate)_ADate.setTime(_DDate.getTime()-(1*24*60*60*1000));_DepartureDate.value=_DD;_ArrivalDate.value=String(_ADate.getFullYear())+"-"+String(_ADate.getMonth()+1)+"-"+String(_ADate.getDate());for(i=0;i<adYear.options.length;i++)
if(adYear.options[i].value==String(_ADate.getFullYear())){adYear.selectedIndex=i;break}
adMon.selectedIndex=_ADate.getMonth();CorrectDaysOfMon(adDay,adMon,adYear);adDay.selectedIndex=_ADate.getDate()-1;}}
function CheckADDate(){var curDate=new Date();var _ADate=new Date(adYear.options[adYear.selectedIndex].value,adMon.options[adMon.selectedIndex].value-1,adDay.options[adDay.selectedIndex].value,23,59,59);if(_ADate<curDate){alert($("msgErrorArrivalDate").value);return false;}
_ADate=_ADate.getTime();var _DDate=new Date(ddYear.options[ddYear.selectedIndex].value,ddMon.options[ddMon.selectedIndex].value-1,ddDay.options[ddDay.selectedIndex].value,0,0,0);_DDate=_DDate.getTime();if(_DDate-_ADate>30*24*60*60*1000){alert($("msgErrorCountDays").value);return false;}
return true;}
