var validator=null;var validationIdList={};var categoryId;var promises=[];function getValidationErrorMessage(b,a){$.get("GetDynamicStandardFieldError.aspx",{id:a,ln:getQueryStringValue("ln"),idcategory:categoryId}).done(function(c){validationIdList[a]=c;b.resolve()})}function setValidationErrorMessage(b){var c=b.attr("id").substring(6,b.attr("id").indexOf("-"));var a=validationIdList[c];if(c=="6"){b.rules("add",{birthDate:true});b.rules("add",{messages:{birthDate:a}})}else{if(c=="7"||b.attr("id").indexOf("email")>-1){b.rules("add",{messages:{required:a,email:a}})}else{if(b.attr("id").indexOf("confirmEmail")>-1){b.rules("add",{messages:{required:a,email:a,equalTo:a},equalTo:"#geninf7-"+b.attr("id").substring(b.attr("id").indexOf("-")+1)})}else{if(c=="13"){b.rules("add",{messages:{required:a,phone:a}});b.rules("add",{phone:true})}else{if(c=="14"){b.rules("add",{messages:{required:a,phone:a}});b.rules("add",{phone:true})}else{if(c=="52vatNumber"){b.rules("add",{messages:{required:a,vatNumber:a}});b.rules("add",{minlength:4});b.rules("add",{vatNumber:true})}else{if(c=="58"){b.rules("add",{messages:{required:a,linkedIn:a}});b.rules("add",{linkedIn:true})}else{b.rules("add",{htmlTags:true});b.rules("add",{messages:{required:a}})}}}}}}}}function setWaitingListErrorMessage(b){var c=b.attr("id");var a=document.getElementById("hidIdCategory").value;$.get("GetDynamicStandardFieldError.aspx",{id:c,ln:getQueryStringValue("ln"),idcategory:a}).done(function(d){if(c=="7"){b.rules("add",{messages:{required:d,email:d}})}else{if(c=="14"){b.rules("add",{messages:{required:d,phone:d}});b.rules("add",{phone:true})}else{b.rules("add",{messages:{required:d}})}}})}function setInvoiceFieldErrorMessage(a){var b=a.attr("id");$.get("GetDynamicInvoiceFieldError.aspx",{id:b,ln:$("#hidden-input-ln").val(),category:$("#hidden-input-idcategory").val()}).done(function(c){if(b=="invEmail"){a.rules("add",{messages:{required:c,email:c}})}else{if(b=="invOrgNr"){a.rules("add",{messages:{required:c}});a.rules("add","orgnr")}else{if(b=="invSSN"){a.rules("add",{messages:{required:c}});a.rules("add","ssn")}else{if(b=="invEAddress"){a.rules("add",{messages:{required:c}});a.rules("add","eaddress")}else{a.rules("add",{messages:{required:c}})}}}}})}function getYear(a){return(a<1000)?a+1900:a}function isDate(d,b,a){b=b-1;var c=new Date(d,b,a);if((getYear(c.getYear())==d)&&(b==c.getMonth())&&(a==c.getDate())){return true}else{return false}}function IgnoreJqueryValidationForAdmin(){if(typeof bookingSource!="undefined"&&bookingSource=="1"){$("input, textarea, select").each(function(){var a=$(this).attr("id");if(a){if(a.indexOf("geninf0fn-")>=0||a.indexOf("geninf0ln-")>=0){return true}else{if(a.indexOf("geninf")>=0){$(this).removeClass("required")}}}})}}jQuery.validator.methods.email=function(b,a){return this.optional(a)||/^((([a-zA-Z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-zA-Z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-zA-Z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-zA-Z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-zA-Z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-zA-Z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-zA-Z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-zA-Z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/.test(b)};jQuery.validator.addMethod("vatNumber",function(h,d){if(this.optional(d)&&h===""){return true}var f=true;var a;var i=$(d).val();var b=$("#geninf4-0");if(b&&b.length>0){a=b.val();var e=isCountryIdInEu(a);if(i&&i.length>0&&!e){f=false}}if(!f&&i&&i.length>0){$("#geninf52vatNumber-0").data("validVatNumber",true);return true}if(f){var g=false;var c={vatNumber:h,categoryId:document.getElementById("hidIdCategory").value,languageId:getQueryStringValue("ln")};$.ajaxSetup({cache:false,async:false});$.ajax({url:"VatnumberValidation.aspx",data:c,success:function(j){$(d).removeData("previousValue");g=j==="true"||j===true;$("#geninf52vatNumber-0").data("validVatNumber",g);activateReverseChargeOrExportTax()}});return g}return false});jQuery.validator.addMethod("linkedIn",function(b,a){if(isEmptyOrSpaces(b)){if(this.optional(a)){return true}}else{if(ValidateLinkedIn(b)){return true}else{return false}}},"Incorrect linkedIn url");jQuery.validator.addMethod("birthDate",function(c,b){if(this.optional(b)){return true}try{if($.datepicker.parseDate($.datepicker.regional.local.dateFormat,c)){return true}}catch(a){return false}},"Enter a valid birth date");jQuery.validator.addMethod("orgnr",function(j,b){if($("#invCountry").find("option:selected").val()!="SE"){return true}if(this.optional(b)&&j===""){return true}j=j.replace(/ /g,"").replace(/-/g,"");if(j.match(/[^\d]/)){return false}if(j.length<10){return false}var h=0,f=1,a;var e=j.charAt(j.length-1)*1;for(var c=j.length-1;c>=0;c--){a=j.charAt(c)*f;h+=a>9?a-9:a;f=3-f}if(!(h%10)){var g=j.substring(0,6)+"-"+j.substring(6);$(b).val(g);return true}return false},"Not a valid organization number");jQuery.validator.addMethod("ssn",function(h,c){if($("#invCountry").find("option:selected").val()!="SE"){return true}h=h.replace(/ /g,"").replace(/-/g,"");var g=h.match(/^(\d)(\d)(\d)(\d)(\d)(\d)(\d)(\d)(\d)(\d)(\d)(\d)$/);var a=0;var b=new Date();if(!isDate(h.substring(0,4),h.substring(4,6),h.substring(6,8))){return false}if(g==null){return false}var f;for(var e=3;e<=12;e++){f=parseInt(g[e]);if(e%2==0){a+=f}else{a+=(f*2)%9+Math.floor(f/9)*9}}if(a%10==0){return true}return false},"Not a valid social security number");jQuery.validator.addMethod("eaddress",function(c,b){if(this.optional(b)&&c===""){return true}var d="";var e=document.getElementById("invWanCarrier");if(e){d=e.options[e.selectedIndex].value}if(d==20){if(c.startsWith("0088:")){return/^\d{4}:\d{13}$/.test(c)}else{if(c.startsWith("0007:")){return/^\d{4}:\d{10}$/.test(c)}else{if(c.startsWith("0192:")){var a=document.getElementById("invCountry");if(a&&a.options[a.selectedIndex].value==="NO"){return/^\d{4}:\d{9}$/.test(c)}}else{return false}}}}else{return/^\d{13}$/.test(c)}},"Not a valid EAddress for this carrier. ");jQuery.validator.addMethod("phone",function(b,a){return this.optional(a)||!isNaN(b.replace(/ /g,"").replace(/-/g,""))},"Not a valid phone number");jQuery.validator.addMethod("htmlTags",function(b,a){if(/<(.|\s)*>/i.test(b)){return false}else{return true}},"HTML tags are not valid.");$(function(){var b=document.getElementById("hidIdCategory");categoryId=b?b.value:"";var a=getQueryStringValue("view");if(a=="registration"||a=="geninf"||a=="act"||a=="acc"){validator=$("#mainForm").validate({ignore:".ignore",errorPlacement:function(d,c){if(c[0].localName=="select"){d.appendTo(c.parent().parent().parent())}else{d.appendTo(c.parent().parent())}},submitHandler:function(c){c.submit()}});IgnoreJqueryValidationForAdmin();$(".registration-step[data-registrationstepname='Information'] input, .registration-step[data-registrationstepname='Information'] select, .registration-step[data-registrationstepname='Information'] textarea").each(function(){var c=$(this).attr("id").substring(6,$(this).attr("id").indexOf("-"));if(validationIdList[c]===undefined){validationIdList[c]=null}});$.each(validationIdList,function(c){var d=$.Deferred();promises.push(d);getValidationErrorMessage(d,c)});$.when.apply($,promises).done(function(){$(".registration-step[data-registrationstepname='Information'] input, .registration-step[data-registrationstepname='Information'] select, .registration-step[data-registrationstepname='Information'] textarea").each(function(){setValidationErrorMessage($(this))})})}else{if(a=="payment"){validator=$("#invoice-form").validate({ignore:".ignore",errorPlacement:function(d,c){if(c[0].localName=="select"){d.appendTo(c.parent().parent().parent())}else{d.appendTo(c.parent().parent())}},submitHandler:function(c){disableNextButton();c.submit()}});$("#invoice-form input, #invoice-form select, #invoice-form textarea").each(function(){setInvoiceFieldErrorMessage($(this))})}else{if(a=="closed"){validator=$("#waitinglistForm").validate({ignore:".ignore",errorPlacement:function(d,c){if(c[0].localName=="select"){d.appendTo(c.parent().parent().parent())}else{d.appendTo(c.parent().parent())}},highlight:function(c){$(c).parent().addClass("field-error")},unhighlight:function(c){$(c).parent().removeClass("field-error")},submitHandler:function(i){var c=$(i).data("categoryid");var j=$(i).data("languageid");var h=$(i).find("#0fn").val();var k=$(i).find("#0ln").val();var f=$(i).find("#7").val();var d=$(i).find("#13").val();var e=$(i).find("#15").val();var l=$(i).find("#14").val();var g=$(i).find("#53").val();addToWaitinglist(c,h,k,f,d,e,l,j,g);$("div.waitinglist-added").hide().removeClass("hidden").fadeIn(400,function(){})}});$("#waitinglistForm input").each(function(){setWaitingListErrorMessage($(this))})}}}});jQuery.fn.extend({validateStep:function(c){var a={done:function(){}};c=$.extend({},a,c);var e={valid:true,input:null,focus:true};function b(){showLoaderWidget(false);c.done(e)}var d=$(this);$("input:not(.ignore), select:not(.ignore), textarea:not(.ignore)",d).each(function(g,h){var f=$(h);e.valid=validator.element(h)&&e.valid;if(!e.valid){e.input=$(h);return false}});if(validateActivities($(this),e,b)){return}if(validateAccommodationRequired($(this),e,b)){return}if(validateAccommodationStep($(this),e,b)){return}if(validateNewAccommodationStep($(this),e,b)){return}b()}});jQuery.fn.extend({focusError:function(){setActiveStep($(this).closest(".registration-step").attr("data-registrationstepname"));var a=$(this);var d;var b=a.closest("div.ui-collapsible");if(b.length!=0&&b.collapsible("option","collapsed")==true){b.bind("collapsibleexpand.focusError",function(){d=a.offset().top-$("#header").height()-a.height();if(a.hasClass("hasDatepicker")){d-=250}a.focus();$("html, body").animate({scrollTop:d},1000);b.unbind("collapsibleexpand.focusError")});b.collapsible("expand")}else{if(a.closest(".dynamic-accommodation-room").length>0&&$(window).width()<1000){$(".dynamic-accommodation-room").hide();$(".group-accommodation-hotels").hide();var c=a.closest(".dynamic-accommodation-room");c.show();if(c.parent().hasClass("dynamic-accommodation-group")){c.parent().show();c.parent().parent().show()}}d=a.offset().top-$("#header").height()-a.height();if(a.hasClass("hasDatepicker")){d-=250}a.focus();$("html, body").animate({scrollTop:d},1000)}}});function validateActivities(c,d,b){var e=false;if(d.input==null&&d.valid&&c.data("registrationstepname")=="Activities"){if(maxNrOfActivities&&maxNrOfActivities<10000){if(!validateMaxNumberOfActivities(c)){e=true;var a;d.valid=false;d.focus=false;a="toomanyact";getDictionaryWord(a,languageId,maxNrOfActivities).success(function(f){displayErrorMessage(f);b()})}}if(!e){if(minNrOfActivities&&minNrOfActivities>0){if(!validateMinNumberOfActivities(c)){e=true;var a;d.valid=false;d.focus=false;a="toofewact";getDictionaryWord(a,languageId,minNrOfActivities).success(function(f){displayErrorMessage(f);b()})}}}}return e}function validateMaxNumberOfActivities(c){for(var b=1;bmaxNrOfActivities){return false}}return true}function validateMinNumberOfActivities(c){for(var b=1;b0){e.push(AddSelectedActivityInfoToArray(b[a]))}}}for(var a=0;a0){e.push(AddSelectedActivityInfoToArray(d[a]))}}checkIfActivitiesOverlap(e,c)}}}$(function(){$("#invWanCarrier").on("change",function(){if($("#invEAddress").length>0&&$("#invEAddress").val()){$("#invoice-form").validate().element("#invEAddress")}});$("#invCountry").on("change",function(){if($("#invEAddress").length>0&&$("#invEAddress").val()){$("#invoice-form").validate().element("#invEAddress")}if($("#invOrgNr").length>0&&$("#invOrgNr").val()){$("#invoice-form").validate().element("#invOrgNr")}})});