﻿function ValidateControlHotels()
    {
       if (!CheckDatesHotels())
          return false;
       if (document.getElementById("inputDestination").value=="") {
        alert('נא לבחור יעד');
        return false;
       }
          
       if (document.getElementById("hdnDest")!=null)
       {
       document.getElementById("hdnDest").value = document.getElementById("inputDestination").value;
       }
       if (document.getElementById("hdnFrom")!=null)
       {
       document.getElementById("hdnFrom").value = document.getElementById("fdtH1").value;
       }
       if (document.getElementById("hdnTo")!=null)
       {
       document.getElementById("hdnTo").value = document.getElementById("fdtH2").value;
       }
       return true;   
    }
     function OpenCalendar(obj,dmin){
            //event.cancelBubble=true;
            SC(document.getElementById(obj),dmin);
      }
      
                  
    var maxRooms = 5 ;

function RenderRooms()
{
  var kidsInRoomValue;
  for ( var i=2 ; i<=maxRooms ; i++ )
  {
      document.getElementById("room"+i).style.display="none";     
  }

  var howManyRoomsToDisplay = document.getElementById("ddlNumOfRooms").value ;                    
  for( var j=1 ; j<=howManyRoomsToDisplay ; j++)
  {
      document.getElementById("room"+j).style.display="block";
      if (document.getElementById("ddlChild" + j))
      {
        kidsInRoomValue = window.document.getElementById("ddlChild" + j).value;
        RenderChildrenSection( j, kidsInRoomValue);
      }
  }
}
function readCookie(name) {
	    var nameEQ = name + "=";
	    var ca = document.cookie.split(';');
	    for(var i=0;i < ca.length;i++) {
		    var c = ca[i];
		    while (c.charAt(0)==' ') c = c.substring(1,c.length);
		    if (c.indexOf(nameEQ) == 0) return unescape(c.substring(nameEQ.length,c.length));
	    }
	    return null;
    }
     function eraseCookie(name) {
    createCookie(name,"",-1);
}
function RenderChildrenSection(tableIndex , sumOfKids)
{
      switch(Number(sumOfKids))
      {
            case 0 :
                  window.document.getElementById("lblFirstChild" +tableIndex).innerHTML = "&nbsp;";
                  window.document.getElementById("ddlFirstAge" +tableIndex).style.display="none";
                  window.document.getElementById("lblSecondChild" +tableIndex).innerHTML = "&nbsp;";
                  window.document.getElementById("ddlSecondAge" +tableIndex).style.display="none";
                break;
            
          case 1 :
               window.document.getElementById("lblFirstChild" +tableIndex).innerHTML = "גיל ילד 1";
                   window.document.getElementById("ddlFirstAge" +tableIndex).style.display="block";
                 window.document.getElementById("lblSecondChild" +tableIndex).innerHTML = "&nbsp;";
                   window.document.getElementById("ddlSecondAge" +tableIndex).style.display="none";
                 break; 
          
          case 2 :
               window.document.getElementById("lblFirstChild"+tableIndex).innerHTML = "גיל ילד 1";
                   window.document.getElementById("ddlFirstAge"+tableIndex).style.display="block";
                   window.document.getElementById("lblSecondChild"+tableIndex).innerHTML = "גיל ילד 2";
                   window.document.getElementById("ddlSecondAge"+tableIndex).style.display="block";
                   break;
      
       }
}

function RenderChildren(tableIndex)
{
    if (document.getElementById("ddlChild" + tableIndex))
    {
      var sumOfKids = window.document.getElementById("ddlChild" + tableIndex).value ; 
      RenderChildrenSection(tableIndex, sumOfKids);
    }
}

function openHotelDestinationDialog()
{
            var ret = new Array();
            var url = DestinationUrl;
            var DName = "divHotelDest";
            var ifrmName = "ifrmHotelDest";
        try
            {
              if (ge(DName).style.display == "none"){
            with (ge(ifrmName)){
                if(BrowserCode() == "IE"){
                 ge(ifrmName).onreadystatechange = function(){if(ge(ifrmName).readyState == "complete")ge(DName).style.display = "";}
                }
                else{
                 ge(DName).style.display = "block";
                }
                src = url + "?code=''";
               height = 345;
                width = 270;
            }
           }
            }
            catch(e)
            {}
            finally
            { }
}
      
      



function CheckDatesHotels()
{
   var _fromdateStr = document.getElementById("fdtH1").value;
   var _todateStr =document.getElementById("fdtH2").value;
   if (_fromdateStr == "" || _todateStr == "")
   {
        alert("נא לבחור תאריכי כניסה ויציאה");
        return false;
   }
   var _fromDate  = parseDate2(_fromdateStr);      
   var _toDate  = parseDate2(_todateStr);
   
   if (_toDate <= _fromDate)
   {
        alert("תאריך היציאה חייב להיות לאחר תאריך הכניסה");
        return false;
   } 
   return true;
}

function parseDate2(date)
  {
     var d = new String(date);
     var slash = d.indexOf("/");
     var day = d.substr(0, slash);
     //alert(day);
     d = d.substr(slash+1, d.length-slash-1);
     slash = d.indexOf("/");
     var month = d.substr(0, slash);
     month = parseInt(month, 10) - 1;
     //alert(month);
     d = d.substr(slash+1, d.length-slash-1);
     var year = d;     
     //alert(year);
     var dateObj = new Date();
     dateObj.setFullYear(year, month, day);
    // alert(dateObj);
     return dateObj;
  }
  
  
  /*  client functions (hotel_se) */
  
   var COOKIE_DESTINATION = "HotelDestination";
   var COOKIE_DESTINATIONNAME = "HotelDestinationName";
   var COOKIE_FROMDATE = "HotelFromDate";
   var COOKIE_TODATE = "HotelToDate"

   var COOKIE_ROOMS_COUNT = "HotelRoomsCount"
   var COOKIE_ADULT_COUNT = "HotelAdultCount"
   var COOKIE_CHILD_COUNT = "HotelChildCount"
   var COOKIE_FIRSTCHILD_AGE = "HotelFirstChildAge"
   var COOKIE_SECONDCHILD_AGE = "HotelSecondChildAge"
   var COOKIE_STARS = "HotelStars"
   var COOKIE_MAXPRICE = "HotelMaxPrice"
   
   var COOKIE_HOTEL_EXPIRE_DAYS    = "1"
  
  function LoadHControl()
  {
    setHotelDropDowns();
    LoadHotelValuesFromCookie();
  }
  
  function setHotelDropDowns()
  {
    setRoom(1);
    if (document.getElementById("ddlNumOfRooms")!=null) {
        setRoom(2);
        setRoom(3);
        setRoom(4);
        setRoom(5);
    }
  }
  
  function setRoom(_roomId) {
    ClearSelectControl("ddlAdults" + _roomId);
     Setddl(1, 4, "ddlAdults" + _roomId);
    document.getElementById("ddlAdults" + _roomId).selectedIndex=0;
    
    if (document.getElementById("ddlChild"+ _roomId))
    {
        ClearSelectControl("ddlChild" + _roomId);
        ClearSelectControl("ddlFirstAge" + _roomId);
        ClearSelectControl("ddlSecondAge" + _roomId);
        Setddl(0, 2, "ddlChild" + _roomId);
         InsertOptionsToSelectControl("ddlFirstAge" + _roomId, "", "0","0-1" );
        InsertOptionsToSelectControl("ddlSecondAge" + _roomId, "",  "0","0-1");
        Setddl(1, 12, "ddlFirstAge" + _roomId);
        Setddl(1, 12, "ddlSecondAge" + _roomId);
         document.getElementById("ddlChild" + _roomId).selectedIndex=0;
        document.getElementById("ddlFirstAge" + _roomId).value="12";
        document.getElementById("ddlSecondAge" + _roomId).value="12";
    }
   
   
  }
  
  function Setddl(_fromNumber, _toNumber, _name)
  {
        for (i=_fromNumber;i<=_toNumber;i++ )
        {
            InsertOptionsToSelectControl(_name, "", i, i);
        } 
    }

    function LoadHotelValuesFromCookie()
    {
//         if (readCookie(COOKIE_DESTINATION) == null)
//            document.getElementById("inputDestination").value="NYC";
//        else
//            document.getElementById("inputDestination").value = readCookie(COOKIE_DESTINATION);
            
//        if (readCookie(COOKIE_DESTINATIONNAME) == null)
//            document.getElementById("txtDestination").value="ניו יורק";
//        else
//            document.getElementById("txtDestination").value = readCookie(COOKIE_DESTINATIONNAME);
            
         if (readCookie(COOKIE_FROMDATE) == null)
            document.getElementById("fdtH1").value="";
        else
            document.getElementById("fdtH1").value = readCookie(COOKIE_FROMDATE);
            
        if (readCookie(COOKIE_TODATE) == null)
            document.getElementById("fdtH2").value="";
        else
            document.getElementById("fdtH2").value = readCookie(COOKIE_TODATE);
            
        if (document.getElementById("ddlStarRating")!=null && readCookie(COOKIE_STARS) != null) {
            document.getElementById("ddlStarRating").value = readCookie(COOKIE_STARS);
        }
        if (document.getElementById("ddlPriceLimit")!=null && readCookie(COOKIE_MAXPRICE) != null) {
            document.getElementById("ddlPriceLimit").value = readCookie(COOKIE_MAXPRICE);
        }

       if (document.getElementById("ddlNumOfRooms")!=null && readCookie(COOKIE_ROOMS_COUNT) != null) {
            document.getElementById("ddlNumOfRooms").value = readCookie(COOKIE_ROOMS_COUNT);
            GetHotelRoomsCookies(parseInt(document.getElementById("ddlNumOfRooms").value,10));
        } else{
            GetHotelRoomsCookies(1);
        }
    }
    
    function GetHotelRoomsCookies(_roomNum) {
        for ( var i=1 ; i<=_roomNum; i++ )
        {
            if (readCookie(COOKIE_ADULT_COUNT + i) == null)
                document.getElementById("ddlAdults" + i).options[0].selected = true;
            else
                document.getElementById("ddlAdults" + i).value = readCookie(COOKIE_ADULT_COUNT + i);
                if (document.getElementById("ddlChild" + i))
                {
            if (readCookie(COOKIE_CHILD_COUNT + i) == null)
                document.getElementById("ddlChild" + i).options[0].selected = true;
            else
                document.getElementById("ddlChild" + i).value = readCookie(COOKIE_CHILD_COUNT + i);                        
                
            if (readCookie(COOKIE_FIRSTCHILD_AGE + i) != null)
                document.getElementById("ddlFirstAge" + i).value = readCookie(COOKIE_FIRSTCHILD_AGE + i);                
            if (readCookie(COOKIE_SECONDCHILD_AGE + i) != null)
                document.getElementById("ddlSecondAge" + i).value = readCookie(COOKIE_SECONDCHILD_AGE + i);
                }
        }
    }
    function createCookie(name,value,days) {
    if (days) {
	    var date = new Date();
	    date.setTime(date.getTime()+(days*24*60*60*1000));
	    var expires = "; expires="+date.toGMTString();
    }
    else var expires = "";
    document.cookie = name+"="+escape(value)+expires+"; path=/";
}
    function SetHotelCookies()
    {
        eraseCookie(COOKIE_DESTINATION);
        if (document.getElementById("inputDestination")!=null) {
            createCookie(COOKIE_DESTINATION, document.getElementById("inputDestination").value, COOKIE_HOTEL_EXPIRE_DAYS);
        }
        
        eraseCookie(COOKIE_DESTINATIONNAME);
        if (document.getElementById("txtDestination")!=null) {
            createCookie(COOKIE_DESTINATIONNAME, document.getElementById("txtDestination").value, COOKIE_HOTEL_EXPIRE_DAYS);
        }
        
        eraseCookie(COOKIE_FROMDATE);
        createCookie(COOKIE_FROMDATE, document.getElementById("fdtH1").value, COOKIE_HOTEL_EXPIRE_DAYS);
         
        eraseCookie(COOKIE_TODATE);
        createCookie(COOKIE_TODATE, document.getElementById("fdtH2").value, COOKIE_HOTEL_EXPIRE_DAYS);
        
        eraseCookie(COOKIE_STARS);
        if (document.getElementById("ddlStarRating")!=null) {
            createCookie(COOKIE_STARS, document.getElementById("ddlStarRating").value, COOKIE_HOTEL_EXPIRE_DAYS);
        }
        eraseCookie(COOKIE_MAXPRICE);
        if (document.getElementById("ddlPriceLimit")!=null) {
            createCookie(COOKIE_MAXPRICE, document.getElementById("ddlPriceLimit").value, COOKIE_HOTEL_EXPIRE_DAYS);
        }
        
        eraseCookie(COOKIE_ROOMS_COUNT);
        if (document.getElementById("ddlNumOfRooms")!=null) {
            createCookie(COOKIE_ROOMS_COUNT, document.getElementById("ddlNumOfRooms").value, COOKIE_HOTEL_EXPIRE_DAYS);
            SetRoomsCookies(parseInt(document.getElementById("ddlNumOfRooms").value, 10));
        } else{
            SetRoomsCookies(1);
        }
    }
    
    function SetRoomsCookies(_roomsNum) {
        for ( var i=1 ; i<=_roomsNum; i++ )
        {
            eraseCookie(COOKIE_ADULT_COUNT + i);
            createCookie(COOKIE_ADULT_COUNT + i, document.getElementById("ddlAdults" + i).value, COOKIE_HOTEL_EXPIRE_DAYS);
            eraseCookie(COOKIE_CHILD_COUNT + i);
            if (document.getElementById("ddlChild" + i))
            {
            createCookie(COOKIE_CHILD_COUNT + i, document.getElementById("ddlChild" + i).value, COOKIE_HOTEL_EXPIRE_DAYS);
            eraseCookie(COOKIE_FIRSTCHILD_AGE + i);
            if (parseInt(document.getElementById("ddlChild" + i).value,10) > 0) {
               createCookie(COOKIE_FIRSTCHILD_AGE + i, document.getElementById("ddlFirstAge" + i).value, COOKIE_HOTEL_EXPIRE_DAYS);
            }
            eraseCookie(COOKIE_SECONDCHILD_AGE + i);
            if (parseInt(document.getElementById("ddlSecondAge" + i).value,10) > 1) {
               createCookie(COOKIE_SECONDCHILD_AGE + i, document.getElementById("ddlSecondAge" + i).value, COOKIE_HOTEL_EXPIRE_DAYS);
            }
            }
        }
    }
    
     function GoToHotelResults(_BaseUrl){

        var _isValid = ValidateControlHotels();
        if (_isValid){
            SetHotelCookies();
            var _redirectUrl = _BaseUrl + "resources/services/loading_search.aspx?page=../../hotels/results.aspx&sp=home_page&msg=1";
            _redirectUrl = _redirectUrl +  "&dport=" + document.getElementById("inputDestination").value + "&idate=" + document.getElementById("fdtH1").value + "&odate=" + document.getElementById("fdtH2").value +GetRooms();
            if (document.getElementById("ddlStarRating")!=null) {
              if (document.getElementById("ddlStarRating").value!="0")
                _redirectUrl = _redirectUrl +  "&hrating=" + document.getElementById("ddlStarRating").value;
            }
            if (document.getElementById("ddlPriceLimit")!=null) {
              if (document.getElementById("ddlPriceLimit").value!="0")
                _redirectUrl = _redirectUrl +  "&mprice=" + document.getElementById("ddlPriceLimit").value;
            }
            window.location.href = _redirectUrl;
        }    
    }

    function GetRooms() {
        var _redirectUrl;
        if (document.getElementById("ddlNumOfRooms")!=null) {
            _redirectUrl = '&rms=' + document.getElementById("ddlNumOfRooms").value
            for ( var i=1 ; i<=parseInt(document.getElementById("ddlNumOfRooms").value,10); i++ )
            {
                _redirectUrl = _redirectUrl + GetRoom(i);
            }
        
        } else {
            _redirectUrl = '&rms=1' + GetRoom(1);
        }
        return _redirectUrl;
    }
    
    function GetRoom(_roomId) {
        var _redirectUrl = "&adt" + _roomId + "=" + document.getElementById("ddlAdults" + _roomId).value;
        if (document.getElementById("ddlChild" + _roomId))
        {
            if (document.getElementById("ddlChild" + _roomId).value!="0")
            {
                 _redirectUrl = _redirectUrl + "&chd" + _roomId + "=" + document.getElementById("ddlChild" + _roomId).value + "&cha" + _roomId + "=" + document.getElementById("ddlFirstAge" + _roomId).value;
                 if (document.getElementById("ddlChild" + _roomId).value=="2")
                 {
                  _redirectUrl = _redirectUrl + "&chb" + _roomId + "=" + document.getElementById("ddlSecondAge" + _roomId).value;
                 }
            }
        }
        return _redirectUrl;
    }