function debuggerHelper(){var n=this;return this.log=function(n){console.log(n)},this.logError=function(){responseData.Message?notify().error("Error",responseData.Message):notify().error("Error",responseData)},{log:this.log,logError:this.logError}}function utilHelper(){var n=this;return this.getQueryString=function(n,t){t||(t=window.location.href);n=n.replace(/[\[\]]/g,"\\$&");var r=new RegExp("[?&]"+n+"(=([^&#]*)|&|#|$)"),i=r.exec(t);return i?i[2]?decodeURIComponent(i[2].replace(/\+/g," ")):"":null},{getQueryString:this.getQueryString}}function notify(){var n=this;return this.success=function(n,t,i){var r="body",u="";i&&(r=i,u="absolute");$.notify({icon:"glyphicon glyphicon-ok",title:n,message:t,target:"_blank"},{element:r,position:u,type:"success",allow_dismiss:!0,newest_on_top:!1,showProgressbar:!1,placement:{from:"top",align:"center"},z_index:1031,icon_type:"class",animate:{enter:"animated bounceIn",exit:"animated bounceOut"}})},this.error=function(n,t,i){var r="body",u="";i&&(r=i,u="absolute");$.notify({icon:"glyphicon glyphicon-remove",title:n,message:t,target:"_blank"},{element:r,position:u,type:"danger",allow_dismiss:!0,newest_on_top:!1,showProgressbar:!1,placement:{from:"top",align:"center"},z_index:1031,icon_type:"class",animate:{enter:"animated bounceIn",exit:"animated bounceOut"}})},{success:this.success,error:this.error}}function IDGenerator(){this.length=8;this.timestamp=+new Date;var n=function(n,t){return Math.floor(Math.random()*(t-n+1))+n};this.generate=function(){for(var u,f=this.timestamp.toString(),t=f.split("").reverse(),i="",r=0;r<this.length;++r)u=n(0,t.length-1),i+=t[u];return i}}function dataService(){var n=this;return this.call=function(n,t,i){return i==undefined&&(i="POST"),i=="GET"?(n=n+(t?t:""),$.ajax({url:n,type:i,data:JSON.stringify(t),contentType:"application/json; charset=utf-8",dataType:"json"})):$.ajax({url:n,type:i,data:JSON.stringify(t),contentType:"application/json; charset=utf-8",dataType:"json"})},this.callFormData=function(n,t,i){return i==undefined&&(i="POST"),$.ajax({url:n,type:i,contentType:!1,processData:!1,data:t})},this.apiCallDefferer=function(t,i,r){var u=$.Deferred();return n.call(t,i,r).done(function(n){u.resolve(n);debuggerHelper().log(n)}).fail(function(n){debuggerHelper().logError(n);u.reject(n)}),u.promise()},this.apiCallDeffererFormData=function(t,i,r){var u=$.Deferred();return n.callFormData(t,i,r).done(function(n){u.resolve(n);debuggerHelper().log(n)}).fail(function(n){debuggerHelper().logError(n);u.reject(n)}),u.promise()},{apiCall:this.apiCallDefferer,apiCallDFormData:this.apiCallDeffererFormData}}function resourceDataService(){var n=this;return this.resourcePublicData=function(n){return dataService().apiCall("/umbraco/surface/ResourceDownload/SavePublicLog",n)},this.requestResourceData=function(n){return dataService().apiCall("/umbraco/surface/ResourceDownload/SaveDownloadLog",n)},this.resourceAdminData=function(n){return dataService().apiCall("/umbraco/surface/ResourceDownload/SaveAdminDownloadLog",n)},{resourcePublicData:n.resourcePublicData,requestResourceData:n.requestResourceData,resourceAdminData:n.resourceAdminData}}function requestResourceDataModel(){var n=this;return this.email=ko.observable("").extend({required:{message:"This field is required"}}),this.firstName=ko.observable("").extend({required:{message:"This field is required"}}),this.surname=ko.observable("").extend({required:{message:"This field is required"}}),this.contactingConsent=ko.observable(!1),this.informationConsent=ko.observable(!1),this.position=ko.observable(""),this.organization=ko.observable(""),this.countryOfOrigin=ko.observable("").extend({required:{message:"This field is required"}}),this.nodeId,this.title,{email:this.email,firstName:this.firstName,surname:this.surname,position:this.position,organization:this.organization,countryOfOrigin:this.countryOfOrigin,contactingConsent:this.contactingConsent,informationConsent:this.informationConsent}}function resourceDataAdminModel(){var n=this;return this.nodeId,this.title,{nodeId:this.nodeId,title:this.title}}function resourceDataModel(){var n=this;return this.email=ko.observable("").extend({required:{message:"This field is required"}}),this.name=ko.observable("").extend({required:{message:"This field is required"}}),this.organization=ko.observable("").extend({required:{message:"This field is required"}}),this.countryOfOrigin=ko.observable("").extend({required:{message:"This field is required"}}),this.nodeId,this.title,{email:this.email,name:this.name,organization:this.organization,countryOfOrigin:this.countryOfOrigin,nodeId:this.nodeId,title:this.title}}function requestResourceDataVm(){var n=this;return ko.validation.init({registerExtenders:!0,messagesOnModified:!0,insertMessages:!1,parseInputAttributes:!0,errorElementClass:"is-invalid",errorMessageClass:"text-danger",messageTemplate:null,decorateInputElement:!0,decorateElementOnModified:!0},!0),this.requestResourceData=ko.observable(),this.isLoading=ko.observable(!1),this.init=function(){ko.validation.registerExtenders();n.load()},this.load=function(){var t=new requestResourceDataModel;n.requestResourceData(t)},this.getDataFromVm=function(){return{email:n.requestResourceData().email(),firstName:n.requestResourceData().firstName(),surname:n.requestResourceData().surname(),position:n.requestResourceData().position(),contactingConsent:n.requestResourceData().contactingConsent(),informationConsent:n.requestResourceData().informationConsent(),organization:n.requestResourceData().organization(),countryOfOrigin:n.requestResourceData().countryOfOrigin()}},this.getDataFromVm=function(){return{email:n.requestResourceData().email(),firstName:n.requestResourceData().firstName(),surname:n.requestResourceData().surname(),position:n.requestResourceData().position(),contactingConsent:n.requestResourceData().contactingConsent(),informationConsent:n.requestResourceData().informationConsent(),organization:n.requestResourceData().organization(),countryOfOrigin:n.requestResourceData().countryOfOrigin()}},this.getData=function(){return{nodeId:$("#nodeId").val(),title:$("#title").val(),resourceTitle:$("#resourceTitle").val(),docType:$("#docType").val()}},this.getResource=function(){resourceDataService().requestResourceData(n.getData()).done(function(t){if(t.StatusCode==400)n.fillErrors(t),console.log(t);else if(t.StatusCode==200){var i="Document";switch(n.getData().docType){case"learningHubAritcularStoryline":i="FlipBook";break;case"learningHubImage":i="Image";break;case"learningHubVideo":i="Video"}gtag("event","click",{event_category:i,event_label:n.getData().resourceTitle});t.RedirectUrl&&window.open(t.RedirectUrl)}}).fail(function(n){console.log(n)})},this.submitClick=function(){var i=[n.requestResourceData().email,n.requestResourceData().firstName,n.requestResourceData().surname,n.requestResourceData().position,n.requestResourceData().contactingConsent,n.requestResourceData().informationConsent,n.requestResourceData().organization,n.requestResourceData().countryOfOrigin],t=ko.validation.group(i);console.log(t);t().length==0?resourceDataService().resourcePublicData(n.getDataFromVm()).done(function(t){t.StatusCode==400?(n.fillErrors(t),console.log(t)):t.StatusCode==200&&t.RedirectUrl&&(location.reload(),$("#ResourceModal").modal("hide"))}).fail(function(n){console.log(n)}):t.showAllMessages()},this.submitClickFindOutMore=function(){var i=[n.requestResourceData().email,n.requestResourceData().firstName,n.requestResourceData().surname,n.requestResourceData().position,n.requestResourceData().contactingConsent,n.requestResourceData().informationConsent,n.requestResourceData().organization,n.requestResourceData().countryOfOrigin],t=ko.validation.group(i);console.log(t);t().length==0?resourceDataService().resourcePublicData(n.getDataFromVm()).done(function(t){t.StatusCode==400?(n.fillErrors(t),console.log(t)):t.StatusCode==200&&t.RedirectUrl&&$("#resourceModalFindOutMore").modal("hide")}).fail(function(n){console.log(n)}):t.showAllMessages()},this.submitClickGuidanceManual=function(){var i=[n.requestResourceData().email,n.requestResourceData().firstName,n.requestResourceData().surname,n.requestResourceData().position,n.requestResourceData().contactingConsent,n.requestResourceData().informationConsent,n.requestResourceData().organization,n.requestResourceData().countryOfOrigin],t=ko.validation.group(i);console.log(t);t().length==0?resourceDataService().resourcePublicData(n.getDataFromVm()).done(function(t){t.StatusCode==400?(n.fillErrors(t),console.log(t)):t.StatusCode==200&&t.RedirectUrl&&$("#resourceModalGuidanceManual").modal("hide")}).fail(function(n){console.log(n)}):t.showAllMessages()},this.fillErrors=function(t){var i,r;if(t.ErrorList){i=t.ErrorList;for(r in i)switch(r){case"Email":n.requestResourceData().email.setError(i[r]);n.requestResourceData().email.isModified(!0);break;case"Name":n.requestResourceData().name.setError(i[r]);n.requestResourceData().name.isModified(!0);break;case"CountryOfOrigin":n.requestResourceData().countryOfOrigin.setError(i[r]);n.requestResourceData().countryOfOrigin.isModified(!0);break;case"Request":n.requestResourceData().request.setError(i[r]);n.requestResourceData().request.isModified(!0)}}},{requestResourceData:this.requestResourceData,init:this.init,submitClick:this.submitClick,isLoading:this.isLoading,getResource:this.getResource,submitClickFindOutMore:this.submitClickFindOutMore,submitClickGuidanceManual:this.submitClickGuidanceManual}}function getResourceLogCookie(n){for(var t,r=n+"=",f=decodeURIComponent(document.cookie),u=f.split(";"),i=0;i<u.length;i++){for(t=u[i];t.charAt(0)==" ";)t=t.substring(1);if(t.indexOf(r)==0)return t.substring(r.length,t.length)}return""}function getCookie(n){for(var t,r=n+"=",f=decodeURIComponent(document.cookie),u=f.split(";"),i=0;i<u.length;i++){for(t=u[i];t.charAt(0)==" ";)t=t.substring(1);if(t.indexOf(r)==0)return t.substring(r.length,t.length)}return""}function splitQueryString(n){for(var r=n.split("&"),u={},t=0,i,t=0;t<r.length;t++)i=r[t].toString().split("="),u[i[0]]=decodeURIComponent(i[1]);return u}function resourceDataAdminVm(){var n=this;return ko.validation.init({registerExtenders:!0,messagesOnModified:!0,insertMessages:!1,parseInputAttributes:!0,errorElementClass:"is-invalid",errorMessageClass:"text-danger",messageTemplate:null,decorateInputElement:!0,decorateElementOnModified:!0},!0),this.resourceData=ko.observable(),this.isLoading=ko.observable(!1),this.init=function(){ko.validation.registerExtenders();n.load()},this.load=function(){var t=new resourceDataAdminModel;n.resourceData(t)},this.getDataFromVm=function(n){return{nodeId:$("#nodeId"+n).val(),title:$("#title"+n).val()}},this.submitClick=function(t,i,r){resourceDataService().resourceAdminData(n.getDataFromVm(t)).done(function(n){n.StatusCode==400?console.log(n):n.StatusCode==200&&(gtag("event","click",{event_category:r,event_label:i}),n.RedirectUrl&&window.open(n.RedirectUrl))}).fail(function(n){console.log(n)})},{resourceData:this.resourceData,init:this.init,submitClick:this.submitClick,isLoading:this.isLoading}}function resourceDataVm(){var n=this;return ko.validation.init({registerExtenders:!0,messagesOnModified:!0,insertMessages:!1,parseInputAttributes:!0,errorElementClass:"is-invalid",errorMessageClass:"text-danger",messageTemplate:null,decorateInputElement:!0,decorateElementOnModified:!0},!0),this.resourceData=ko.observable(),this.isLoading=ko.observable(!1),this.init=function(){ko.validation.registerExtenders();n.load()},this.load=function(){var t=new resourceDataModel,r=getCookie("resource_download"),i;r!==""&&(i=splitQueryString(r),t.name(i.name),t.email(i.email),t.organization(i.organization),t.countryOfOrigin(i.country));n.resourceData(t)},this.getDataFromVm=function(){return{nodeId:$("#nodeId").val(),title:$("#title").val()}},this.submitClick=function(){resourceDataService().requestResourceData(n.getDataFromVm()).done(function(t){t.StatusCode==400?(n.fillErrors(t),console.log(t)):t.StatusCode==200&&t.RedirectUrl&&window.open(t.RedirectUrl)}).fail(function(n){console.log(n)})},this.fillErrors=function(t){var i,r;if(t.ErrorList){i=t.ErrorList;for(r in i)switch(r){case"Email":n.resourceData().email.setError(i[r]);n.resourceData().email.isModified(!0);break;case"Name":n.resourceData().name.setError(i[r]);n.resourceData().name.isModified(!0);break;case"CountryOfOrigin":n.resourceData().countryOfOrigin.setError(i[r]);n.resourceData().countryOfOrigin.isModified(!0);break;case"Organization":n.resourceData().organization.setError(i[r]);n.resourceData().organization.isModified(!0)}}},{resourceData:this.resourceData,init:this.init,submitClick:this.submitClick,isLoading:this.isLoading}}function getCookie(n){for(var t,r=n+"=",f=decodeURIComponent(document.cookie),u=f.split(";"),i=0;i<u.length;i++){for(t=u[i];t.charAt(0)==" ";)t=t.substring(1);if(t.indexOf(r)==0)return t.substring(r.length,t.length)}return""}function splitQueryString(n){for(var r=n.split("&"),u={},t=0,i,t=0;t<r.length;t++)i=r[t].toString().split("="),u[i[0]]=decodeURIComponent(i[1]);return u}ko.bindingHandlers.sortableList={init:function(n,t){var i=t();$(n).sortable({update:function(n,t){var f=ko.utils.arrayIndexOf(t.item.parent().children(),t.item[0]),e=$(t.item[0]).attr("data-order"),r,u;if(f>=0)for(r=0;r<i().length;r++)u=i()[r],u.unique==e&&(i.remove(u),i.splice(f,0,u));t.item.remove()}})}};ko.bindingHandlers.numericDecimal={init:function(n){$(n).on("keydown",function(n){n.keyCode==46||n.keyCode==8||n.keyCode==9||n.keyCode==27||n.keyCode==13||n.keyCode==65&&n.ctrlKey===!0||n.keyCode>=35&&n.keyCode<=39||n.keyCode==188||(n.shiftKey||(n.keyCode<48||n.keyCode>57)&&(n.keyCode<96||n.keyCode>105))&&n.preventDefault()})}};ko.extenders.numericDecimal=function(n){var t=ko.pureComputed({read:n,write:function(t){var i,r;for(valueToWrite="",i=0;i<t.length;i++)"0123456789".indexOf(t[i])!==-1&&(valueToWrite+=t[i]);r=n();valueToWrite!=r?n(valueToWrite):n.notifySubscribers(valueToWrite)}}).extend({notify:"always"});return t(n()),t};ko.bindingHandlers.esckeypress={init:function(n,t,i,r){var u=t();$(n).keypress(function(n){var t=n.which?n.which:n.keyCode;return t===27?(u.call(r),!1):!0})}};ko.bindingHandlers.click={init:function(n,t,i,r,u){var f=t(),e=0,o=200;$(n).click(function(n){if(typeof f=="object"){var t=f.single,i=f.double;e++;e===1&&setTimeout(function(){e===1?t.call(r,u.$data,n):i.call(r,u.$data,n);e=0},o)}else f.call(r,u.$data,n)})}}