if( document.getElementById('non') )
{
  document.getElementById('non').value = '';
}

addBehaviour = function(  )
{
  var promocode = document.getElementById('promocode');
  promocode.onfocus = function(  )
  {
    this.select();
  }
}

function validate( form )
{
  changeStayLength();
  var promoCode = document.forms[0].rateCode;

  if( promoCode.value.toLowerCase() == 'gnivip' )
  {
    promoCode.value = 'PR1';
  }

  /* Property-specific forms do not have a propertyCode select. */
  if( typeof(form.propertyCode.options) != 'undefined' )
  {
    if( form.propertyCode.options.selectedIndex == 0 || form.propertyCode.options.selectedIndex == 1 )
    {
      alert("Please select a property");
      return false;
    }
  }

  return true;
}


function getLookFeelCode(  )
{
  var propertySelect = document.getElementById('propertySelect');
  var hotelIndex = propertySelect.options.selectedIndex-2;
  if( hotelIndex < 0 )
  {
     hotelIndex==0;
  }

  var lookFeelTab = new Array();

  lookFeelTab[0]=1696; //8835 Buena Park Good Nite Inn
  lookFeelTab[1]=1697; //625 - Calabasas Good Nite Inn
  lookFeelTab[2]=1718; //626 - Camarillo Good Nite Inn
  lookFeelTab[3]=1699; //2052 - Fremont Good Nite Inn
  lookFeelTab[4]=1700; //629 - Redlands Good Nite Inn
  lookFeelTab[5]=1701; //624 - Redwood City Good Nite Inn
  lookFeelTab[6]=1702; //630 - Rohnert Park Good Nite Inn
  lookFeelTab[7]=1703; //4010 - Sacramento Good Nite Inn
  lookFeelTab[8]=1704; //633 - Salinas Good Nite Inn
  lookFeelTab[9]=1705; //623 - San Diego - Seaworld Good Nite Inn
  lookFeelTab[10]=1698; //627 - Chula Vista Good Nite Inn
  lookFeelTab[11]=1719; //634 - Sylmar Good Nite Inn

  if
  (
    document.getElementById('propertySelect').value == '2052' ||
    document.getElementById('propertySelect').value == '8835' ||
    document.getElementById('propertySelect').value == '625'  ||
    document.getElementById('propertySelect').value == '634'  ||
    document.getElementById('propertySelect').value == '626'  ||
    document.getElementById('propertySelect').value == '629'  ||
    document.getElementById('propertySelect').value == '624'  ||
    document.getElementById('propertySelect').value == '630'  ||
    document.getElementById('propertySelect').value == '633'  ||
    document.getElementById('propertySelect').value == '623'  ||
    document.getElementById('propertySelect').value == '4010' ||
    document.getElementById('propertySelect').value == '627'
  )
  {
    document.getElementById('bestAvRate').value = 'PRO,Standard';
  }
  else
  {
    document.getElementById('bestAvRate').value = 'RAC,Standard';
  }

  var lFCode=lookFeelTab[hotelIndex];
  var lookAndFeelId=document.getElementById('lookAndFeelId');
  lookAndFeelId.value=lFCode;
}

function showWeather(  )
{
  var wx_config='SZ=180x150*WX=FHW*LNK=SSNL*UNT=F*BGC=ffffff*MAP=CSC|null*DN=www.goodnite.com*TIER=0*PID=1036895893*MD5=75690f36a7a363df5187fb8d92b37aee';

  document.write('<scr'+'ipt src="'+document.location.protocol+'//wow.weather.com/weather/wow/module/'+wx_locID+'?config='+wx_config+'&amp;proto='+document.location.protocol+'&amp;target='+wx_targetDiv+'"></scr'+'ipt>');
}

function disableDays(  )
{
  var getNowDayObj = document.getElementById('checkInDateDay');
  var getNowDay = document.getElementById('checkInDateDay').value;

  var getNowMonth = document.getElementById('checkInDate').value - 1;
  var nowYearObj = document.getElementById('arriveYear');
  var getNowYear = nowYearObj.options[nowYearObj.selectedIndex].text;

  var checkvar = 0;
  for( i = 26; i < getNowDayObj.options.length; i++ )
  {
    var myDate = new Date(getNowYear, getNowMonth, getNowDayObj.options[i].text);
    if( myDate.getDate() >= 1 && myDate.getMonth() != getNowMonth )
    {
      if( getNowDay > i && checkvar == 0 )
      {
        getNowDayObj.options[i-1].selected = true;
      }

      getNowDayObj.options[i].disabled = true;
      checkvar++;
    }
    else
    {
      getNowDayObj.options[i].disabled = false;
    }
  }
}

function setTomorrowDate(  )
{
  //now date
  var getNowDay = document.getElementById('checkInDateDay').value;
  var getNowMonth = document.getElementById('checkInDate').value - 1;
  var nowYearObj = document.getElementById('arriveYear');
  var getNowYear = nowYearObj.options[nowYearObj.selectedIndex].text;

  //setting tomorrow date
  var myDate = new Date(getNowYear, getNowMonth, getNowDay);
  myDate.setDate(myDate.getDate() + 1);

  //getting tomorrow date
  var tommorowDay = myDate.getDate();
  var tommorowMonth = myDate.getMonth();
  var tommorowYear = myDate.getFullYear();

  //setting tomorrow date month in form
  document.getElementById('checkOutDate').options[tommorowMonth].selected = true;

  //setting tomorrow date day in form
  document.getElementById('checkOutDateDay').options[tommorowDay - 1].selected = true;

  //setting tomorrow date year
  var departYear=document.getElementById('departYear');
  var ifFound = false;
  for( i = 0; i < departYear.options.length; i++ )
  {
    if( departYear.options[i].text == tommorowYear )
    {
      departYear.options[i].selected = true;
      ifFound = true;

      return;
    }
  }

  if( ! ifFound )
  {
    departYear.options[departYear.options.length - 1].selected = true;
  }
}

function changeStayLength(  )
{
  // Create JS Date's
  var _stayDate = new Date(document.getElementById('arriveYear').value,
        (document.getElementById('checkInDate').value - 1),
        document.getElementById('checkInDateDay').value);
  var _leaveDate = new Date(document.getElementById('departYear').value,
        (document.getElementById('checkOutDate').value - 1),
         document.getElementById('checkOutDateDay').value);

  // milliseconds in a day
  var aDay = 1000*60*60*24;

  // Get number of days between dates
  var diffDays = Math.round((_leaveDate.getTime() - _stayDate.getTime()) / aDay);

  if( document.getElementById('non') )
  {
    document.getElementById('non').value = diffDays;
  }
}

function initLoad(  )
{
   var oldOnload = window.onload;
   window.onload = function(  )
   {
      if( oldOnload )
      {
        try
        {
          oldOnload();
        }
        catch( e )
        {
        }
      }

      addBehaviour();
      disableDays();
   }
}
initLoad();