$(function(){var concierge={NavBtn:$("#loadConcierge"),Close:$("#closeConcierge"),Submit:$("#submitConcierge"),Popup:$("#ConciergePopup"),LoadingHtml:$("#ConciergePopup .bPadding").html(),Content:$("#ConciergePopup .bPadding")};var avail={NavBtn:$("#loadAvailability"),Close:$("#closeAvailability"),Submit:$("#submitAvailability"),Popup:$("#AvailabilityPopup"),LoadingHtml:$("#AvailabilityPopup .bPadding").html(),Content:$("#AvailabilityPopup .bPadding"),Resort:$("#resort"),Chalet:$("#chalet")};var cache={};var error={Pax:"Please specify the number of guests.",Segments:"Please select 3 pictures in order that best represent your perfect ski holiday.",DepartureDate:"Please specify a departure date."};var alertConfig={title:"Sorry!",resizable:false,height:140,modal:true,buttons:{OK:function(){$(this).dialog("close")}}};var showAlert=function(msg){$("<div>"+msg+"</div>").dialog(alertConfig)};$.datepicker.setDefaults({dateFormat:"D d M yy",changeMonth:true,changeYear:true,minDate:"+7d",maxDate:"+1y"});var showConcierge=function(){avail.Popup.hide();concierge.Popup.show();concierge.Content.load("/Concierge",null,InitConcierge)};var InitConcierge=function(){if($("#departure").length==1){$("#departure").datepicker();$(".segmenthint").click(ClickOnHint)}else{InitConciergeRecommendations()}};var InitConciergeRecommendations=function(){$(".changeProfile").click(function(){concierge.Content.load("/Concierge/Questions",null,InitConcierge)})};concierge.NavBtn.click(showConcierge);concierge.Close.live("click",function(){concierge.Popup.hide()});concierge.Submit.live("click",function(){if($("#departure").val()==""){showAlert(error.DepartureDate)}else{if($("#adults").val()=="0"){showAlert(error.Pax)}else{if($("#segmenthint3").val()==""){showAlert(error.Segments)}else{var payload={departure:$("#departure").val(),plusminus:$("#plusminus").attr("checked"),adults:$("#adults").val(),children:$("#children").val(),infants:$("#infants").val(),segmenthint1:$("#segmenthint1").val(),segmenthint2:$("#segmenthint2").val(),segmenthint3:$("#segmenthint3").val()};concierge.Content.load("/Concierge/Set",payload,InitConciergeRecommendations)}}}});var ClickOnHint=function(){var selectedsegments=[$("#segmenthint1").val(),$("#segmenthint2").val(),$("#segmenthint3").val()];if($.inArray(this.id,selectedsegments)==-1){if($("#segmenthint1").val()==""){$("#segmenthint1").val(this.id)}else{if($("#segmenthint2").val()==""){$("#segmenthint2").val(this.id)}else{if($("#segmenthint3").val()==""){$("#segmenthint3").val(this.id)}else{$("#segmenthint1").val($("#segmenthint2").val());$("#segmenthint2").val($("#segmenthint3").val());$("#segmenthint3").val(this.id)}}}selectedsegments=[$("#segmenthint1").val(),$("#segmenthint2").val(),$("#segmenthint3").val()];$(".hintmarker").remove();for(id in selectedsegments){if(selectedsegments[id]!=""){$("#"+selectedsegments[id]).prepend('<div class="hintmarker"><strong>'+(parseInt(id)+1)+"</strong></div>")}}}};var showAvailability=function(){concierge.Popup.hide();avail.Popup.show();avail.Content.load("/Availability",null,InitAvailability)};var InitAvailability=function(){$("#departure").datepicker();avail.Chalet=$("#chalet");jQuery.validator.addMethod("paxvalidation",function(value,element){var validationresult=ValidatePax({adults:parseInt($("#adults").val()),children:parseInt($("#children").val()),infants:parseInt($("#infants").val())});if(validationresult=="ok"){return true}alert(validationresult);return false}," ");jQuery.validator.addMethod("requiredifshown",function(value,element){return !$(element).is(":visible")||(value!=null&&value!="")}," ");$("form").each(function(){$(this).validate({onsubmit:false,errorClass:"Vip-error",errorElement:"span"})})};var ValidatePax=function(pax){var totalPax=pax.adults+pax.children+pax.infants;if(pax.adults==0){return"Please make sure there is at least one adult in your party"}return"ok"};avail.NavBtn.click(showAvailability);avail.Close.live("click",function(){avail.Popup.hide()});avail.Resort.live("change",function(){var resort=$(this).val();var cacheKey=cache[resort];util.disableDropDown(avail.Chalet,true);if(util.isNull(cache[resort])){$.getJSON("/Availability/GetChalets/"+resort,function(data){var r=eval(data);if(r.Status=="ok"){cache[resort]=r.Items;fillChalets(r.Items)}else{}})}else{fillChalets(cache[resort])}});var fillChalets=function(items){var optionElems="";for(var i=0;i<items.length;i++){optionElems+='<option value="'+items[i].value+'">'+items[i].text+"</option>"}util.enableDropDown(avail.Chalet,optionElems)};avail.Submit.live("click",function(){var form=$("#searchform");if(!$(form).valid()){return false}$(this).hide();$("#loadingResults").show();$.ajax({type:"POST",url:"/Availability/Search",data:$("#searchform").serialize(),success:function(msg){document.location="/availability/search-results"},error:function(req,status,err){}})})});