
function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

var today=new Date();
var todate=today.getDate();
var tomonth=today.getMonth();
var toyear=today.getFullYear();
var checkOK = "0123456789";

//Leap year (Uma Chatterjee - 2.1.2006)
function leapYearCheck(y) {	
	if ( ( (y%4==0)&&(y%100 != 0) ) || (y%400==0) ) { 
		return true;
	} else {
		return false;
	}
}

//Days of month (Uma Chatterjee - 2.1.2006)
function addDays(datefield, num) {
	
	var numDays=Number(monthDays[num]);
	if(leapYearCheck(toyear) && (num==1)) {		
		numDays=29;
	}
	
	datefield.options.length=0;
	for(i=1; i<=numDays; i++) {
		datefield.options[datefield.options.length]=new Option(i, i);
	}
	
	if(datefield.options[0].value=="")
		datefield.remove(0);
		
}

function isDate1(dt)
{
    var dtCh= "/";
    var daysInMonth = DaysArray(12)
  	var pos1=dt.indexOf(dtCh)
  	var pos2=dt.indexOf(dtCh,pos1+1)
  	var strMonth=dt.substring(0,pos1)
  	var strDay=dt.substring(pos1+1,pos2)
  	var strYear=dt.substring(pos2+1)
  	var strYr=strYear
  	if (strDay.charAt(0)=="0" && strDay.length>1) var strDay=strDay.substring(1)
  	if (strMonth.charAt(0)=="0" && strMonth.length>1) var strMonth=strMonth.substring(1)
  	for (var i = 1; i <= 3; i++) {
  		if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1)
  	}
  	month=parseInt(strMonth)
  	day=parseInt(strDay)
  	year=parseInt(strYr)
  	if (strMonth.length<1 || month<1 || month>12){
  		alert("Please enter a valid month")
  		return false
  	}
  	if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month]){
  		alert("Please enter a valid day")
  		return false
  	}
  	return true    
}

function daysInFebruary (year)
{
	// February has 29 days in any year evenly divisible by four,
    // EXCEPT for centurial years which are not also divisible by 400.
    return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
}
function DaysArray(n) 
{
	for (var i = 1; i <= n; i++) {
		this[i] = 31
		if (i==4 || i==6 || i==9 || i==11) {this[i] = 30}
		if (i==2) {this[i] = 29}
   } 
   return this
}

function DateCheck()
{        
	if(document.reservation.currency[0].checked==false && document.reservation.currency[1].checked==false)
	{
		alert("Please select resident status.")	;
		return false;
	}

  	var iscity=false;
  	var Checkindate=document.reservation.arriveDate.value;
  	var Checkinmonth=document.reservation.arriveMonth.value;
  	Checkinmonth=Number(Checkinmonth);
  	var Checkinyear=document.reservation.arriveYear.value;
  	var Checkoutdate=document.reservation.departDate.value;
  	var Checkoutmonth=document.reservation.departMonth.value;
  	Checkoutmonth=Number(Checkoutmonth);
        var Checkoutyear=document.reservation.departYear.value;
        var presentday=new Date(toyear,tomonth,todate);
        var enddate=new Date(Checkoutyear,Checkoutmonth-1,Checkoutdate);
        var startdate=new Date(Checkinyear,Checkinmonth-1,Checkindate);
        var city=document.reservation.hotelCity;
        var difference = Date.UTC(enddate.getYear(),enddate.getMonth(),enddate.getDate(),0,0,0)- Date.UTC(startdate.getYear(),startdate.getMonth(),startdate.getDate(),0,0,0);
        var diff=difference/1000/60/60/24;
        var dt=Checkinmonth+"/"+Checkindate+"/"+Checkinyear
        for(i=0;i<8;i++)
        {
            if(city[i].checked)
            {
                iscity=true;
            }
        }
  	if(city[8].checked)
  	{
      		if(document.reservation.hotelCityOther.value!="")
      		{
	 		iscity=true;
      		}
  	}
  	if(iscity==false)
    	{
		alert("Please enter City Name");
		document.reservation.hotelCityOther.focus();
		return false;
 	 }
  

  	else if(isDate1(dt)==false)
  	{
       		return false;
  	}
  	else if(startdate<presentday)
  	{
     		alert(" CheckIn Date Should Be Higher Than Today's Date");
     		return false;
  	}
  	else if(enddate < startdate)
  	{
    		alert(" End Date Should Be Higher Than  Start Date");
    		return false;
  	}
  
  	else if(diff>30)
  	{
      		alert("Sorry You Cannot Do  Booking For More Than 30 Days");
      		return false;
  	}
   
  	else
  	{
     		return true;
  	} 
}

function Checkhotel(i)
{
	if(document.reservation.currency[0].checked==false && document.reservation.currency[1].checked==false)
	{
		alert("Please select resident status.")	;
		return false;
	}
    var Checkindate=document.forms[i].arriveDate.value;
    var Checkinmonth=document.forms[i].arriveMonth.value;
    Checkinmonth=Number(Checkinmonth);
    var Checkinyear=document.forms[i].arriveYear.value;
    var Checkoutdate=document.forms[i].departDate.value;
    var Checkoutmonth=document.forms[i].departMonth.value;
    Checkoutmonth=Number(Checkoutmonth);
    var Checkoutyear=document.forms[i].departYear.value;

    var presentday=new Date(toyear,tomonth,todate);
    var enddate=new Date(Checkoutyear,Checkoutmonth-1,Checkoutdate);
    var startdate=new Date(Checkinyear,Checkinmonth-1,Checkindate);
   
   
    var difference = Date.UTC(enddate.getYear(),enddate.getMonth(),enddate.getDate(),0,0,0)- Date.UTC(startdate.getYear(),startdate.getMonth(),startdate.getDate(),0,0,0);
    var diff=difference/1000/60/60/24;
    var dt=Checkinmonth+"/"+Checkindate+"/"+Checkinyear
    if(isDate1(dt)==false)
    {
           return false;
    }
    
    else if(startdate<presentday)
    {
       alert(" Check-In-Date Should Be Higher Than Current Date");
       return false;
    }
    else if(enddate < startdate)
    {
        alert(" Check-Out-Date Should Be Higher Than  Check-In-Date");
        return false;
    }
    
        else if(diff>30)
        {
              alert("Sorry You Cannot Do  Booking For More Than 30 Days");
              return false;
    }
    else
    {
         return true;
    } 
}

function othercity()
{
   document.reservation.hotelCity[8].checked=true;
}

function text()
{
   document.reservation.hotelCityOther.focus();
}

//Leap year, month days (Uma Chatterjee - 2.1.2006)
monthDays=new Array("31", "28", "31", "30", "31",  "30", "31", "31", "30", "31", "30", "31");

//Leap year, month days (Uma Chatterjee - 2.1.2006)
function setdepartDateNew()
{
		var d=Number(document.reservation.arriveDate.value);
		var m=Number(document.reservation.arriveMonth.value);
		var y=Number(document.reservation.arriveYear.value);
		var checkoutDay=d+1;
		var nextMonth=m;
		var checkoutYear=y;
		
		if(leapYearCheck(y)) {		
			monthDays[1]="29";
		} else {
			monthDays[1]="28";
		}
		
		if(leapYearCheck(y) && m==2) {
			addDays(document.reservation.arriveDate, m-1);
			addDays(document.reservation.departDate, m-1);
		}		
		
		
		if(document.reservation.arriveMonth.options.length!=monthDays[m-1]) {
			addDays(document.reservation.arriveDate, m-1);
			addDays(document.reservation.departDate, m-1);
		}
		
		if(checkoutDay > monthDays[m-1]) {
			nextMonth=m+1;
			if(nextMonth>12) {
				nextMonth=1;			
				checkoutYear+=1;
			}
			addDays(document.reservation.departDate, nextMonth-1);
			checkoutDay=checkoutDay-monthDays[m-1];
		}
		
		if(d>monthDays[m-1]) {
			d=monthDays[m-1];
			checkoutDay=1;
		}
		
		document.reservation.arriveYear.value=y;
		document.reservation.arriveMonth.value=m;
		document.reservation.arriveDate.value=d;
		
		document.reservation.departYear.value=checkoutYear;
		document.reservation.departMonth.value=nextMonth;
		document.reservation.departDate.value=checkoutDay;
		
}

//Leap year, month days (Uma Chatterjee - 2.1.2006)
function setDates() {
	if(leapYearCheck(document.reservation.departYear.value)) {		
		monthDays[1]="29";
	} else {
		monthDays[1]="28";
	}	
	var checkoutdate=document.reservation.departDate.value;
	addDays(document.reservation.departDate, document.reservation.departMonth.selectedIndex);
	if(checkoutdate>document.reservation.departDate.options.length) {
		document.reservation.departDate.value=document.reservation.departDate.options.length;
	} else {
		document.reservation.departDate.value=checkoutdate;
	}
}
