function SirclRequestProcessor(n){this._steps=[];this._steps=this._steps.concat(sircl._requestHandlers.beforeSend);this._sendIndex=this._steps.length;this._steps.push(this._send);this._steps=this._steps.concat(sircl._requestHandlers.afterSend);this._processIndex=this._steps.length;this._steps.push(this._process);this._steps=this._steps.concat(sircl._requestHandlers.beforeRender);this._renderIndex=this._steps.length;this._steps.push(this._render);this._steps=this._steps.concat(sircl._requestHandlers.afterRender);this._loadComplete=n}function $$(){arguments.length>=2?sircl.addContentReadyHandler(arguments[0],arguments[1]):sircl.addContentReadyHandler("process",arguments[0])}typeof jQuery=="undefined"&&console.error("Sircl requires jQuery to be executed before Sircl libraries. Please add the jQuery script or move it before Sircl scripts.");sircl_originalJqHtml=$.fn.html;$.fn.html=function(n){var t=this,i;return n===undefined?sircl_originalJqHtml.call(t):(t.each(function(){sircl._beforeUnload(this)}),i=sircl_originalJqHtml.call(t,n),n!==null&&t.each(function(){sircl._afterLoad(this)}),i)};sircl_originalJqLoad=$.fn.load;$.fn.load=function(n,t,i){i===undefined&&typeof t=="function"&&(i=t,t=null);var r={$trigger:this,$initialTarget:this,$newTarget:null,targetMethod:this.attr("target-method")||null,newTargetMethod:null,action:n,method:"get",enctype:null,formData:null,isForeground:!1};return t!=null&&(r.method="post",typeof t=="string"||t instanceof FormData||(t=jQuery.param(t)),r.formData=t),sircl._processRequest(r,i),this};$.fn.hasAttr=function(n){return this.attr(n)!==undefined};typeof sircl=="undefined"&&(sircl={});sircl.version=2;sircl.scrollMode="instant";console.info("Sircl v."+sircl.version+" running.");sircl.addAttributeAlias=function(n,t,i,r){sircl.addContentReadyHandler("enrich",function(){$(this).find(n).each(function(){var n=$(this);n.hasAttr(t)?r===!0&&n.attr(t,n.attr(t)+" "+i):n.attr(t,i)})})};sircl.html_spinner=sircl.html_spinner||'<\/i> ';sircl.max_redirects=sircl.max_redirects||20;sircl.mainTargetSelector$=sircl.mainTargetSelector$||"*[sircl-appid], .main-target";sircl.lastPageNavigationObject=null;sircl.showHideDuration=sircl.showHideDuration||200;sircl._currentHistoryIndex=0;history.state!=null&&(sircl._currentHistoryIndex=history.state.historyIndex);sircl.ext={};sircl.ext._idseed=0;sircl.ext.firstOrNull=function(n){return n?n.length>0?n[0]:null:null};sircl.ext.visible=function(n,t,i,r){if(t===undefined)return!$(n).hasAttr("hidden")&&!$(n).hasAttr("hiding");if($.fn.stop){var f=$(n).filter(t?"[hidden], [hiding]":":not([hidden]):not([hiding])"),u=f.length;f.each(function(){var n=i&&$(this).hasClass("animate");t?n?($(this).stop(!1,!0),$(this).hide(),$(this).removeAttr("hidden"),$(this).slideDown(sircl.showHideDuration,function(){r&&--u==0&&r()})):($(this).removeAttr("hidden"),$(this).show(),r&&--u==0&&r()):n?($(this).attr("hiding","hiding"),$(this).stop(!1,!0),$(this).show(),$(this).slideUp(sircl.showHideDuration,function(){$(this).attr("hidden","hidden");$(this).removeAttr("hiding");r&&--u==0&&r()})):($(this).attr("hidden","hidden"),$(this).hide(),r&&--u==0&&r())});f.length==0&&r&&r()}else t?$(n).removeAttr("hidden"):$(n).attr("hidden","hidden"),r&&r()};sircl.ext.enabled=function(n,t){var i=$(n);if(t===undefined)return i.length>0?i[0].hasAttribute("href")?!i[0].hasAttribute("disabled"):!i.prop("disabled"):!1;i.each(function(){this.hasAttribute("href")?t?i.removeAttr("disabled"):i.attr("disabled","disabled"):i.prop("disabled",!t)})};sircl.ext.getId=function(n,t){var r=$(n),i;return r.length>0?(i=r[0].id,(i===""||i===undefined)&&t===!0&&(i=r[0].id="id-"+sircl.ext._idseed+++"-"+(new Date).getTime()),i):null};sircl.ext.effectiveValue=function(n){return n.tagName=="INPUT"&&n.getAttribute("type")=="checkbox"?n.checked?n.value:"":n.tagName=="INPUT"&&n.getAttribute("type")=="radio"?n.checked?n.value:"":$(n).val()||""};sircl.ext.$mainTarget=function(){return $(sircl.mainTargetSelector$)};sircl.ext.isInternalTarget=function(n){if(n==null||n.length==0)return!1;switch(n.charAt(0)){case"#":return!0;case".":return!0;case"*":return!0;case":":return!0;case"<":return!0;case">":return!0;case"&":return!0;case"[":return!0;case" ":return!0;default:return!1}};sircl.ext.isExternalTarget=function(n){return!sircl.ext.isInternalTarget(n)};sircl.ext.$select=function(n,t){var f,r,u,i,e,o;if(t===undefined||t===null)return $([]);for(f=t.split(","),r=$([]),u=0;u=0&&i.indexOf("|=")0&&(r=r.add(o[0]))):r=i===":this"?r.add(n):i===":parent"?r.add(n).parent():i===":form"?n.hasAttr("form")?r.add($("#"+n.attr("form"))):r.add(n.closest("FORM")):i.indexOf(">")===0?r.add(n.find(i.substring(1))):i.indexOf(">")===0?r.add(n.find(i.substring(4))):i.indexOf("<")===0?r.add(n.closest(i.substring(1))):i.indexOf("<")===0?r.add(n.closest(i.substring(4))):r.add($(i)));return r};sircl.ext.cssEscape=function(n){try{return CSS.escape(n)}catch(t){return n.replace(/\./g,"\\.").replace(/\,/g,"\\,").replace(/\:/g,"\\:").replace(/\*/g,"\\*").replace(/\#/g,"\\#").replace(/\(/g,"\\(").replace(/\)/g,"\\)").replace(/\[/g,"\\[").replace(/\\/g,"\\\\").replace(/\//g,"\\/").replace(/\%/g,"\\%").replace(/\]/g,"\\]")}};sircl.ext.scopedDo=function(n,t,i){var r,u;try{r=null;t.split(",").forEach(function(t){var u=t.split(" on ").map(function(n){return n.trim()});u.length===1?r==null?i(n,u[0]):i(sircl.ext.$select(n,u[0]),r):i(sircl.ext.$select(n,u[1]),r=u[0])})}catch(f){u=null;n!=null&&n.length>0&&(u=n[0]);sircl.handleError("S151",'Error evaluating class action value "'+t+'" : '+f,{exception:f,element:u})}};sircl.ext.addClass=function(n,t){sircl.ext.scopedDo(n,t,function(n,t){n.addClass(t)})};sircl.ext.removeClass=function(n,t){sircl.ext.scopedDo(n,t,function(n,t){n.removeClass(t)})};sircl.ext.toggleClass=function(n,t){sircl.ext.scopedDo(n,t,function(n,t){n.toggleClass(t)})};sircl.ext.alert=function(n,t){window.alert(t)};sircl.ext.confirm=function(n,t){return window.confirm(t)};sircl.ext.submit=function(n,t,i,r){var u=$(t||n),s;if((u.hasAttr("onsubmit-confirm")||$(n).hasAttr("onsubmit-confirm"))&&!sircl.ext.confirm(n,u.attr("onsubmit-confirm")||$(n).attr("onsubmit-confirm"),i)){i.preventDefault();i.stopPropagation();return}if($(n).is("FORM:not([download]):not([method=dialog])")){var f=null,o=null,e=$(n);u.hasAttr("formtarget")?(e=u,f=e.attr("formtarget"),o=e.attr("target-method")):u.closest("[target]").length>0&&(e=u.closest("[target]"),f=e.attr("target"),o=e.attr("target-method"));f!=null&&sircl.ext.isInternalTarget(f)||f==null&&sircl.singlePageMode==!0?(s=f!=null?sircl.ext.$select(e,f):sircl.ext.$mainTarget(),sircl._submitForm(u,$(n),s,o,i),i&&(i.preventDefault(),i.stopPropagation())):(sircl._onPageNavigate(i,u,$(n)),r&&r())}else r&&r()};sircl.ext.subtituteFields=function(n,t,i){var s,l,r,f,u,o,e,h,c;if(i==!1||t.hasClass("substitute-fields")){s=t.closest("FORM");s.length==0&&(s=$(document));l=new RegExp(/(\[[a-z0-9\.\-\_]+?\])|(\%5B[a-z0-9\.\-\_]+?\%5D)/gi);r=[];do if(o=l.exec(n),o!==null)r.push(o[0]);else break;while(1);for(u=0;u1){for(f=[],h=0;h0&&n[0]._files!=null)for(h=0;hsircl.max_redirects?(sircl.handleError("S141","Too many redirects.",{request:n}),n.aborted=!0,n.succeeded=!1,t.next(n)):(n.action=f,n.method="get",n.xhr.open(n.method,n.action),n.xhr.setRequestHeader("Accept",n.accept?n.accept:"text/html"),n.xhr.setRequestHeader("Cache-Control","no-cache, no-store, max-age=0"),n.xhr.setRequestHeader("Pragma","no-cache"),n.xhr.setRequestHeader("X-Sircl-Request-Type","Partial"),n.$finalTarget.length===1&&n.$finalTarget[0].id!==""&&n.xhr.setRequestHeader("X-Sircl-Target","#"+n.$finalTarget[0].id),n.xhr.setRequestHeader("X-Sircl-Timezone-Offset",(new Date).getTimezoneOffset()),n.xhr.send()));else{if(r=n.xhr.getResponseHeader("X-Sircl-History"),r=="back"||r=="back-uncached")if(window.history.length<=1){if(u=n.xhr.getResponseHeader("X-Sircl-History-AllowClose"),u&&u.toLowerCase()=="true"){window.close();return}if(u){if(sircl.ext.confirm(null,u,null)){window.close();return}}else console.info('"X-Sircl-History: back" header with no previous page and without "X-Sircl-History-AllowClose" header has no effect.')}else r=="back"?n.action="history:back":r=="back-uncached"&&(n.action="history:back-uncached");else(r=="reload"||r=="refresh")&&(n.action="history:reload");if(n.$newTarget=="_self"?n.method=="get"||r!=null?(n.$finalTarget=null,n.targetMethod=null,n.targetHasChanged=!0):console.warn("X-Sircl-Target response header value '_self' is only vaid for 'get' requests."):n.$newTarget=="main"?(n.$finalTarget=sircl.ext.$mainTarget(),n.targetMethod=null,n.targetHasChanged=!0):n.$newTarget!=null&&(n.$finalTarget=sircl.ext.$select(n.$trigger,n.$newTarget),n.targetMethod=null,n.targetHasChanged=!0),n.method=="get"&&n.responseText!=null&&n.responseText.length>1024&&n.responseText.substr(0,1024).indexOf("=0){console.warn("The request to '"+n.action+"' returned a full page and has been re-issued to handle as full page. Consider returning a partial page or set target='_self' on the link to avoid double request.");window.location.href=n.action;return}if(n.method=="get"&&n.$finalTarget!==null&&n.$finalTarget.is("*[sircl-appid]")){if(n.$finalTarget.is("*[sircl-appmode='strict']")&&n.xhr.getResponseHeader("X-Sircl-AppId")!==n.$finalTarget.attr("sircl-appid")){console.warn("The request to '"+n.action+"' is part of another application and has been re-issued as full page request. Consider using a target='_self' on the link to avoid double request.");window.location.href=n.action;return}if(n.xhr.getResponseHeader("X-Sircl-AppId")!==null&&n.xhr.getResponseHeader("X-Sircl-AppId")!==n.$finalTarget.attr("sircl-appid")){console.warn("The request to '"+n.action+"' is part of another application and has been re-issued as full page request. Consider using a target='_self' on the link to avoid double request.");window.location.href=n.action;return}}n.xhr.getResponseHeader("X-Sircl-Document-Title")!==null&&(n.documentTitle=decodeURIComponent(n.xhr.getResponseHeader("X-Sircl-Document-Title")));n.documentLanguage=n.xhr.getResponseHeader("X-Sircl-Document-Language");n.xhr.getResponseHeader("X-Sircl-Alert-Message")!==null&&(n.alertMsg=decodeURIComponent(n.xhr.getResponseHeader("X-Sircl-Alert-Message")));n.newTargetMethod!==null?n.targetMethod=n.newTargetMethod:n.targetMethod==null&&n.$finalTarget!=null&&(n.targetMethod=n.$finalTarget.attr("target-method"));n.historyReplace=n.xhr.getResponseHeader("X-Sircl-History-Replace");n.xhr.status<=299||n.acceptStatus.indexOf(n.xhr.status)>=0?(n.aborted=!1,n.succeeded=!0,t.next(n)):(n.aborted=!1,n.succeeded=!1,t.error(n))}});n.$initialTarget!=null&&n.$initialTarget.length==1&&(n.$initialTarget[0].__pendingReq!=null&&n.$initialTarget[0].__pendingReq.xhr!=null&&n.$initialTarget[0].__pendingReq.xhr.readyState!=4&&n.$initialTarget[0].__pendingReq.xhr.abort(),n.$initialTarget[0].__pendingReq=n);n.xhr.send(n.formData)};SirclRequestProcessor.prototype._process=function(n){if(n.historyReplace){var t=window.history.state;t!=null&&(t.url=n.historyReplace);window.history.replaceState(t,n.documentTitle||window.document.title,n.historyReplace)}n.alertMsg&&sircl.ext.alert(sircl.ext.firstOrNull(n.$trigger),n.alertMsg,null);n.succeeded&&(n.action=="history:back"?window.history.back():n.action=="history:back-uncached"?(sircl.ext.$mainTarget().addClass("sircl-history-nocache-once"),window.history.back()):n.action=="history:reload"||n.action=="history:refresh"?sircl.singlePageMode==!1||n.$finalTarget==null?window.location.reload():sircl._processRequest({$trigger:null,$initialTarget:sircl.ext.$mainTarget(),targetMethod:null,action:window.location.href,method:"get",isForeground:!0,_historyMode:"skip"}):n.status!="204"&&this.next(n))};SirclRequestProcessor.prototype._render=function(n){var k=this,w,u,i,f,o,b,r,l,s,y,p;n._historyMode!="skip"&&n.method==="get"&&n.$finalTarget.is(sircl.ext.$mainTarget())&&(n._historyMode=n.getAttr("history")||"push",n._historyCached=n._historyMode.indexOf("cache")>=0,w={url:window.location.href,html:n._historyCached?n.$finalTarget.html():"",cached:n._historyCached,scrollX:window.scrollX,scrollY:window.scrollY,historyIndex:sircl._currentHistoryIndex},window.history.replaceState(w,window.document.title,w.url));n.documentTitle!=null&&(window.document.title=n.documentTitle);n.documentLanguage!=null&&$("HTML").attr("lang",n.documentLanguage);n._historyMode&&(u={url:n.action,html:"",cached:!1},n._historyMode.indexOf("skip")>=0||(n._historyMode.indexOf("replace")>=0?(u.historyIndex=sircl._currentHistoryIndex,window.history.replaceState(u,window.document.title,u.url),sircl._afterHistory()):(u.historyIndex=++sircl._currentHistoryIndex,window.history.pushState(u,window.document.title,u.url),sircl._afterHistory())));var t=n.$finalTarget,e=n.responseText,a=null;if(n!=null&&n.xhr!=null&&(a=n.xhr.getResponseHeader("X-Sircl-Sub-Target")||n.getAttr("sub-target")),i=n.$finalTarget.find(a),a!=null&&i.length>0){var d=!0,tt=$("
").append(n.responseText),c=tt.find(a);if(i.length==c.length){for(f=0;f=c.length){d=!1;break}}if(d){this.next(n);return}}}if(n.targetMethod==="append")r=t.children().length,t.append(e),t.children().slice(r).each(function(){sircl._afterLoad(this)});else if(n.targetMethod==="prepend")r=t.children().length,t.prepend(e),s=t.children().length,t.children().slice(0,s-r).each(function(){sircl._afterLoad(this)});else if(n.targetMethod==="replace"){var g=t.length==1?sircl.ext.getId(t[0],!1):null,v=t.parent(),nt=v.children(),r=nt.length,it=sircl.ext.getId(t,!0),h=-1;for(l=0;l-1&&r===s&&g!==null&&(y=v.children()[h],(y.id==null||y.id=="")&&(y.id=g));h>-1&&s>=r&&v.children().slice(h,h+s-r+1).each(function(){sircl._afterLoad(this)})}else{if(document.startViewTransition&&t.is("[onload-startviewtransition]"))if(t.is(sircl.mainTargetSelector$)&&n.method!=="get")t.html(e);else{p=[];n.method==="get"&&t.is(sircl.mainTargetSelector$)&&p.push(n.navDirection||"forwards");t.attr("onload-startviewtransition")!=""&&p.push(t.attr("onload-startviewtransition"));document.startViewTransition({update:()=>t.html(e),types:p}).updateCallbackDone.then(()=>{n.$finalTarget.each(function(){sircl.ext.visible(this,!0,!1,function(){k.next(n)})})});n.method==="get"&&n._historyMode!=="skip"&&n._historyMode!=="replace"&&t.is(sircl.mainTargetSelector$)&&window.scrollTo({top:0,left:0,behavior:sircl.scrollMode});return}else t.html(e);n.method==="get"&&n._historyMode!=="skip"&&n._historyMode!=="replace"&&t.is(sircl.mainTargetSelector$)&&window.scrollTo({top:0,left:0,behavior:sircl.scrollMode})}n.$finalTarget.each(function(){sircl.ext.visible(this,!0,!1,function(){k.next(n)})})};SirclRequestProcessor.prototype.next=function(n){if(this._steps.length>0){var t=this._steps[0];this._steps.splice(0,1);try{t.apply(this,arguments)}catch(i){sircl.handleError("S131","Error executing a RequestProcessor step: "+i,{exception:i,fx:t,request:n});this.next(n)}}else this._loadComplete&&this._loadComplete(n.responseText,n.statusText,n.xhr)};SirclRequestProcessor.prototype.error=function(n){this._steps=sircl._requestHandlers.onError.concat(this._steps);this.next(n)};$(document).ready(function(){sircl.singlePageMode=$(sircl.mainTargetSelector$).length>0;console.info("sircl.singlePageMode = "+sircl.singlePageMode+"");sircl.singlePageMode&&"scrollRestoration"in history&&(history.scrollRestoration="manual");$(document).on("click","*[href][disabled], [onclick-load][disabled]",function(n){n.preventDefault();n.stopPropagation()});$(document).on("click","*[href]:not([download]), [onclick-load]",function(n){var t,r,e,u,f,i,o,s;if($(this).is("[disabled]")){n.preventDefault();n.stopPropagation();return}if(this.hasAttribute("onclick-load")?(t=this.getAttribute("onclick-load"),r=!1):(t=this.getAttribute("href"),r=this.tagName==="A"),e=t,t=sircl.ext.subtituteFields(t,$(this),!0),u=t!=e,t!=="null"&&t!=="")if(t==="history:back"||t==="history:back-uncached")window.history.length<=1?$(this).hasAttr("onback-allowclose")?sircl.ext.confirm(this,$(this).attr("onback-allowclose"),n)&&window.close():$(this).hasClass("onback-allowclose")?window.close():console.warn('Link to "history:back" on first page without "onback-allowclose" attribute or class does nothing.'):t==="history:back"?window.history.back():t==="history:back-uncached"&&(sircl.ext.$mainTarget().addClass("sircl-history-nocache-once"),window.history.back());else if(t==="history:forward")window.history.forward();else if(t==="history:reload"||t==="history:refresh")sircl._onPageNavigate(n,$(this)),location.reload();else if(t.indexOf("alert:")===0)sircl.ext.alert(this,t.substring(6),n);else if(t.indexOf("javascript:")===0)f=this.getAttribute("nonce"),f?jQuery.globalEval(t.substring(11),{nonce:f}):jQuery.globalEval(t.substring(11));else{if(r&&t.indexOf("#")===0){sircl._onPageNavigate(n,$(this));return}if(t.indexOf("#")===0)sircl._onPageNavigate(n,$(this)),window.location.hash=t;else if(i=this.getAttribute("target"),i==null&&!sircl.singlePageMode||i!=null&&sircl.ext.isExternalTarget(i))if(sircl._onPageNavigate(n,$(this)),u&&i===null)window.location.href=t;else if(u)window.open(t,i);else{if(r)return;i==null?window.location.href=t:window.open(t,i)}else o=i!=null?sircl.ext.$select($(this),i):sircl.ext.$mainTarget(),s=this.getAttribute("target-method")||null,sircl._loadUrl($(this),t,o,s)}n.preventDefault();n.stopPropagation()});$(document).on("click","*[onclick-reload]",function(n){if($(this).is("[disabled]")){n.preventDefault();n.stopPropagation();return}sircl.ext.$select($(this),$(this).attr("onclick-reload")).filter("[onload-load]").each(function(){var n=$(this).attr("onload-load")+"";$(this).load(n.replace("{rnd}",Math.random()))})});$(document).on("click","form *:submit[disabled], *:submit[form][disabled]",function(n){n.preventDefault();n.stopPropagation()});sircl.addAttributeAlias(".onclick-submit","onclick-submit",":form");$(document).on("click","*[onclick-submit]",function(n){var t,i,r;(n.preventDefault(),n.stopPropagation(),$(this).is("[disabled]"))||(t=$(this),i=sircl.ext.$select(t,t.attr("onclick-submit")),i.length>=1&&(r=i[0],sircl.ext.submit(r,this,n,function(){r.submit()})))});$(document).on("submit","form:not([download]):not([method=dialog])",function(n){sircl.ext.submit(this,(n.originalEvent||n).submitter||(n.originalEvent||n).target,n)});$(document).on("keydown","[onkeyenter-click]",function(n){if(n.key==="Enter"&&n.target.tagName!=="TEXTAREA"&&n.target.tagName!=="BUTTON"&&n.target.tagName!=="A"){n.preventDefault();var t=$(this),i=sircl.ext.$select(t,t.attr("onkeyenter-click"));i.length>0&&i[0].click()}});$(document).on("keydown","[onkeyescape-click]",function(n){if(n.key==="Escape"){n.preventDefault();var t=$(this),i=sircl.ext.$select(t,t.attr("onkeyescape-click"));i.length>0&&i[0].click()}});$(document).on("keydown","FORM[default-submit-button] INPUT",function(n){var t,i;n.key==="Enter"?(n.preventDefault(),t=$(this).closest("FORM"),i=sircl.ext.$select(t,t.attr("default-submit-button")),i.length>0&&i[0].click()):n.key==="Escape"&&(n.preventDefault(),t=$(this).closest("FORM"),i=sircl.ext.$select(t,t.attr("default-cancel-button")),i.length>0&&i[0].click())})});sircl._contentReadyHandlers={};sircl._contentReadyHandlers.pageinit=[];sircl._contentReadyHandlers.before=[];sircl._contentReadyHandlers.content=[];sircl._contentReadyHandlers.enrich=[];sircl._contentReadyHandlers.process=[];sircl._contentReadyHandlers.after=[];sircl.addContentReadyHandler=function(n,t){this._contentReadyHandlers[n].push(t)};sircl._pageInit=function(n){sircl._contentReadyHandlers.pageinit.forEach(function(t){try{t.call(n)}catch(i){sircl.handleError("S120","Error executing a PageInit handler: "+i,{exception:i,fx:t})}})};sircl._beforeUnload=function(n){sircl._contentReadyHandlers.before.forEach(function(t){try{t.call(n)}catch(i){sircl.handleError("S121","Error executing a BeforeUnLoad handler: "+i,{exception:i,fx:t})}})};sircl._afterLoad=function(n){$(n).addClass("sircl-content-processing");sircl._contentReadyHandlers.content.forEach(function(t){try{t.call(n)}catch(i){sircl.handleError("S122","Error executing an AfterLoad content handler: "+i,{exception:i,fx:t})}});sircl._contentReadyHandlers.enrich.forEach(function(t){try{t.call(n)}catch(i){sircl.handleError("S123","Error executing an AfterLoad enrich handler: "+i,{exception:i,fx:t})}});sircl._contentReadyHandlers.process.forEach(function(t){try{t.call(n)}catch(i){sircl.handleError("S124","Error executing an AfterLoad process handler: "+i,{exception:i,fx:t})}});$(n).removeClass("sircl-content-processing");sircl._contentReadyHandlers.after.forEach(function(t){try{t.call(n)}catch(i){sircl.handleError("S125","Error executing an AfterLoad process handler: "+i,{exception:i,fx:t})}})};sircl._pageNavigateHandlers={};sircl._pageNavigateHandlers.initiate=[];sircl._pageNavigateHandlers.cancel=[];sircl.addPageNavigateHandler=function(n,t){sircl._pageNavigateHandlers[n].push(t)};sircl._onPageNavigate=function(n,t,i){if(t!=null&&t.length>=1&&t.closest(".onnavigate").length>0){var r={event:n,$trigger:t,$form:i};sircl.lastPageNavigationObject=r;sircl._pageNavigateHandlers.initiate.forEach(function(n){try{n.call(null,r)}catch(t){sircl.handleError("S161","Error executing a Page Navigate handler: "+t,{exception:t,fx:n})}})}};sircl.cancelPageNavigate=function(){if(sircl.lastPageNavigationObject!==null){var n=sircl.lastPageNavigationObject;sircl._pageNavigateHandlers.cancel.forEach(function(t){try{t.call(null,n)}catch(i){sircl.handleError("S162","Error executing a Page Navigate cancellation handler: "+i,{exception:i,fx:t})}});sircl.lastPageNavigationObject=null}};sircl.addContentReadyHandler("content",function(){$(this).filter("[onload-copyto]").add($(this).find("*[onload-copyto]")).each(function(){var n=$(this).html();sircl.ext.$select($(this),$(this).attr("onload-copyto")).html(n)});$(this).filter("[onload-moveto]").add($(this).find("*[onload-moveto]")).each(function(){var n=$(this).html();$(this).html(null);sircl.ext.$select($(this),$(this).attr("onload-moveto")).html(n)})});sircl.addContentReadyHandler("process",function(){var n=$(this).find("[document-title]");n.length>0&&(document.title=n[0].getAttribute("document-title"))});sircl.addContentReadyHandler("after",function(){$(this).find("*[autofocus]:first").each(function(){try{this.focus()}catch(n){}try{this.select()}catch(n){}})});sircl_elementIdToFocus=null;sircl.addRequestHandler("beforeRender",function(n){sircl_elementIdToFocus=sircl.ext.getId(document.activeElement,!1);this.next(n)});sircl.addRequestHandler("afterRender",function(n){var t,r,i;try{if(t=n.$finalTarget.find("*[autofocus]:first").length>0,t===!1&&sircl_elementIdToFocus!==null&&sircl_elementIdToFocus!==""&&n.$finalTarget.find("#"+sircl_elementIdToFocus).each(function(){this.focus();t=!0}),sircl_elementIdToFocus=null,t===!1&&n.$finalTarget.hasClass("onload-autofocus"))for(r=n.$finalTarget.find("INPUT:not([type='hidden']), SELECT, TEXTAREA, BUTTON, [tabindex]").filter(":not([disabled]):not([tabindex='-1'])").toArray();r.length>0;)if(i=r.shift(),!i.checkVisibility||i.checkVisibility()){i.focus();break}}catch(u){}this.next(n)});sircl.addAttributeAlias(".target","target",":this");sircl._errorHandlers=[];sircl.addErrorHandler=function(n){this._errorHandlers.push(n)};sircl.handleError=function(n,t,i){i=i||{};this._errorHandlers.forEach(function(r){try{r(n,t,i)}catch(u){console.error("Sircl S999 - Error in error handler.",{exception:u,fx:r})}})};sircl.addErrorHandler(function(n,t,i){console.error("Sircl "+n+" - "+t,i)});sircl._afterHistoryHandlers=[];sircl.addAfterHistoryHandler=function(n){this._afterHistoryHandlers.push(n)};sircl._afterHistory=function(){this._afterHistoryHandlers.forEach(function(n){try{n()}catch(t){sircl.handleError("S130","Error executing an After history handler: "+t,{exception:t,fx:n})}})};document.addEventListener("DOMContentLoaded",function(){window.onpopstate=function(n){var t=n.state,i=null,r;t&&(r=t.historyIndex>sircl._currentHistoryIndex?"forwards":t.historyIndexsircl.ext.$mainTarget().html(t.html),types:[r,sircl.ext.$mainTarget().attr("onload-startviewtransition")]}).updateCallbackDone.then(()=>{sircl._afterHistory()}):(sircl.ext.$mainTarget().html(t.html),sircl._afterHistory()):sircl._processRequest({$trigger:null,$initialTarget:sircl.ext.$mainTarget(),targetMethod:null,action:t.url,method:"get",isForeground:!0,navDirection:r,_historyMode:"skip"},i))};sircl._afterHistory()});sircl.addRequestHandler("beforeSend",function(n){n.$trigger!=null&&n.$trigger.length==1&&n.$trigger.is(".onclick-disable")&&(n.$trigger[0].tagName=="BUTTON"||n.$trigger[0].tagName=="INPUT"?(n._disabled_to_restore=n.$trigger[0],n._disabled_to_restore.disabled=!0):(n._disabledclass_to_restore=n.$trigger,sircl.ext.enabled(n._disabledclass_to_restore,!1)));this.next(n)});sircl.addRequestHandler("afterSend",function(n){n._disabled_to_restore&&(n._disabled_to_restore.disabled=!1);n._disabledclass_to_restore&&sircl.ext.enabled(n._disabledclass_to_restore,!0);this.next(n)});sircl.addPageNavigateHandler("initiate",function(n){n.$trigger!=null&&n.$trigger.length==1&&n.$trigger.is(".onclick-disable")&&(n.$trigger[0].tagName=="BUTTON"||n.$trigger[0].tagName=="INPUT"?(n._disabled_to_restore=n.$trigger[0],n._disabled_to_restore.disabled=!0):(n._disabledclass_to_restore=n.$trigger,sircl.ext.enabled(n._disabledclass_to_restore,!1)))});sircl.addPageNavigateHandler("cancel",function(n){n._disabled_to_restore&&(n._disabled_to_restore.disabled=!1);n._disabledclass_to_restore&&sircl.ext.enabled(n._disabledclass_to_restore,!0)});document.addEventListener("DOMContentLoaded",function(){$(document).on("click",".onclick-spin",function(){var t=$(this).find("> .spinner"),n,i;t.length>0&&(n=$(this),i=n[0].innerHTML,setTimeout(function(){n[0].innerHTML=i},500),t[0].outerHTML=sircl.html_spinner)})});sircl.addRequestHandler("beforeSend",function(n){if(n.$trigger!=null&&n.$trigger.length==1&&n.$trigger[0].tagName!="FORM"){var t=n.$trigger.find("> .spinner");t.length>0&&(n._spinner_to_restore=n.$trigger[0].innerHTML,t[0].outerHTML=sircl.html_spinner)}this.next(n)});sircl.addRequestHandler("afterSend",function(n){n._spinner_to_restore&&(n.$trigger[0].innerHTML=n._spinner_to_restore);this.next(n)});sircl.addPageNavigateHandler("initiate",function(n){if(n.$trigger!=null&&n.$trigger.length==1&&n.$trigger[0].tagName!="FORM"){var t=n.$trigger.find(".spinner");t.length>0&&(n._spinner_to_restore=n.$trigger[0].innerHTML,t[0].outerHTML=sircl.html_spinner)}});sircl.addPageNavigateHandler("cancel",function(n){n._spinner_to_restore&&(n.$trigger[0].innerHTML=n._spinner_to_restore)});sircl.addRequestHandler("beforeSend",function(n){var i=n.$initialTarget.find(".overlay"),t,r,f,e,u,o;if(i.length>0){for(t=i.first(),r=1;r0){for(t=i.first(),r=1;r0&&(t.each(function(){this.removeAttribute("value");n._progressToResetAfterSend.push(this);sircl.ext.visible(this)||(n._progressToHideAfterSend.push(this),sircl.ext.visible(this,!0,!1))}),n.xhr.upload.addEventListener("progress",function(n){n.lengthComputable&&t.each(function(){this.value=n.loaded/n.total})})),i=sircl.ext.$select(n.$initialTarget,n.$initialTarget.attr("download-progress")).filter("PROGRESS"),i.length>0&&(i.each(function(){this.removeAttribute("value");n._progressToResetAfterSend.push(this);sircl.ext.visible(this)||(n._progressToHideAfterSend.push(this),sircl.ext.visible(this,!0,!1))}),n.xhr.addEventListener("progress",function(n){n.lengthComputable&&i.each(function(){this.value=n.loaded/n.total})})));this.next(n)});sircl.addRequestHandler("afterSend",function(n){n._progressToHideAfterSend.forEach(function(n){sircl.ext.visible(n,!1,!1)});n._progressToResetAfterSend.forEach(function(n){n.value=0});this.next(n)});sircl.addRequestHandler("afterSend",function(n){if(n.$finalTarget&&n.$finalTarget.is(".diffcheck")&&n.succeeded&&n.$finalTarget.length==1){var t=n.$finalTarget[0].sirclDiffCheckCached;t==n.responseText?(n.succeeded=!1,n.aborted=!0):n.$finalTarget[0].sirclDiffCheckCached=n.responseText}this.next(n)});sircl.addRequestHandler("afterRender",function(n){var t,i;n.xhr!=null&&(t=n.xhr.getResponseHeader("X-Sircl-Reload-After"),t&&(i=parseFloat(t),t>0&&n.method=="get"&&setTimeout(function(){n.$finalTarget.load(n.url)},i*1e3)));this.next(n)});sircl.addAttributeAlias(".onclick-closedialog","onclick-closedialog","0&&(n.is(".dialog-exclusive")&&$("DIALOG[open]").each(function(){n.is($(this))||this.close()}),n.hasClass("dialog-modal")?n[0].showModal():n[0].show())});$(document).on("click","[onclick-closedialog]",function(){for(var t=sircl.ext.$select($(this),$(this).attr("onclick-closedialog")),n=0;n0&&(n._dialogOpened.is(".dialog-exclusive")&&$("DIALOG[open]").each(function(){$(this).is(n.$finalTarget)||this.close()}),n._dialogOpened.hasClass("dialog-modal")?n._dialogOpened[0].showModal():n._dialogOpened[0].show());t.next(n)});sircl.addRequestHandler("afterSend",function(n){var i=this,t;!n.succeeded&&n._dialogOpened.length>0?(n._dialogOpened[0].close(),n._dialogOpened=$([])):n.status=="204"&&(t=n.$initialTarget.closest("DIALOG[open]"),t.length>0&&t[0].close());i.next(n)});sircl.addRequestHandler("beforeRender",function(n){var i=this,t;n.targetHasChanged&&n._dialogOpened.length>0&&(n.$finalTarget.has(n._dialogOpened)||(n._dialogOpened[0].close(),n._dialogOpened=$([])));t=n.$finalTarget.closest("DIALOG");t.is(".dialog-exclusive")&&$("DIALOG[open]").each(function(){t.is($(this))||this.close()});n.isForeground==!0&&t.length==0&&n.$trigger!=null&&n.$trigger.length>0&&n.$trigger.closest("DIALOG").length>0&&n.$trigger.closest("DIALOG")[0].close();i.next(n)});sircl.addRequestHandler("afterRender",function(n){var i=this,t=n.$finalTarget.closest("DIALOG:not([open])");t.length>0&&(t.hasClass("dialog-modal")?t[0].showModal():t[0].show());i.next(n)});sircl.addContentReadyHandler("process",function(){$(this).find("DIALOG").each(function(n,t){t.addEventListener("cancel",function(n){$(this).is(".dialog-nocancel")&&n.preventDefault()})});$(this).find("DIALOG.onclose-restore").each(function(n,t){t._originalContent=$(t).html();t.addEventListener("close",function(){var n=this._originalContent;n!==undefined&&$(this).html(n)})});$(this).find("DIALOG[onload-showdialogafter]").each(function(){for(var n=0,i=$(this).attr("onload-showdialogafter").split(":"),t=0;t0&&n.val(!0)})})});sircl.addAttributeAlias(".oninput-change","oninput-changeafter","0.8");sircl.addAttributeAlias(".onchange-submit","onchange-submit",":form");document.addEventListener("DOMContentLoaded",function(){$(document).on("change","[onchange-submit]",function(n){if(n.currentTarget==$(n.target).closest("[onchange-submit]")[0]&&$(n.target).closest(".onchange-nosubmit").length==0&&$(n.target).closest(".sircl-content-processing").length==0){var t=sircl.ext.$select($(this),$(this).attr("onchange-submit"));t.length>0&&setTimeout(function(){sircl.ext.submit(t[0],n.target,n,function(){t[0].submit()})},0)}});$(document).on("input","INPUT[oninput-changeafter], TEXTAREA[oninput-changeafter]",function(){var n=1e3*$(this).attr("oninput-changeafter");this._oninput_changeafter_timeout&&clearTimeout(this._oninput_changeafter_timeout);this._oninput_changeafter_timeout=setTimeout(function(n){$(n).trigger("change")},n,this)});$(document.body).on("change","INPUT[oninput-changeafter], TEXTAREA[oninput-changeafter]",function(n){var t=$(this).val(),i=this._previousChangeValue;t===i?(n.preventDefault(),n.stopPropagation()):this._previousChangeValue=t})});sircl.addAttributeAlias(".onsubmit-disable","onsubmit-disable",">:submit");sircl.addRequestHandler("beforeSend",function(n){n.$form&&n.$form.hasAttr("onsubmit-disable")&&(n._formSubmitsToReenable=[],sircl.ext.$select(n.$form,n.$form.attr("onsubmit-disable")).filter(":not([disabled])").each(function(){n._formSubmitsToReenable.push(this);sircl.ext.enabled(this,!1)}));this.next(n)});sircl.addRequestHandler("afterSend",function(n){n._formSubmitsToReenable&&n._formSubmitsToReenable.forEach(function(n){sircl.ext.enabled(n,!0)});this.next(n)});sircl.addPageNavigateHandler("initiate",function(n){n.$form&&n.$form.hasAttr("onsubmit-disable")&&(n._formSubmitsToReenable=[],sircl.ext.$select(n.$form,n.$form.attr("onsubmit-disable")).filter(":not([disabled])").each(function(){n._formSubmitsToReenable.push(this);sircl.ext.enabled(this,!1)}))});sircl.addPageNavigateHandler("cancel",function(n){n._formSubmitsToReenable&&n._formSubmitsToReenable.forEach(function(n){sircl.ext.enabled(n,!0)})});$(document).on("submit","[onsubmit-removeclass]",function(){sircl.ext.removeClass($(this),$(this).attr("onsubmit-removeclass"))});$(document).on("submit","[onsubmit-addclass]",function(){sircl.ext.addClass($(this),$(this).attr("onsubmit-addclass"))});$(document).on("submit","[onsubmit-hide]",function(){sircl.ext.visible(sircl.ext.$select($(this),$(this).attr("onsubmit-hide")),!1,!0)});$(document).on("submit","[onsubmit-show]",function(){sircl.ext.visible(sircl.ext.$select($(this),$(this).attr("onsubmit-show")),!0,!0)});document.addEventListener("DOMContentLoaded",function(){$(document.body).on("click","*[onclick-propagate=off]",function(n){n.stopPropagation()});$(document.body).on("dblclick","*[ondblclick-propagate=off]",function(n){n.stopPropagation()});$(document.body).on("change","*[onchange-propagate=off]",function(n){n.stopPropagation()});$(document.body).on("input","*[oninput-propagate=off]",function(n){n.stopPropagation()})});sircl.addAttributeAlias(".onload-click","onload-click",":this");sircl.addContentReadyHandler("process",function(){$(this).find("[onload-click]").each(function(){sircl.ext.$select($(this),$(this).attr("onload-click")).each(function(){this.click()})});$(this).find("[onload-load]").each(function(){var n=$(this).attr("onload-load")+"",r,u,t,i;if(n=sircl.ext.subtituteFields(n,$(this),!0),$(this).load(n.replace("{rnd}",Math.random())),r=$(this).attr("onload-reloadafter"),r){for(u=r.split(":"),t=0,i=0;i0&&["true","on"].indexOf((n.val()||"false").toLowerCase())>=0&&($(this).addClass("form-changed"),$(this).trigger("change"))}else $(this).find("FORM[onchange-set]").each(function(){var n=$(this).find("INPUT[name='"+$(this).attr("onchange-set")+"']");n.length>0&&["true","on"].indexOf((n.val()||"false").toLowerCase())>=0&&($(this).addClass("form-changed"),$(this).trigger("change"))})});sircl.addRequestHandler("afterRender",function(n){if(n!=null&&n.xhr!=null){var t=n.xhr.getResponseHeader("X-Sircl-Form-Changed");t!==null&&t.toLowerCase()==="true"&&n.$finalTarget.closest("FORM[onchange-set]").add(n.$finalTarget.find("FORM[onchange-set]")).each(function(){$(this).addClass("form-changed");$(this).trigger("change");var n=$(this).find("INPUT[name='"+$(this).attr("onchange-set")+"']");n.length>0&&n.val(!0)})}this.next(n)});document.addEventListener("DOMContentLoaded",function(){$(document).on("change","FORM[onchange-set]",function(n){if($(n.target).closest(".onchange-ignore").length==0&&$(n.target).closest(".sircl-content-processing").length==0){$(this).addClass("form-changed");var t=$(this).find("INPUT[name='"+$(this).attr("onchange-set")+"']");t.length>0&&t.val(!0)}});$(document.body).on("click","*[href]:not(.onunloadchanged-allow):not([download])",function(n){var t=$("FORM.form-changed[onunloadchanged-confirm]"),i;t.length!==0&&(this.hasAttribute("target")&&sircl.ext.isExternalTarget(this.getAttribute("target"))&&this.getAttribute("target")!=="_self"&&this.getAttribute("target")!=="_top"||(i=t[0].getAttribute("onunloadchanged-confirm"),sircl.ext.confirm(this,i,n)||(n.stopPropagation(),n.preventDefault())))});$(document.body).on("click","FORM.form-changed *[onclickchanged-confirm]",function(n){var t=$(this).attr("onclickchanged-confirm");sircl.ext.confirm(this,t,n)||(n.stopPropagation(),n.preventDefault())})});document.addEventListener("DOMContentLoaded",function(){$(document).on("click",".hash-routed[href^=\\#]",function(){var i=this.getAttribute("href"),t=window.location.href.replace(/(#.*|$)/i,i),n=window.history.state;n!=null&&(n.url=t);$(this).closest(".hash-routed").is("[history=push]")?(n!=null&&(n.historyIndex=++sircl._currentHistoryIndex),window.history.pushState(n,document.title,t)):window.history.replaceState(n,document.title,t)});$(window).on("hashchange",function(n){var t=$(document).find(".hash-routed[href=\\"+location.hash+"]");t.length>0&&(n.preventDefault(),t.each(function(){this.click()}))})});sircl.addContentReadyHandler("process",function(){$(this).find(".hash-routed [href^=\\#]:not([download])").each(function(){$(this).addClass("hash-routed")});location.hash!=null&&location.hash.length>0&&$(this).find(".hash-routed[href=\\"+location.hash+"]").each(function(){this.click()})});sircl.relativeCssSelectorHandlers=[];sircl.handleRelativeCssSelectorsIn=function(n,t,i){const r="["+t+"]";sircl.relativeCssSelectorHandlers.push(function(u){u.find(n).filter(r).each(function(){var e=this.getAttribute(t),n,r,f,u;if(!e.startsWith("#")){if(n=sircl.ext.$select(this,e),n.length===0)r="#notfound";else if(i!==!0)r="#"+sircl.ext.getId(n[0],!0);else for(f="",r="",u=0;u