function GetDateFromFieldBySelector(n){var t=$(n),i=t.val();return parseDate(i)}function SetupDateDropdowns(){$(".DateDropdownsOverlay").each(function(){var t=$(this).siblings("input").eq(0),n=t.val().split("/");n.length==3&&$(this).find("select").each(function(){var t=$(this);t.hasClass("Day")?t.val(parseInt(n[0])):t.hasClass("Month")?t.val(n[1]):t.hasClass("Year")&&t.val(parseInt(n[2]))})});$(document).on("change",".DateDropdownsOverlay select",function(){var n=$(this).parent(),i=!0,t;if(n.children("select").each(function(){$(this).val()==""&&(i=!1)}),t=n.siblings("input").eq(0),i){var r=n.children("select:nth-child(1)").val(),u=n.children("select:nth-child(2)").val(),f=n.children("select:nth-child(3)").val();t.val(r+"/"+u+"/"+f)}else t.val("")})}function maxHeight(){var n=[],t=0;$(".maxheight").length&&($(".maxheight:not([rel])").equalHeights(),$(".maxheight").each(function(){var i=$(this).attr("rel");i!=null&&$.inArray(i,n)==-1&&(n[t]=i,t++,$(".maxheight[rel="+i+"]").height("auto").equalHeights())}))}function DisableAutoComplete(){$("input:text,input:checkbox,input:radio,form").attr("autocomplete","off")}function WrapOccurrencesInString(n,t,i,r){return(wrapStringRE==undefined||wrapStringRE.source!=t)&&(wrapStringRE=new RegExp(t,"gi")),n.replace(wrapStringRE,function(n){return i+n+r})}function parseDate(n){var t,i;return t==null&&(i=n.indexOf("-00")>=0,i||(t=Date.parseExact(n,"yyyy-MM-dd"))),t==null&&(i=n.indexOf("00-")>=0,i||(t=Date.parseExact(n,"dd-MM-yyyy"))),t==null&&(i=n.indexOf("0/")==0||n.indexOf("/0/")>=0||n.indexOf("00/")>=0,i||(t=Date.parseExact(n,"d/M/yyyy"))),t}function setupSearch(){DisableAutoComplete();allTripItems=$("#lstDestination option");TripType_OnChange();$("#policytype").change(TripType_OnChange);GroupType_OnChange();$("#lstFamilyType").change(GroupType_OnChange);NumberOfClients_OnChange();$("#numberOfClients").change(NumberOfClients_OnChange);SetupStartEndDate();SetupDateDropdowns();$("[placeholder]").placeholder()}function SetupStartEndDate(){$("#startdate").datepicker({dateFormat:"dd/mm/yy",minDate:parseDate(DateToday),maxDate:parseDate(DateToday).addYears(datepickerMaxDateYearsFromToday),onSelect:function(){SetupEndDateDatepickerBasedOnStartDate()}});$("#startdate").on("change",function(){parseDate($(this).val())&&SetupEndDateDatepickerBasedOnStartDate()});SetupStartDateDatepickerMaxDate();$("#enddate").datepicker({dateFormat:"dd/mm/yy",minDate:parseDate(DateToday),maxDate:parseDate(DateToday).addYears(datepickerMaxDateYearsFromToday),onSelect:function(){SetupStartDateDatepickerMaxDate()}});$("#enddate").on("change",function(){parseDate($(this).val())&&SetupStartDateDatepickerMaxDate()});SetupEndDateDatepickerBasedOnStartDate();$("#startDateButton").click(function(n){n.preventDefault();var t=$("#startdate");t.datepicker("widget").is(":visible")?t.datepicker("hide"):t.datepicker("show")});$("#endDateButton").click(function(n){n.preventDefault();var t=$("#enddate");t.datepicker("widget").is(":visible")?t.datepicker("hide"):t.datepicker("show")})}function SetupStartDateDatepickerMaxDate(){$("#enddate").val()&&(RemoveValidationMessage($("#enddate")),ValidateEndDate())}function SetupEndDateDatepickerBasedOnStartDate(){var n,t,i;$(".hasDatepicker").datepicker("hide");n=$("#startdate").val();t=parseDate(DateToday);n&&(ValidateStartDate(),i=parseDate(n),i>=parseDate(DateToday)&&(t=new Date(i)));$("#enddate").val()&&!ValidateEndDate()&&$("#enddate").datepicker("setDate",null);$("#enddate").datepicker("option","minDate",t)}function TripType_OnChange(){policyType=$("#policytype").val();var n=$("#lstDestination").val();$("#lstDestination option").remove();policyType==_PolicyTypes.Single&&($(".EndDateWrap").show(),$.each(allTripItems,function(n,t){$("#lstDestination").append(t)}));policyType==_PolicyTypes.Annual&&($(".EndDateWrap").hide(),$("#enddate").val(""),$.each(allTripItems,function(n,t){var i=t,r=parseInt(i.value);($.inArray(r,destinationsForAnnualTrip)>=0||isNaN(r))&&$("#lstDestination").append(i)}));$("#lstDestination").val(n);SetupStartDateDatepickerMaxDate()}function GroupType_OnChange(){groupType=$("#lstFamilyType").val();groupType==_GroupTypes.INDIVIDUAL?(EnableNumberOfClientsOption(1),SetNumberOfClients(1),SetNumberOfRequiredAdults(1),$(".NumberOfTravellersWrap").hide()):groupType==_GroupTypes.COUPLE?(EnableNumberOfClientsOption(1),SetNumberOfClients(2),$(".NumberOfTravellersWrap").hide(),SetNumberOfRequiredAdults(2)):($("#numberOfClients").val()==1&&$("#numberOfClients").val(2),DisableNumberOfClientsOption(1),SetNumberOfRequiredAdults(1),$("#numberOfClients").change(),$(".NumberOfTravellersWrap").show())}function EnableNumberOfClientsOption(n){var t=$("#numberOfClients option[value="+n+"]");t.show();t.removeAttr("disabled")}function DisableNumberOfClientsOption(n){var t=$("#numberOfClients option[value="+n+"]");t.hide();t.attr("disabled","disabled")}function SetNumberOfClients(n){$("#numberOfClients").val(n).change()}function SetNumberOfRequiredAdults(n){var i=$(".ClientDob"),t;for(i.removeClass(requiredAdultClassName),t=0;t<n;t++)i.eq(t).removeClass(requiredChildClassName),i.eq(t).addClass(requiredAdultClassName)}function SetRequiredChildrenForFamily(n){var t,r,i;if($("#lstFamilyType").val()!=_GroupTypes.FAMILYORGROUP)return!0;for(t=$(".ClientDob"),t.removeClass(requiredChildClassName),r=1,n>2&&(r=2),i=r;i<t.length;i++)t.eq(i).removeClass(requiredAdultClassName),t.eq(i).addClass(requiredChildClassName)}function NumberOfClients_OnChange(){num=$("#numberOfClients").val();SetRequiredChildrenForFamily(num);ShowClients(num)}function ShowClients(n){$(".ClientDobWrap").each(function(){var t=$(this);t.data("clientnumber")<=n?(t.show(),t.find("select").prop("disabled",!1)):(t.hide(),t.find("select").prop("disabled",!0))})}function ValidatePageForm(){ValidateDestination();ValidateStartDate();ValidateEndDate();ValidateClients();ValidateResidence()}function ValidateDestination(){var n=$("#lstDestination");if(n.length)return n.val()?!0:(AppendFormFieldError("#"+n.attr("id"),"Please select your Destination"),!1)}function ValidateStartDate(){var n="#startdate",t=GetDateFromFieldBySelector(n);return(RemoveValidationMessage(n),t==null)?(AppendFormFieldError(n,"Please enter your trip start date"),!1):t<parseDate(DateToday)?(AppendFormFieldError(n,"Your trip start date must be in the future"),!1):!0}function ValidateEndDate(){var n="#enddate",t,i;return $(n).is(":hidden")?!0:(t=GetDateFromFieldBySelector(n),i=GetDateFromFieldBySelector("#startdate"),RemoveValidationMessage(n),t==null)?(AppendFormFieldError(n,"Please enter your trip end date"),!1):t<i?(AppendFormFieldError(n,"Your trip end date must be after the trip start date"),!1):t<parseDate(DateToday)?(AppendFormFieldError(n,"Your trip end date must be in the future"),!1):!0}function ValidateClients(){var n=!0;return $(".ClientDobWrap:visible input.ClientDob").each(function(){var e=$(this).val(),t,o,r,i,s,h,c,l,u,f,a,v;if(e=="")return AppendFormFieldError("#"+$(this).attr("id"),"Please enter a date of birth"),n=!1,!0;if(t=parseDate(e),t==null)return AppendFormFieldError("#"+$(this).attr("id"),"Please enter a valid date"),n=!1,!0;if(t>parseDate(DateToday))return AppendFormFieldError("#"+$(this).attr("id"),"Please enter a date in the past"),n=!1,!0;if(o=parseDate(DateToday).add(-minAdultAge).year(),r=t<=o,$(this).hasClass("requiredAdult")&&!r)return AppendFormFieldError("#"+$(this).attr("id"),"Traveller must be over "+minAdultAge+" years old"),n=!1,!0;if($(this).hasClass("requiredChild")&&r)return AppendFormFieldError("#"+$(this).attr("id"),"Children must be under "+minAdultAge+" years old"),n=!1,!0;if(i=parseDate($("#startdate").val()),i!=null){if(s=i.add(-minChildAgeDays).day(),h=t>s,h)return AppendFormFieldError("#"+$(this).attr("id"),"Children younger than "+minChildAgeDays+" days when the trip starts cannot be covered"),n=!1,!0;if($(this).hasClass("requiredChild")){if(i=parseDate($("#startdate").val()),c=i.add(-minAdultAge).year(),l=t<=c,l)return AppendFormFieldError("#"+$(this).attr("id"),"Children of "+minAdultAge+" years and older when the trip starts cannot be covered"),n=!1,!0}else if(i=parseDate($("#startdate").val()),u=$("#policytype").val(),f=u==_PolicyTypes.Single?maxAdultAgeSingleTrip:u==_PolicyTypes.Annual?maxAdultAgeAnnualTrip:maxAdultAge,a=i.add(-(f+1)).year(),v=t<=a,v)return AppendFormFieldError("#"+$(this).attr("id"),"Travellers of "+(f+1)+" years and older when the trip starts cannot be covered"),n=!1,!0}}),n}function ValidateResidence(){var n=$("#lstResidence");if(n.length)return n.val()?!0:(AppendFormFieldError("#"+n.attr("id"),"Please select your home state"),!1)}var wrapStringRE,allTripItems,requiredAdultClassName,requiredChildClassName;(function(n){function t(t){this.input=t;t.attr("type")=="password"&&this.handlePassword();n(t[0].form).submit(function(){t.hasClass("placeholder")&&t[0].value==t.attr("placeholder")&&(t[0].value="")})}t.prototype={show:function(n){if(this.input[0].value===""||n&&this.valueIsPlaceholder()){if(this.isPassword)try{this.input[0].setAttribute("type","text")}catch(t){this.input.before(this.fakePassword.show()).hide()}this.input.addClass("placeholder");this.input[0].value=this.input.attr("placeholder")}},hide:function(){if(this.valueIsPlaceholder()&&this.input.hasClass("placeholder")&&(this.input.removeClass("placeholder"),this.input[0].value="",this.isPassword)){try{this.input[0].setAttribute("type","password")}catch(n){}this.input.show();this.input[0].focus()}},valueIsPlaceholder:function(){return this.input[0].value==this.input.attr("placeholder")},handlePassword:function(){var t=this.input,i;t.attr("realType","password");this.isPassword=!0;navigator.userAgent.match(/msie/i)&&t[0].outerHTML&&(i=n(t[0].outerHTML.replace(/type=(['"])?password\1/gi,"type=$1text$1")),this.fakePassword=i.val(t.attr("placeholder")).addClass("placeholder").focus(function(){t.trigger("focus");n(this).hide()}),n(t[0].form).submit(function(){i.remove();t.show()}))}};var i=!!("placeholder"in document.createElement("input"));n.fn.placeholder=function(){return i?this:this.each(function(){var i=n(this),r=new t(i);r.show(!0);i.focus(function(){r.hide()});i.blur(function(){r.show(!1)});navigator.userAgent.match(/msie/i)&&(n(window).load(function(){i.val()&&i.removeClass("placeholder");r.show(!0)}),i.focus(function(){if(this.value==""){var n=this.createTextRange();n.collapse(!0);n.moveStart("character",0);n.select()}}))})}})(jQuery);$(document).ready(function(){}),function(n){n.fn.equalHeights=function(){var t=0;this.each(function(){n(this).height()>t&&(t=n(this).height())});this.each(function(){n(this).height(t)})}}(jQuery);requiredAdultClassName="requiredAdult";requiredChildClassName="requiredChild"