callNotice = "change_date()";
addZero = true;
function change_date(){
  
  var date = document.getElementById('hidden_date').value;
  var splitted_date = date.split("/");
  var year = splitted_date[0];

  var selectYear = $('year');
  selectYear.value = "20" + year;
  year_changed(false);

  setTimeout("select_month()", 10);
}

function select_month(){

  var date = document.getElementById('hidden_date').value;
  var splitted_date = date.split("/");
  var month = splitted_date[1];

  var selectMonth = $('month');
  for (var i=0; i<selectMonth.options.length; i++) {
    if (selectMonth.options[i].value == parseInt(month, 10)) {
      selectMonth.options[i].setAttribute('selected',true);
    }
  }
  setTimeout("select_day()", 10);
}

function select_day(){

  var date = document.getElementById('hidden_date').value;
  var splitted_date = date.split("/");
  var day = splitted_date[2];

  month_changed(false);
  var selectDay = $('day');
  for (var i=0; i<selectDay.options.length; i++) {
    if (selectDay.options[i].value == parseInt(day, 10)) {
      selectDay.options[i].setAttribute('selected',true);
    }
  }
  
  setTimeout("ajax_checkin()", 10);
}

Event.observe(window, 'load', init_popup_calendar, false);

// Init popup calendar when loaded
function init_popup_calendar(){

  // Init the checkin date fields
  Event.observe('day', 'change', ajax_checkin, false);
  Event.observe('month', 'change', function () { month_changed(true) }, false);
  Event.observe('year', 'change', function () { year_changed(true) }, false);
  Event.observe('nights', 'change', ajax_checkin, false);
  ajax_checkin();

  Event.observe('showCalendar', 'click', function() {fPopCalendar('hidden_date')}, false);
}

// Ajax - Checkin
function ajax_checkin(){
     var url = ROOT_HTTP + 'ajax_checkout.php';
     var pars = 'day='+escape($F('day'));
     pars = pars+'&month='+escape($F('month'));
     pars = pars+'&year='+escape($F('year'));
     pars = pars+'&nights='+escape($F('nights'));
     var target = 'checkout';
     var myAjax = new Ajax.Updater(target, url, {method: 'get', parameters: pars});
}

function month_changed(ajax_request) {
    var selectMonth = document.getElementById("month").value;
    var selectYear = document.getElementById("year").value;
    var daysInMonth = 32 - new Date(selectYear, selectMonth - 1, 32).getDate();
    var startDay = 1;
    
    var now = new Date();
    if (selectYear == now.getFullYear() && selectMonth == (now.getMonth() + 1)) {
      startDay = now.getDate();
    }
    
    $elements = $('day').childElements();
    $elements.each(function(item) {
      $('day').remove(item);
    });
    
    for (i = startDay; i <= daysInMonth; i++) {
      var option = new Element('option', {value: i});
      option.appendChild(document.createTextNode(i)); 
      $('day').insert(option);
    }
    
    if (ajax_request) ajax_checkin();
}

function year_changed(ajax_request) {
    var selectMonth = document.getElementById("month").value;
    var selectYear = document.getElementById("year").value;
    var startMonth = 0;
    
    var now = new Date();
    if (selectYear == now.getFullYear()) {
      startMonth = now.getMonth();
    }
    
    $elements = $('month').childElements();
    $elements.each(function(item) {
      $('month').remove(item);
    });

    var myMonths=new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");
    for (i = startMonth; i < 12; i++) {
      var option = new Element('option', {value: i+1});
      option.appendChild(document.createTextNode(myMonths[i])); 
      $('month').insert(option);
    }
    
    month_changed(false);
    if (ajax_request) ajax_checkin();
}

function updateSelect(cal) {
    var date = cal.date;
    
    var selectYear = $('year');
    selectYear.value = (date.getFullYear());
    
    year_changed(false);
    
    var selectMonth = $('month');
		for (var i=0; i<selectMonth.options.length; i++) {
		  if (selectMonth.options[i].value == date.getMonth()+1) {
		    selectMonth.options[i].selected = true;
      } else {
        selectMonth.options[i].selected = false;
      }
    }

    var selectDay = $('day');
    for (var i=0; i<selectDay.options.length; i++) {
      if (selectDay.options[i].value == date.getDate()) {
        selectDay.options[i].selected = true;
      } else {
        selectDay.options[i].selected = false;
      }
    }
    
    ajax_checkin();
}

function timeOutOfRange(date, year, month, day, hours, minutes) {
    now = new Date();
    if (date.getTime() <= now.getTime() - 3600) {
      return true;
    }
}