/*** Sets the values which the availability calendar shifts by when scrolled through (seen on selectCategoryHotel.do). ***/



formReference = document.forms.hotels_search;

/*** Sets the correct number of days in the pulldown menu when a month is selected  ***/
function selectMonth(dayField,monthField){        
  var selectedMonth = monthField.options[monthField.selectedIndex].value;
  var selectedDay = dayField.options[dayField.selectedIndex].value;
  var selectedYear;
  var today = new Date();
  var thisYear=today.getFullYear();
  if(thisYear<2000)thisYear+=1900;
  var febDate=new Date(thisYear,(selectedMonth-1),selectedDay);
  if (febDate<today){selectedYear = thisYear+1;}
  else{selectedYear = thisYear;}

  var days = getNumDays(selectedMonth,selectedYear);
  dayField.length=days;        
  
  for(var i=1;i<=days;i++){
      dayField.options[i-1] = null;
      dayField.options[i-1] = new Option(i,i);}

  if (selectedDay <= dayField.options.length){
  	dayField.selectedIndex=selectedDay-1;}
}           

/*** Updates form objects: frmCheckOutDay, frmCheckOutDayDisplay, frmCheckOutMonthDisplay and formReference. */	 
function updateCheckOut(value) {		
  var months_array = new Array("January","February","March","April","May","June","July","August","September","October","November","December");
  
  // save number of nights
  no_nights = parseInt(value);
  
  // check that it is a valid number
  if(isNaN(no_nights)||no_nights<=0) {
    //alert("Please enter a valid number of nights"); 
  }
  else {
    // construct the check in date
    // for this we need to decide if the month selected is before current month, if so
    // user is booking for next year
    d = new Date();
    y = d.getFullYear();
    m1 = d.getMonth();			
    m2 = formReference.frmCheckInMonth.value-1; // month is not 0 based in calendar!!
    if(m2<m1) { y = y+1; }

    // now create the proper check in date
    real_checkin_s = formReference.frmCheckInDay.value+" "+months_array[parseInt(formReference.frmCheckInMonth.value)-1]+" "+y;
    active_checkin_s = formReference.frmCheckInDay.value+" "+months_array[parseInt(formReference.frmCheckInMonth.value)-1]+" "+y;
    active_checkin_d = new Date(active_checkin_s);
    real_checkin_d = new Date(real_checkin_s);
    dayOfCheckInMonth = real_checkin_d.getDate();
    dayOfCheckOutMonth = dayOfCheckInMonth + no_nights;
    real_checkout_d = real_checkin_d;
    real_checkout_d.setDate(dayOfCheckOutMonth);
    activeYear = active_checkin_d.getFullYear(); 
    //alert(activeYear); 
    // get day and month for check out
    check_out_day = real_checkout_d.getDate();
    check_out_month = nnMonthsArray[real_checkout_d.getMonth()];
    // show user
    
    formReference.frmCheckOutDay.value=check_out_day;
    formReference.frmCheckOutMonth.value=(real_checkout_d.getMonth()+1);
    formReference.frmCheckOutYear.value=(real_checkout_d.getFullYear());
    formReference.frmCheckOutDisplay.value=check_out_day+' '+check_out_month;
    formReference.frmCheckInYear.value=(activeYear);
  }
}

/* link the radio buttons for the search categories in IE */
KBRS.forEach(KBRS.getElementsBy({tagName:'input'}),function(item)
{
	if(item.type=='radio' && item.checked==false && item.name=='' && item.parentNode.tagName=='A') 
	{
		KBRS.addEvent({e:item, eT:'click', fn:function(){ window.location = item.parentNode.href}})
	}
})

