var today=new Date();
var todate=today.getDate();
var tomonth=today.getMonth();
var toyear=today.getFullYear();

function leapYearCheck(y) {	
	if ( ( (y%4==0)&&(y%100 != 0) ) || (y%400==0) ) { 
		return true;
	} else {
		return false;
	}
}

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);
}
monthDays=new Array("31", "28", "31", "30", "31",  "30", "31", "31", "30", "31", "30", "31");

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 setCheckOutDateNew(formname,checkindateField,checkinmonthField,checkinyearField,checkoutdateField,checkoutmonthField,checkoutyearField)
{
	if(isNaN(formname)==false){
		formname=document.forms[formname];
	}else	if(formname.indexOf('@')!=-1){
		formname=document.forms[0];
	}else{
		formname=document.forms[formname];
	}
	var d=Number(formname[checkindateField].value);
	var m=Number(formname[checkinmonthField].value);

	if(formname[checkinyearField]){var y=Number(formname[checkinyearField].value);}

	var checkoutDay=d-1;
	var nextMonth=m+1;
	var checkoutYear=y;

	if(leapYearCheck(y)){monthDays[1]="29";}else{monthDays[1]="28";}
	if(leapYearCheck(y)&&m==2){addDays(formname[checkindateField],m-1);addDays(formname[checkoutdateField],m-1);}
	if(formname[checkinmonthField].options.length!=monthDays[m-1]){addDays(formname[checkindateField],m-1);addDays(formname[checkoutdateField],m-1);}
	if(checkoutDay>monthDays[m-1]){nextMonth=m+1;if(nextMonth>12){nextMonth=1;checkoutYear+=1;}
	addDays(formname[checkoutdateField],nextMonth-1);checkoutDay=checkoutDay-monthDays[m-1];}
	if(d>monthDays[m-1]){d=monthDays[m-1];checkoutDay=1;}

	if(d==1){d=1;checkoutDay=monthDays[m-1];nextMonth=m;checkoutYear=y;}
	if(m==12)
	{
		if(d!=1){
			checkoutDay=d-1;nextMonth=1;checkoutYear=y+1;}
		else{
			d=1;checkoutDay=monthDays[m-1];nextMonth=m;checkoutYear=y;}
	}			

	if(formname[checkinyearField]){formname[checkinyearField].value=y;}
	formname[checkinmonthField].value=m;formname[checkindateField].value=d;if(formname[checkoutyearField]){formname[checkoutyearField].value=checkoutYear;}
	formname[checkoutmonthField].value=nextMonth;formname[checkoutdateField].value=checkoutDay;
}

function setDates(formname,checkoutdateField,checkoutmonthField,checkoutyearField)
{
	formname=document.forms[formname];
	if(formname[checkoutyearField]&&leapYearCheck(formname[checkoutyearField].value))
	{
		monthDays[1]="29";
	}
	else
	{
		monthDays[1]="28";
	}
	var checkoutdate=formname[checkoutdateField].value;
	addDays(formname[checkoutdateField],formname[checkoutmonthField].selectedIndex);
	if(checkoutdate>formname[checkoutdateField].options.length)
	{
		formname[checkoutdateField].value=formname[checkoutdateField].options.length;
	}
	else
	{
		formname[checkoutdateField].value=checkoutdate;
	}
}

function GetMonthName(intMonth)
{
  var MonthArray = new Array("Jan", "Feb", "Mar",
                             "Apr", "May", "Jun",
                             "Jul", "Aug", "Sep",
                             "Oct", "Nov", "Dec"); 
  return MonthArray[intMonth]; 	  	 
}

function getDateStr()
{
  var today = new Date();
  var year = today.getYear();
  if(year<1000)
  {
    year+=1900;
  }
  var todayStr = today.getDate() + "-" + GetMonthName(today.getMonth());
  todayStr += "-" + year;
  return todayStr;
}

function getMonthInNumber(mm)
{
  var strMonthArray = new Array(12);
  strMonthArray[0] = "Jan";
  strMonthArray[1] = "Feb";
  strMonthArray[2] = "Mar";
  strMonthArray[3] = "Apr";
  strMonthArray[4] = "May";
  strMonthArray[5] = "Jun";
  strMonthArray[6] = "Jul";
  strMonthArray[7] = "Aug";
  strMonthArray[8] = "Sep";
  strMonthArray[9] = "Oct";
  strMonthArray[10] = "Nov";
  strMonthArray[11] = "Dec";

  for(i=0; i< 12; i++)
  {
    if(strMonthArray[i]==mm)
    return i;
  }
}

function totalDaysInMonth(m, y) 
{
  if(m==2)
  {
	  if(((y%4==0)&&(y%100 != 0)) || (y%400==0)){ 
		  d = 29;
	  } 
    else{
		  d = 28;
	  }
  }
  else
  {
		d = 31;
		if(m==4 || m==6 || m==9 || m==11){
			d = 30;
		}
  } 
  return d;
}

function JStotalDaysInMonth(m, y) 
{
  if(m==1)
  {
	  if(((y%4==0)&&(y%100 != 0)) || (y%400==0)){ 
		  d = 29;
	  } 
    else{
		  d = 28;
	  }
  }
  else
  {
		d = 31;
		if(m==3 || m==5 || m==8 || m==10){
			d = 30;
		}
  } 
  return d;
}