var flightResultsApp,flightsSearchBox;$(document).ready(function(){flightResultsApp.Init();onErrorImage("150x120");$("[data-toggle=tooltip]").tooltip({html:!0})});flightResultsApp={Init:function(){$("#stopsFilter input[type='checkbox'], #airlinesFilter input[type='checkbox'], #airportsFilter input[type='checkbox'], #sourceFilter input[type='checkbox']").click(function(){showLoadingFilter();$("#stopsStr").val(getValuesArr(".stops"));$("#airportsStr").val(getValuesArr(".airports"));$("#airlinesStr").val(getValuesArr(".airlines"));$("#airlinesStr").val(getValuesArr(".airlines"));$("#flightSourceStr").val(getValuesArr(".source"));setTimeout(function(){$("#FlightFilterForm").submit()},50)});flightResultsApp.InitializeSliders();$(".sorter a, .pagination a, #clearFilter").click(function(){showLoadingFilter()});$(document).on("shown.bs.modal","#ruleDisplayModal",function(n){var i=$(n.relatedTarget),t=$(n.target).find(".modal-body"),u=$.templates("#ruleDisplayLoadingTmpl"),r;u.link(".modal-body:visible",null);r={TokenFlights:$("#tokenFlights").val(),Id:i.data("id"),SaleFlightId:i.data("saleid"),FullRuleDisplay:!1};$.post("/Flights/RuleDisplay",r,function(n){if($.isEmptyObject(n))t.html("<div class='text-center mt20'><i class='fa fa-frown-o'><\/i> "+Resources.CannotLoadRuleDisplay+"<\/div>");else{t.find(".loading").remove();var i=$.templates("#ruleDisplayTmpl");i.link(".modal-body:visible",{data:n});t.find(".rule-display-body").height(screen.height*.6+"px")}}).done(function(){}).fail(function(){t.html("<div class='text-center mt20'><i class='fa fa-frown-o'><\/i> "+Resources.CannotLoadRuleDisplay+"<\/div>")}).always(function(){})})},InitializeSliders:function(){InitPriceSlider(".flight-price-slider","#flightPriceStr","#FlightFilterForm");InitDurationSlider(".flight-duration-slider","#durationStr","#FlightFilterForm");InitDurationSlider(".flight-stops-duration-slider","#stopsDurationStr","#FlightFilterForm");InitDateTimeSlider(".flight-departure-slider","#departureStr","#FlightFilterForm");InitDateTimeSlider(".flight-arrival-slider","#arrivalStr","#FlightFilterForm")}};$(document).ready(function(){$("#FlightSearchForm").length>0&&flightsSearchBox.Init()});flightsSearchBox={Init:function(){this.InitAutocomplete("#DepartureDesc");this.InitAutocomplete("#DepartureDesc2");this.InitAutocomplete("#DepartureDesc3");this.InitAutocomplete("#ArrivalDesc");this.InitAutocomplete("#ArrivalDesc2");this.InitAutocomplete("#ArrivalDesc3");this.InitDatePickers();this.InitSwitchDestinations();this.InitPersons();this.InitSearchType();this.InitMultiDest();$("#FlightSearchForm").validate().settings.ignore=[]},InitAutocomplete:function(n){var t=$(n).data("autocompleteversion");t=t==null?"expediav4":t.toLowerCase();t==="travelpayouts"?this.InitAutocompleteTravelPayouts(n):this.InitAutocompleteExpediaV4(n)},EmptyCodeOnTyping:function(n){n=="ArrivalDesc"?$("#ArrivalCode").val(""):n=="DepartureDesc"?$("#DepartureCode").val(""):n=="ArrivalDesc2"?$("#ArrivalCode2").val(""):n=="DepartureDesc2"?$("#DepartureCode2").val(""):n=="ArrivalDesc3"?$("#ArrivalCode3").val(""):n=="DepartureDesc3"&&$("#DepartureCode3").val("")},AutocompleteSelect:function(n,t){n=="ArrivalDesc"?$("#ArrivalCode").val(t.item.value):n=="DepartureDesc"?$("#DepartureCode").val(t.item.value):n=="ArrivalDesc2"?$("#ArrivalCode2").val(t.item.value):n=="DepartureDesc2"?$("#DepartureCode2").val(t.item.value):n=="ArrivalDesc3"?$("#ArrivalCode3").val(t.item.value):n=="DepartureDesc3"&&$("#DepartureCode3").val(t.item.value)},InitMultiDest:function(){function n(n){var t=$("#collapseFlights3").closest("fieldset");t.find(".collapse-flight3 .fa").toggleClass("fa-minus").toggleClass("fa-plus");n?(t.find(".flight3-title").addClass("hidden"),t.find(".add-flight").show()):(t.find(".flight3-title").removeClass("hidden"),t.find(".add-flight").hide())}$("#collapseFlights3").on("show.bs.collapse",function(){n(!1)});$("#collapseFlights3").on("hide.bs.collapse",function(){n(!0)});$("#ArrivalCode2").val()!=""&&n(!1)},InitAutocompleteExpediaV3:function(n){var t=$(n);t.length>0&&(t.autocomplete({source:function(n,i){t.attr("id").toLowerCase().indexOf("arrival")>=0?$("#ArrivalCode").val(""):$("#DepartureCode").val("");jQuery.ajax({url:"/api/Autocomplete/FlightsExpediaV3",method:"POST",data:{term:n.term},dataType:"json",success:function(n){i(jQuery.map(n.sr,function(n){if(n!=null&&(n.t==="AIRPORT"||n.rt==="MULTICITY"))return{label:n.d,focus:n.f,value:n.a,type:n.t,rtype:n.rt}}))}})},autoFocus:!0,minLength:2,delay:100,focus:function(){return!1},select:function(n,t){var i=$("<div>").html(t.item.label).text();return $(this).val(i),$(this).attr("id").toLowerCase().indexOf("arrival")>=0?$("#ArrivalCode").val(t.item.value):$("#DepartureCode").val(t.item.value),!1}}).data("ui-autocomplete")._renderItem=function(n,t){var i=$("<a><\/a>").html(" "+t.label);return t.type==="AIRPORT"||t.rtype==="MULTICITY"?$('<i class="fa fa-plane text-primary" title='+t.type+"><\/i>").prependTo(i):t.type==="HOTEL"&&$('<i class="fa fa-building-o text-primary" title='+t.type+"><\/i>").prependTo(i),$('<li class="ellipsis"><\/li>').append(i).appendTo(n)})},InitAutocompleteExpediaV4:function(n){var t=$(n);t.length>0&&(t.autocomplete({source:function(n,i){var r=t.attr("id");flightsSearchBox.EmptyCodeOnTyping(r);jQuery.ajax({url:"https://suggest.expedia.com/api/v4/typeahead/"+n.term+"?features=ta_hierarchy|contextual_ta|postal_code|boldSearchDest&format=json&maxresults=10&client=Homepage&lob=FLIGHTS",dataType:"json",success:function(n){$.isEmptyObject(n)||i(jQuery.map(n.sr,function(n){return{label:n.regionNames.displayName,focus:n.regionNames.displayName,value:n.hierarchyInfo.airport.airportCode,type:n.type,child:n.hierarchyInfo.isChild}}))}})},autoFocus:!0,minLength:2,delay:100,focus:function(){return!1},select:function(n,t){var r=$("<div>").html(t.item.label).text(),i;return $(this).val(r),i=$(this).attr("id"),flightsSearchBox.AutocompleteSelect(i,t),!1}}).data("ui-autocomplete")._renderItem=function(n,i){var r=$("<a><\/a>").html(" "+i.label),u=ContainsHebrewLetters(t.val());return i.child?$('<i class="fa fa-fw text-primary '+(u?"fa-angle-left mr18":"fa-angle-right ml18")+' " title='+i.type+"><\/i>").prependTo(r):$('<i class="fa fa-fw fa-plane text-primary " title='+i.type+"><\/i>").prependTo(r),u?n.addClass("rtl"):n.removeClass("rtl"),$("<li><\/li>").append(r).appendTo(n)})},InitAutocompleteTravelPayouts:function(n){var t=$(n);t.length>0&&(t.autocomplete({source:function(n,i){var r=t.attr("id");flightsSearchBox.EmptyCodeOnTyping(r);jQuery.ajax({url:"/api/Autocomplete/FlightsTravelPayouts",method:"POST",data:{term:n.term},dataType:"json",success:function(n){$.isArray(n)&&i(jQuery.map(n,function(n){if(n.code!=null)return{label:n.name,focus:n.name,value:n.code,type:n.type}}))}})},autoFocus:!0,minLength:2,delay:100,focus:function(){return!1},select:function(n,t){var r=$("<div>").html(t.item.label).text(),i;return $(this).val(r),i=$(this).attr("id"),flightsSearchBox.AutocompleteSelect(i,t),!1}}).data("ui-autocomplete")._renderItem=function(n,i){var r=$("<a><\/a>").html(" <i class='text-muted'>"+i.type+"<\/i> "+i.label),u=ContainsHebrewLetters(t.val());return u?n.addClass("rtl"):n.removeClass("rtl"),$("<li><\/li>").append(r).appendTo(n)})},InitDatePickers:function(){var i=$("#departureHolder"),u,f,n,e,r,t,o,s;i.length>0&&(u=0,f="+1",$("#FlightSearchForm .minDate").length>0&&(u=0,f="+3"),i.datepicker({minDate:f,dateFormat:"D - d MM, yy",altField:"#DepartureDate",altFormat:"yy-mm-dd",onSelect:function(n,i){var f=new Date($(i.input).datepicker("getDate")),e;f.setDate(f.getDate()+u);$("#arrivalHolder").datepicker("option","minDate",f);e=new Date(f);e.setDate(e.getDate()+6);$("#arrivalHolder").datepicker("setDate",e);$("#arrivalHolder").datepicker("refresh");r.datepicker("option","minDate",f);f.setDate(f.getDate()+u);t.datepicker("option","minDate",f)}}),n=new Date($("#DepartureDate").val()),i.datepicker("setDate",n),n=i.datepicker("getDate"),i.datepicker("setDate",n),$("#arrivalHolder").datepicker({minDate:n,dateFormat:"D - d MM, yy",altField:"#ArrivalDate",altFormat:"yy-mm-dd"}),e=new Date($("#ArrivalDate").val()),$("#arrivalHolder").datepicker("setDate",e));r=$("#departureHolder2");t=$("#departureHolder3");r.length>0&&(r.datepicker({minDate:n,dateFormat:"D - d MM, yy",altField:"#DepartureDate2",altFormat:"yy-mm-dd",onSelect:function(n,i){var r=new Date($(i.input).datepicker("getDate"));r.setDate(r.getDate()+1);t.datepicker("option","minDate",r)}}),o=new Date($("#DepartureDate2").val()),r.datepicker("setDate",o));t.length>0&&(t.datepicker({minDate:n,dateFormat:"D - d MM, yy",altField:"#DepartureDate3",altFormat:"yy-mm-dd"}),s=new Date($("#DepartureDate3").val()),t.datepicker("setDate",s))},InitSwitchDestinations:function(){$(".switch-destinations").click(function(){var n=$("#DepartureDesc").val(),t=$("#DepartureCode").val();$("#DepartureDesc").val($("#ArrivalDesc").val());$("#DepartureCode").val($("#ArrivalCode").val());$("#ArrivalDesc").val(n);$("#ArrivalCode").val(t)})},InitSearchType:function(){function t(){$("#multiflights").fadeIn();$("#multiflights fieldset").removeAttr("disabled")}function n(){$("#multiflights").fadeOut();$("#multiflights fieldset").prop("disabled",!0)}$("#FlightSearchForm [name=SearchType]").change(function(){$(this).val()==="RoundTrip"?($(".round-trip-date").fadeIn(),n()):$(this).val()==="MultipleDestinations"?($("#FlightSearchForm .round-trip-date").fadeOut(),t()):($("#FlightSearchForm .round-trip-date").fadeOut(),n())})},InitPersons:function(){flightsSearchBox.SetPersonsToModal();flightsSearchBox.SetPersonsFromModal();$("#FlightPersonsModal").on("show.bs.modal",function(){flightsSearchBox.SetPersonsToModal()});$("#SavePersons").click(function(){flightsSearchBox.SetPersonsFromModal()})},SetPersonsToModal:function(){$("#NumberOfAdultsModal").val($("#NumberOfAdults:hidden").val());$("#NumberOfChildrenModal").val($("#NumberOfChildren:hidden").val());$("#NumberOfSeniorsModal").val($("#NumberOfSeniors:hidden").val());$("#NumberOfInfantsModal").val($("#NumberOfInfants:hidden").val())},SetPersonsFromModal:function(){var n=$("#NumberOfAdultsModal").val(),t=$("#NumberOfChildrenModal").val(),i=$("#NumberOfSeniorsModal").val(),r=$("#NumberOfInfantsModal").val(),u;$("#NumberOfAdults:hidden").val(n);$("#NumberOfChildren:hidden").val(t);$("#NumberOfSeniors:hidden").val(i);$("#NumberOfInfants:hidden").val(r);u=flightsSearchBox.GetPersonsDesc(n,t,i,r);$("#FlightPersons").val(u)},GetPersonsDesc:function(n,t,i,r){var u="";return n!=="0"&&(u+=String.format("{0} {1}, ",n,n==="1"?Resources.Adult:Resources.Adults)),t!=="0"&&(u+=String.format("{0} {1}, ",t,t==="1"?Resources.Child:Resources.Children)),i!=="0"&&(u+=String.format("{0} {1}, ",i,i==="1"?Resources.Senior:Resources.Seniors)),r!=="0"&&(u+=String.format("{0} {1}, ",r,r==="1"?Resources.Infant:Resources.Infants)),u.substring(0,u.length-2)}}