    // function to check leap year
function isLeapYear(yr)
{
if (yr % 4 == 0)
   return true;
   return false;
}
// function for calculating maximum day
function max_day(mn, yr)
{
   var mDay;
if((mn == 4) || (mn == 6) || (mn == 9) || (mn == 11))
{
mDay = 30;
}
else if(mn == 2)
{
//calling leap year function
mDay = isLeapYear(yr) ? 29 : 28;
}
else
{
mDay = 31;
}
return mDay;
}


function chk_date (dd,mm,yyyy)
{
  var chk    = true;
  var maxDay = 0;

  maxDay = max_day(mm, yyyy);

  if((dd <= 0) || (dd > maxDay))
  {
    chk = false;
  }
  else if((mm <= 0) || (mm > 12))
    {
      chk = false;
    }
    else if(yyyy <= 0)
    {
      chk = false;
    }

  return chk;
}

function date_validate()
{

   if (document.fsearch.search_mode.value=="3")
   {
     if (document.fsearch.mode[0].checked){
       var fdd = document.fsearch.arrday.value; // day
       var fmm = document.fsearch.arrmon.value; // month
       var fyyyy = document.fsearch.arryear.value; // year
       var tdd = document.fsearch.deday.value; // day
       var tmm = document.fsearch.demon.value; // month
       var tyyyy = document.fsearch.deyear.value; // year
       var s_mode = document.fsearch.search_mode.value; // Searchmode
       var stay = document.fsearch.stay.value;
       var state = true;
     }
     if (document.fsearch.mode[1].checked)
     {
       var fdd = document.fsearch.arrday2.value; // day
       var fmm = document.fsearch.arrmon2.value; // month
       var fyyyy = document.fsearch.arryear2.value; // year
       var tdd = document.fsearch.deday2.value; // day
       var tmm = document.fsearch.demon2.value; // month
       var tyyyy = document.fsearch.deyear2.value; // year
       var s_mode = document.fsearch.search_mode.value; // Searchmode
       var stay = document.fsearch.stay.value;
       var state = true;
     }
   }
   else
   {
     var fdd = document.fsearch.arrday.value; // day
     var fmm = document.fsearch.arrmon.value; // month
     var fyyyy = document.fsearch.arryear.value; // year
     var tdd = document.fsearch.deday.value; // day
     var tmm = document.fsearch.demon.value; // month
     var tyyyy = document.fsearch.deyear.value; // year
     var s_mode = document.fsearch.search_mode.value; // Searchmode
     var stay = document.fsearch.stay.value;
     var state = true;
   }
   if (!chk_date(fdd,fmm,fyyyy))
   {
      alert ("Invalid arrival date.");
      state=false;
   }
   if (!chk_date(tdd,tmm,tyyyy) && (tdd!=0 && tmm!=0 && tyyyy!=0) )
   {
      alert ("Invalid depart date.");
      state=false;
   }
   if ((Number(fyyyy)>Number(tyyyy)) || (Number(fyyyy)==Number(tyyyy) && Number(fmm)>Number(tmm)) || (Number(fyyyy)==Number(tyyyy) && Number(fmm)==Number(tmm) && Number(fdd)>=Number(tdd)))
   {
     alert ("Depart date have to be greater than arrival date!");
     state=false;
   }
  if (s_mode=="1")
  {
   return state;
  }
  else
  {
    if (stay<1)
    {
      alert (document.fsearch.stay.getAttribute("emsg"));
	  document.fsearch.stay.className='error'
	  document.fsearch.stay.focus();	  
      state=false
    }
    return state;
  }
 }

function setdates()
{
 state= date_validate_no_radio();
 if (state)
 {
   document.next.fromdate.value=document.fsearch.arrday.value+"/"+document.fsearch.arrmon.value+"/"+document.fsearch.arryear.value;
   document.next.todate.value=document.fsearch.deday.value+"/"+document.fsearch.demon.value+"/"+document.fsearch.deyear.value;
 }
 else
   return false;
}