PageSourceSearch

https://www.24high.nl/js/js.php?v=1789412019&m=base64%3Bsha256%3Bh…_phr%3Bh_tlt%3Bh_deb%3Bh_sld%3Bh_jqp%3Bh_cs

js 24high.nl collected 2026-10-05 04:45:51 UTC 79,319 bytes, 480 lines download raw bytes

1var Base64={_keyStr:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",encode:function(input){var output="";var chr1,chr2,chr3,enc1,enc2,enc3,enc4;var i=0;input=Base64._utf8_encode(input);while(i<input.length){chr1=input.charCodeAt(i++);chr2=input.charCodeAt(i++);chr3=input.charCodeAt(i++);enc1=chr1>>2;enc2=((chr1&3)<<4)|(chr2>>4);enc3=((chr2&15)<<2)|(chr3>>6);enc4=chr3&63;if(isNaN(chr2)){enc3=enc4=64;}else if(isNaN(chr3)){enc4=64;}
2output=output+
3this._keyStr.charAt(enc1)+this._keyStr.charAt(enc2)+
4this._keyStr.charAt(enc3)+this._keyStr.charAt(enc4);}
5return output;},decode:function(input){var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");while(i<input.length){enc1=this._keyStr.indexOf(input.charAt(i++));enc2=this._keyStr.indexOf(input.charAt(i++));enc3=this._keyStr.indexOf(input.charAt(i++));enc4=this._keyStr.indexOf(input.charAt(i++));chr1=(enc1<<2)|(enc2>>4);chr2=((enc2&15)<<4)|(enc3>>2);chr3=((enc3&3)<<6)|enc4;output=output+String.fromCharCode(chr1);if(enc3!=64){output=output+String.fromCharCode(chr2);}
6if(enc4!=64){output=output+String.fromCharCode(chr3);}}
7output=Base64._utf8_decode(output);return output;},_utf8_encode:function(string){string=string.replace(/\r\n/g,"\n");var utftext="";for(var n=0;n<string.length;n++){var c=string.charCodeAt(n);if(c<128){utftext+=String.fromCharCode(c);}
8else if((c>127)&&(c<2048)){utftext+=String.fromCharCode((c>>6)|192);utftext+=String.fromCharCode((c&63)|128);}
9else{utftext+=String.fromCharCode((c>>12)|224);utftext+=String.fromCharCode(((c>>6)&63)|128);
9utftext+=String.fromCharCode((c&63)|128);}}
10return utftext;},_utf8_decode:function(utftext){var string="";var i=0;var c=c1=c2=0;while(i<utftext.length){c=utftext.charCodeAt(i);if(c<128){string+=String.fromCharCode(c);i++;}
11else if((c>191)&&(c<224)){c2=utftext.charCodeAt(i+1);string+=String.fromCharCode(((c&31)<<6)|(c2&63));i+=2;}
12else{c2=utftext.charCodeAt(i+1);c3=utftext.charCodeAt(i+2);string+=String.fromCharCode(((c&15)<<12)|((c2&63)<<6)|(c3&63));i+=3;}}
13return string;}};var CryptoJS=CryptoJS||function(h,s){var f={},t=f.lib={},g=function(){},j=t.Base={extend:function(a){g.prototype=this;var c=new g;a&&c.mixIn(a);c.hasOwnProperty("init")||(c.init=function(){c.$super.init.apply(this,arguments)});c.init.prototype=c;c.$super=this;return c},create:function(){var a=this.extend();a.init.apply(a,arguments);return a},init:function(){},mixIn:function(a){for(var c in a)a.hasOwnProperty(c)&&(this[c]=a[c]);a.hasOwnProperty("toString")&&(this.toString=a.toString)},clone:function(){return this.init.prototype.extend(this)}},q=t.WordArray=j.extend({init:function(a,c){a=this.words=a||[];this.sigBytes=c!=s?c:4*a.length},toString:function(a){return(a||u).stringify(this)},concat:function(a){var c=this.words,d=a.words,b=this.sigBytes;a=a.sigBytes;this.clamp();if(b%4)for(var e=0;e<a;e++)c[b+e>>>2]|=(d[e>>>2]>>>24-8*(e%4)&255)<<24-8*((b+e)%4);else if(65535<d.length)for(e=0;e<a;e+=4)c[b+e>>>2]=d[e>>>2];else c.push.apply(c,d);this.sigBytes+=a;return this},clamp:function(){var a=this.words,c=this.sigBytes;a[c>>>2]&=4294967295<<32-8*(c%4);a.length=h.ceil(c/4)},clone:function(){var a=j.clone.call(this);a.words=this.words.slice(0);return a},random:function(a){for(var c=[],d=0;d<a;d+=4)c.push(4294967296*h.random()|0);return new q.init(c,a)}}),v=f.enc={},u=v.Hex={stringify:function(a){var c=a.words;a=a.sigBytes;for(var d=[],b=0;b<a;b++){var e=c[b>>>2]>>>24-8*(b%4)&255;d.push((e>>>4).toString(16));d.push((e&15).toString(16))}return d.join("")},parse:function(a){for(var c=a.length,d=[],b=0;b<c;b+=2)d[b>>>3]|=parseInt(a.substr(b,2),16)<<24-4*(b%8);return new q.init(d,c/2)}},k=v.Latin1={stringify:function(a){var c=a.words;a=a.sigBytes;for(var d=[],b=0;b<a;b++)d.push(String.fromCharCode(c[b>>>2]>>>24-8*(b%4)&255));return d.join("")},parse:function(a){for(var c=a.length,d=[],b=0;b<c;b++)d[b>>>2]|=(a.charCodeAt(b)&255)<<24-8*(b%4);return new q.init(d,c)}},l=v.Utf8={stringify:function(a){try{return decodeURIComponent(escape(k.stringify(a)))}catch(c){throw Error("Malformed UTF-8 data");}},parse:function(a){return k.parse(unescape(encodeURIComponent(a)))}},x=t.BufferedBlockAlgorithm=j.extend({reset:function(){this._data=new q.init;this._nDataBytes=0},_append:function(a){"string"==typeof a&&(a=l.parse(a));this._data.concat(a);this._nDataBytes+=a.sigBytes},_process:function(a){var c=this._data,d=c.words,b=c.sigBytes,e=this.blockSize,f=b/(4*e),f=a?h.ceil(f):h.max((f|0)-this._minBufferSize,0);a=f*e;b=h.min(4*a,b);if(a){for(var m=0;m<a;m+=e)this._doProcessBlock(d,m);m=d.splice(0,a);c.sigBytes-=b}return new q.init(m,b)},clone:function(){var a=j.clone.call(this);a._data=this._data.clone();return a},_minBufferSize:0});t.Hasher=x.extend({cfg:j.extend(),init:function(a){this.cfg=this.cfg.extend(a);this.reset()},reset:function(){x.reset.call(this);this._doReset()},update:function(a){this._append(a);this._process();return this},finalize:function(a){a&&this._append(a);return this._doFinalize()},blockSize:16,_createHelper:function(a){return function(c,d){return(new a.init(d)).finalize(c)}},_createHmacHelper:function(a){return function(c,d){return(new w.HMAC.init(a,d)).finalize(c)}}});var w=f.algo={};return f}(Math);(function(h){for(var s=CryptoJS,f=s.lib,t=f.WordArray,g=f.Hasher,f=s.algo,j=[],q=[],v=function(a){return 4294967296*(a-(a|0))|0},u=2,k=0;64>k;){var l;a:{l=u;for(var x=h.sqrt(l),w=2;w<=x;w++)if(!(l%w)){l=!1;break a}l=!0}l&&(8>k&&(j[k]=v(h.pow(u,0.5))),q[k]=v(h.pow(u,1/3)),k++);u++}var a=[],f=f.SHA256=g.extend({_doReset:function(){this._hash=new t.init(j.slice(0))},_doProcessBlock:function(c,d){for(var b=this._hash.words,e=b[0],f=b[1],m=b[2],h=b[3],p=b[4],j=b[5],k=b[6],l=b[7],n=0;64>n;n++){if(16>n)a[n]=c[d+n]|0;else{var r=a[n-15],g=a[n-2];a[n]=((r<<25|r>>>7)^(r<<14|r>>>18)^r>>>3)+a[n-7]+((g<<15|g>>>17)^(g<<13|g>>>19)^g>>>10)+a[n-16]}r=l+((p<<26|p>>>6)^(p<<21|p>>>11)^(p<<7|p>>>25))+(p&j^~p&k)+q[n]+a[n];g=((e<<30|e>>>2)^(e<<19|e>>>13)^(e<<10|e>>>22))+(e&f^e&m^f&m);l=k;k=j;j=p;p=h+r|0;h=m;m=f;f=e;e=r+g|0}b[0]=b[0]+e|0;b[1]=b[1]+f|0;b[2]=b[2]+m|0;b[3]=b[3]+h|0;b[4]=b[4]+p|0;b[5]=b[5]+j|0;b[6]=b[6]+k|0;b[7]=b[7]+l|0},_doFinalize:function(){var a=this._data,d=a.words,b=8*this._nDataBytes,e=8*a.sigBytes;d[e>>>5]|=128<<24-e%32;d[(e+64>>>9<<4)+14]=h.floor(b/4294967296);d[(e+64>>>9<<4)+15]=b;a.sigBytes=4*d.length;this._process();return this._hash},clone:function(){var a=g.clone.call(this);a._hash=this._hash.clone();return a}});s.SHA256=g._createHelper(f);s.HmacSHA256=g._createHmacHelper(f)})(Math);var sha256=sha256||function(str){return CryptoJS.SHA256(str).toString();};(function($){var defaultParams={"ajax":"true"};$.ajaxPrefilter(function(options,originalOptions,jqXHR){if(options.data instanceof FormData){for(var n in defaultParams){options.data.append(n,defaultParams[n]);}}else{var params=options.data||"";if(params!=""){params+="&";}
14params+=$.param(defaultParams);options.data=params;}
15if($.cookie("debugmode")){jqXHR.always(function(data,textStatus,jqXHR){console.groupCollapsed('Ajax data');console.dir(data);console.groupEnd();});}
16jqXHR.then(function(data,textStatus,jqXHR){var cancelExecution=false;try{var json=$.parseJSON(data);if($.isPlainObject(json)){if(json.logoff){if(json.message)
17alert(json.message);cancelExecution=true;window.location=json.url?json.url:window.location;}}}catch(err){}
18if(cancelExecution){$.error("User isn't logged in.");}});});})(jQuery);class JsRequest{static debugMode=false;static handleErrors=true;static showLoader=true;constructor(url,data){if(typeof url==='object'){this._data=url;this._url=null;}else{this._data=data;this._url=url;}
19if(typeof this._data!=='object'){this._data={};}
20if(this._data instanceof FormData){this._data.append("ajax","true");}else{this._data.ajax=true;}
21this._responseData=null;this._formData=null;this._abortController=null;this._loader=null;this._idle=true;this._allowSimultaneousRequests=false;this._events={'start':[],'error':[],'success':[],'finally':[]};}
22setUrl(url){this._url=url;return this;}
23setLoader(enable){this._loader=enable;return this;}
24setTypeDefault(){this._type=null;return this;}
25setTypeJSON(){this._type="json";return this;}
26setAllowSimultaneousRequests(allow){this._allowSimultaneousRequests=!!allow;return this;}
27setData(key,value,replaceFormData=true){if(key instanceof FormData){for(let[k,v]of key.entr
27ies()){this.setData(k,v);}
28return this;}else if(typeof key==='object'){for(let k in key){this.setData(k,key[k]);}
29return this;}
30if(this._data instanceof FormData){if(replaceFormData){this._data.delete(key);}
31this._data.append(key,value);}else{this._data[key]=value;}
32return this;}
33removeData(key){if(this._data instanceof FormData){this._data.delete(key);}else{delete this._data[key];}
34return this;}
35on(event,callback){if(this._events[event]){this._events[event].push(callback);}
36return this;}
37off(event,callback){if(this._events[event]){this._events[event]=this._events[event].filter(cb=>cb!==callback);}
38return this;}
39_triggerEvent(event){if(this._events[event]){this._events[event].forEach(callback=>callback(this));}}
40post(handler){this._method="POST";return this._fetch(handler);}
41get(handler){this._method="GET";return this._fetch(handler);}
42form(formElement,handler,submitImmediately){this._method="POST";if(!(formElement instanceof HTMLElement)){formElement=document.querySelector(formElement);}
43formElement.addEventListener("submit",(event)=>{event.preventDefault();if(!formElement.checkValidity()){formElement.reportValidity();return;}
44this._formData=new FormData(formElement);this._fetch(handler);});if(submitImmediately){JsRequest.dispatchSubmit(formElement);}
45return this;}
46static dispatchSubmit(formElement){if(!(formElement instanceof HTMLElement)){formElement=document.querySelector(formElement);}
47formElement.dispatchEvent(new Event("submit",{cancelable:true}));}
48put(handler){this._method="PUT";return this._fetch(handler);}
49delete(handler){this._method="DELETE";return this._fetch(handler);}
50abort(){if(this._abortController){this._abortController.abort();this._abortController=null;}
51return this;}
52isSuccess(){if(!this._responseData){return null;}
53if(typeof this._responseData==='object'){return this._responseData.status==="success";}
54return true;}
55isFailed(){if(!this._responseData){return null;}
56if(typeof this._responseData==='object'){return this._responseData.status==="failed";}
57return true;}
58getResponseData(){return this._responseData;}
59async _fetch(handler){this._responseData=null;if(!this._allowSimultaneousRequests&&!this._idle){console.warn("JsRequest: Prevented simultaneous request");return false;}
60this._idle=false;const options=this._setupRequest();this._triggerEvent('start');let loader;const showLoader=this._loader===undefined||this._loader===null?JsRequest.showLoader:!!this._loader;if(showLoader&&Loader){loader=new Loader().start();}
61try{const response=await fetch(options.url,options);await this._parseResponse(response);const successData=this._handleResponse();if(loader){loader.stop();}
62if(handler){handler(successData);}
63this._triggerEvent('success');}catch(error){if(JsRequest.debugMode){console.groupCollapsed('JsRequest Caught response');console.log(this._responseBackup);console.groupEnd();}
64if(loader){loader.stop();}
65try{this._triggerEvent('error');}catch(e){}
66if(JsRequest.handleErrors===undefined||JsRequest.handleErrors===true){this._handleError(error);throw error;}}finally{this._idle=true;this._triggerEvent('finally');}
67return this._responseData;}
68_setupRequest(){let options={method:this._method,url:(this._url?this._url:window.location.href)};const originalData=this._data;let bodyData=null;if(this._formData){this._data=this._formData;this.setData(originalData);}
69if(this._data instanceof FormData){bodyData=this._data;}else if(this._type==="json"){options.headers={'Content-Type':'application/json'};bodyData=JSON.stringify(this._data);}else{options.headers={'Content-Type':'application/x-www-form-urlencoded'};bodyData=new URLSearchParams(this._data).toString();}
70if(this._method==='GET'&&bodyData){const separator=options.url.includes('?')?'&':'?';options.url+=separator+bodyData;}else{options.body=bodyData;}
71if(this._formData){this._data=originalData;}
72if(!this._abortController){this._abortController=new AbortController();}
73options.signal=this._abortController.signal;return options;}
74async _parseResponse(response){if(!response.ok){throw new JsRequestError(`Error ${response.status} while loading the page.`,false);}
75const contentType=response.headers.get("content-type");if(JsRequest.debugMode){this._responseBackup=await response.clone().text();}
76if(contentType&&contentType.includes("application/json")){this._responseData=await response.json();}else{this._responseData=await response.text();}}
77_handleResponse(){if(typeof this._responseData==='object'){if(!this._responseData.isJSR){throw new JsRequestError("Not a JSR object: "+JSON.stringify(this._responseData));}
78if(this._responseData.status!=="success"){throw new JsRequestError(this._responseData.status_info,this._responseData.status!=="failed",true);}
79if(this._responseData.status_info&&typeof Notification!=='undefined'){new Notification(this._responseData.status_info,"success");}
80return this._responseData.data;}else{return this._responseData;}}
81_handleError(error){let userMessage="Er is een fout opgetreden bij het laden van de pagina.";let notifyDevs=true;if(error instanceof JsRequestError){notifyDevs=error.getNotifyDeveloper();if(error.displayMessage()){userMessage=error.message;}}
82if(typeof Notification!=='undefined'){new Notification(userMessage,"danger");}else{alert(userMessage);}
83if(notifyDevs){if(error.name!=="AbortError"&&(error.name!=="TypeError"&&error.message!=="Failed to fetch")){this._reportError(error);}}else{console.warn(error);}}
84_reportError(error){let msg=error.message;msg+="\nUrl: "+window.location.href;msg+="\nRequested Data: "+(this._data instanceof FormData?JsRequest._formDataToJSON(this._data):JSON.stringify(this._data));if(this._responseData){msg+="\nResponse Data: "+JSON.stringify(this._responseData);}
85msg+="\nstack: "+(error?error.stack:(new Error()).stack);const data={action:"sendError",type:error.name,message:msg};fetch("/jsErrorHandler.php",{method:"POST",cache:"no-cache",headers:{'Content-Type':'application/x-www-form-urlencoded'},body:new URLSearchParams(data).toString()});}
86static _formDataToJSON(formData){let obj={};for(let key of formData.keys()){obj[key]=formData.get(key);}
87return JSON.stringify(obj);}}
88class JsRequestError extends Error{constructor(message,notifyDeveloper=true,displayMessage=false){super(message);this.name=this.constructor.name;this._notifyDeveloper=notifyDeveloper;this._displayMessage=displayMessage;}
89getNotifyDeveloper(){return this._notifyDeveloper;}
90displayMessage(){return this._displayMessage;}}
91(function($,undefined){var hcsVersion=2.0,constructorExists=typeof $.hcs==='function';if(constructorExists&&$.hcs.version>=hcsVersion){return;}
92var hcs=$.hcs=$.fn.hcs=function(){return this;};hcs.fn=hcs.prototype;hcs.version=hcs.fn.version=hcsVersion;hcs.extend=hcs.fn.extend=function(){var o=(typeof arguments[0]==='boolean'||typeof arguments[0]==='number')?arguments[0]:false,l=arguments.length,isNum=typeof o==='number',jq=this==$.hcs?$:$.fn;for(var i=0;i<l;++i){if(typeof arguments[i]==="object"){for(var j in arguments[i]){if(!this[j]||o===true||this[j].version==undefined||(isNum&&o>this[j].version)){this[j]=arguments[i][j];if(!jq[j]){jq[j]=this[j];}
93if(isNum){this[j].version=o;}}}}}};if(constructorExists){$.hcs.extend(constructorExists,hcs);}
94hcs.plugins={};hcs.plugin=hcs.fn.plugin=function(name,methods){var namespace="hcs_"+name,namereg=new RegExp(namespace,"i"),puid=1;var namespaced=function(name,uid){if(typeof name==="string"||name===undefined){if(namereg.test(name))
95return name;var full_namespace="."+namespace+(uid?"_"+uid:"");return(name||"").split(" ").join(full_namespace+" ")+full_namespace;}
96for(var n in name){name[namespaced(n,uid)]=name[n];delete name[n];}
97return name;};var eventsProxy=function(method,args){var element=args[0],event=args[1],args=Array.prototype.slice.call(args,0);if(typeof element==="string"||element===undefined){event=element;element=this.element;}else{if(!(element instanceof $))
98element=$(element);args.shift();}
99args[0]=namespaced(event,this.puid);element[method].apply(element,args);};var constructor=function(options,element){if(!this._hcsplugin){return new constructor(options,element);}
100this.element=this.$elem=element;this.puid=puid++;if(this.options&&typeof options==="object"){this.options=$.extend({},this.options,options);}
101if(this._create)
102this._create();return this;};constructor.prototype=$.extend(true,{_hcsplugin:true,_init:$.noop,_create:$.noop,destroy:function(){this._unbind();$.removeData(this.element.get(0),namespace);this._destroy();},_destroy:$.noop,_data:function(key,value){return $.data(this.element,namespaced(key,this.puid),value);},_removeData:function(name){return $.removeData(this.element,namespaced(name,this.puid));},_bind:function(){eventsProxy.call(this,"bind",arguments);return this;},_unbind:function(){eventsProxy.call(this,"unbind",arguments);return this;},_on:function(){eventsProxy.call(this,"on",arguments);return this;},_off:function(){eventsProxy.call(this,"off",arguments);return this;}},methods);$.expr[":"][namespace]=function(elem){return!!$.data(elem,namespace);};if(!$.expr[":"][name])
103$.expr[":"][name]=$.expr[":"][namespace];hcs.plugins[name]=$.fn[name]=function(options){var isMethod=typeof options==="string";var returnValue=this;var args=Array.prototype.slice.call(arguments,1);if(isMethod){this.each(function(){var methodValue,instance=$.data(this,namespace);if(!instance){return $.error("cannot call methods on "+name+" prior to initialization; "+"attempted to call method '"+options+"'");}
104if(!$.isFunction(instance[options])||options.charAt(0)==="_"){return $.error("no such method '"+options+"' for "+name+" widget instance");}
105methodValue=instance[options].apply(instance,args);if(methodValue!==instance&&methodValue!==undefined){returnValue=methodValue&&methodValue.jquery?returnValue.pushStack(methodValue.get()):methodValue;return false;}});}else{options=$.extend.apply(null,[{},hcs.plugins[name].options].concat([options],args));this.each(function(){var instance=$.data(this,namespace);if(!instance){instance=constructor(options,$(this));$.data(this,namespace,instance);}
106instance._init();});options=null;}
107return returnValue;};};$.extend(hcs,{option:function(plugin,options,value){var obj={};if(typeof options==="string"){obj[options]=value;}else if(arguments.length>2){obj=$.extend.apply(null,Array.prototype.slice.call(arguments,1
107));}else{obj=options;}
108hcs.plugins[plugin].options=hcs.plugins[plugin].options||{};$.extend(hcs.plugins[plugin].options,obj);},rename:function(plugin,name){if(hcs.plugins[plugin])
109$.fn[name]=hcs.plugins[name]=hcs.plugins[plugin];if(hcs[plugin])
110$[name]=hcs[name]=hcs[plugin];},cloneFn:function(fn){return function(){fn.apply(this,arguments);};}});$.fn.hcsplugin=function(name){var plugin=hcs.plugins[name];if(!$.isFunction(plugin))
111return $.error("Plugin "+name+" doesn't exist.");return plugin.apply(this,Array.prototype.slice.call(arguments,1));};hcs.extend({cookie:function(key,value,options){if(value!==undefined&&!$.isFunction(value)){options=$.extend({},options);if(typeof options.expires==='number'){var days=options.expires,t=options.expires=new Date();t.setTime(+t+days*864e+5);}
112return(document.cookie=[key,'=',String(value),options.expires?'; expires='+options.expires.toUTCString():'',options.path?'; path='+options.path:'',options.domain?'; domain='+options.domain:'',options.secure?'; secure':''].join(''));}
113var result=key?undefined:{};var cookies=document.cookie?document.cookie.split('; '):[];for(var i=0,l=cookies.length;i<l;i++){var parts=cookies[i].split('='),name=parts.shift(),cookie=parts.join('=');if(cookie.indexOf('"')===0){cookie=cookie.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,'\\');}
114if(key&&key===name){result=cookie;break;}
115if(!key){result[name]=cookie;}}
116return result;},removeCookie:function(key,options){if($.cookie(key)===undefined){return false;}
117$.cookie(key,'',$.extend({},options,{expires:-1}));return!$.cookie(key);}});})(jQuery);(function($){$.hcs.extend({validateEmail:function(email){var re=/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;return re.test(email);}});})(jQuery);class Loader{static _saved={};constructor(content,title,style){this._id=null;this._busyCount=0;this._startTime=null;this._stopTime=null;this._dialog=null;this._dialogVisible=true;this._dialogJumpQueue=true;this._content=content;this._title=title;this._style=style;this._footer=null;this._delayedShow=100;this._delayedTimer=null;this._timeoutTimer=null;this._timeoutDuration=false;this._progressElem=null;this._events={'start':[],'stop':[],'countIncrease':[],'countDecrease':[],'timeout':[]};}
118content(content){this._content=content;if(this._dialog){this._dialog.content(this._content);}
119return this;}
120title(title){this._title=title;if(this._dialog){this._dialog.title(this._title);}
121return this;}
122style(style){if(this._progressElem){this._progressElem.bar.classList.remove("gradient-lr--"+(this._style||"success"));this._progressElem.bar.classList.add("gradient-lr--"+style);}
123this._style=style;if(this._dialog){this._dialog.style(this._style);}
124return this;}
125setProgress(amount){if(this._progressElem){this._progressElem.progress.innerText=amount+'% ';this._progressElem.bar.style.width=amount+"%";}
126return this;}
127setTimeout(duration,callback){this._timeoutDuration=duration;if(this.isLoading()){this._stopTimeoutTimer();this._startTimeoutTimer();}
128if(callback){this.on("timeout",callback);}
129return this;}
130showDialog(enable,jumpQueue=true){this._dialogVisible=!!enable;this._dialogJumpQueue=!!jumpQueue;if(this._busyCount){if(this._dialogVisible){this._showDialog();}else{this._hideDialog();}}
131return this;}
132start(){this._busyCount++;this._triggerEvent("countIncrease");if(this._busyCount>1){return this;}
133if(this._dialogVisible){if(this._delayedShow){this._delayedTimer=setTimeout(()=>{this._showDialog();},this._delayedShow);}else{this._showDialog();}}
134this.setProgress(0);this._startTime=Date.now();this._stopTime=null;this._startTimeoutTimer();this._triggerEvent("start");return this;}
135stop(){if(!this._busyCount){return this;}
136this._busyCount--;this._triggerEvent("countDecrease");if(this._busyCount){return this;}
137if(this._delayedTimer){clearTimeout(this._delayedTimer);this._delayedTimer=null;}
138this._stopTimeoutTimer();if(this._dialogVisible&&this._dialog){this._hideDialog();}
139this._stopTime=Date.now();this._triggerEvent("stop");return this;}
140stopAll(){if(!this._busyCount){return this;}
141this._busyCount=1;this.stop();return this;}
142isLoading(){return!!this._busyCount;}
143time(){let endTime=this._busyCount?Date.now():this._stopTime;return endTime-this._startTime;}
144done(callback){return this.on("stop",callback);}
145on(event,callback){if(this._events[event]){this._events[event].push(callback);}
146return this;}
147off(event,callback){if(this._events[event]){this._events[event]=this._events[event].filter(cb=>cb!==callback);}
148return this;}
149save(id){this.clear();this._id=id;Loader._saved[this._id]=this;return this;}
150static load(id){return Loader._saved[id];}
151clear(){delete Loader._saved[this._id];return this;}
152_showDialog(){if(!this._dialog){if(typeof Dialog==="function"){this._dialog=Dialog.loader(this._content,this._title,this._style);if(this._footer){this._dialog.footer().append(this._footer);}}else{throw new Error("Class Dialog is not found, unable to show loader.");}}
153if(this._dialogJumpQueue){this._dialog.showInFront();}else{this._dialog.show();}}
154_hideDialog(){if(this._dialog){this._dialog.hide();}}
155_triggerEvent(event){if(this._events[event]){this._events[event].forEach(callback=>callback(this));}}
156_startTimeoutTimer(){if(this._timeoutDuration){this._timeoutTimer=setTimeout(()=>{this._triggerEvent("timeout");this._timeoutTimer=null;},this._timeoutDuration);}}
157_stopTimeoutTimer(){if(this._timeoutTimer){clearTimeout(this._timeoutTimer);this._timeoutTimer=null;}}
158static progressLoader(content,title,style){var l=new Loader(content,title,style);const progressElem={barcontainer:document.createElement("div"),bar:document.createElement("div"),label:document.createElement("span"),progress:document.createElement("span"),content:document.createElement("div")};progressElem.content.setAttribute("style","padding: 5px;");progressElem.barcontainer.setAttribute("style","height: 24px;width: 360px; max-width: 100%;border-radius: 10px; background-color: gray; position: relative; margin: 0 auto;");progressElem.content.append(progressElem.barcontainer);const labelcontainer=document.createElement("div");labelcontainer.setAttribute("style","color: #fff;position: absolute;width: 100%;height: 100%;display: flex;align-items: center;justify-content: center;flex-wrap: nowrap;");progressElem.barcontainer.append(labelcontainer);progressElem.progress.innerText='0%';progressElem.progress.setAttribute("style","padding: 0 5px;");labelcontainer.append(progressElem.progress);const loader=document.createElement('span');loader.innerHTML='<svg class="svg-inline--fa fa-loader fa-spin fa-lg" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="loader" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg="">
158<path fill="currentColor" d="M288 32c0-17.7-14.3-32-32-32s-32 14.3-32 32V96c0 17.7 14.3 32 32 32s32-14.3 32-32V32zm0 384c0-17.7-14.3-32-32-32s-32 14.3-32 32v64c0 17.7 14.3 32 32 32s32-14.3 32-32V416zM0 256c0 17.7 14.3 32 32 32H96c17.7 0 32-14.3 32-32s-14.3-32-32-32H32c-17.7 0-32 14.3-32 32zm416-32c-17.7 0-32 14.3-32 32s14.3 32 32 32h64c17.7 0 32-14.3 32-32s-14.3-32-32-32H416zM75 75c-12.5 12.5-12.5 32.8 0 45.3l45.3 45.3c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L120.2 75C107.7 62.5 87.5 62.5 75 75zM391.8 346.5c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L391.8 437c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-45.3-45.3zM75 437c12.5 12.5 32.8 12.5 45.3 0l45.3-45.3c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L75 391.8c-12.5 12.5-12.5 32.8 0 45.3zM346.5 120.2c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L437 120.2c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-45.3 45.3z"></path></svg>';labelcontainer.append(loader);progressElem.bar.setAttribute("style","width: 0%;height: 100%;border-radius: 10px;background-size: 360px 100%;transition: width 200ms; display: flex; align-items: center;justify-content: center; flex-wrap: nowrap;");progressElem.bar.classList.add("gradient-lr--"+(style||"success"));progressElem.barcontainer.append(progressElem.bar);l._progressElem=progressElem;l._footer=l._progressElem.content;return l;}}
159class Dialog{static _dialogs=[];
159static _overlay;static _current;static _guid=0;static _saved={};static _lang={ok:"Ok",cancel:"Annuleren",yes:"Ja",no:"Nee",loader:'<svg class="svg-inline--fa fa-circle-notch fa-spin fa-lg" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="circle-notch" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M222.7 32.1c5 16.9-4.6 34.8-21.5 39.8C121.8 95.6 64 169.1 64 256c0 106 86 192 192 192s192-86 192-192c0-86.9-57.8-160.4-137.1-184.1c-16.9-5-26.6-22.9-21.5-39.8s22.9-26.6 39.8-21.5C434.9 42.1 512 140 512 256c0 141.4-114.6 256-256 256S0 397.4 0 256C0 140 77.1 42.1 182.9 10.6c16.9-5 34.8 4.6 39.8 21.5z"></path></svg> Bezig met laden, een moment geduld aub... ',loaderTitle:"Bezig met laden",loaderStyle:"primary"};static _dismissIcon='<svg class="svg-inline--fa fa-times" style="vertical-align: top;" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="times" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512" data-fa-i2svg=""><path fill="currentColor" d="M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z"></path></svg>';static _onShowOverlay;static _onHideOverlay;constructor(content,title,style){this._content=content;this._contentElem=null;this._scrollerElem=null;this._title=title;this._titleElem=null;this._headerElem=null;this._footerElem=null;this._style=style;this._width=null;this._isTemporarilyHidden=false;this._destroyAfterHide=false;this._buttons=[];this._dialog=null;this._uid=Dialog._guid++;this._dialogId="hcsdialog-"+this._uid;this._id=null;this._fullscreen=false;this._dismissShowIcon=true;this._dismissClickAnywhere=false;this._dismissOverlay=true;this._dismissEscape=null;this._autoFocus="input, select, button, textarea";this._fullyVisible=false;this._headerToggleElem=null;this._headerToggleState=false;this._headerToggleCallback=null;this._events={'show':[],'showOnce':[],'hide':[],'hideOnce':[]};}
160fullscreen(enable){if(typeof enable==='boolean'){this._fullscreen=!!enable;this._adjustDialog();return this;}
161return this._fullscreen;}
162showDismissIcon(enable){if(typeof enable==='boolean'){this._dismissShowIcon=!!enable;this._adjustDialog();return this;}
163return this._dismissShowIcon;}
164dismissOverlay(enable){if(typeof enable==='boolean'){this._dismissOverlay=!!enable;return this;}
165return this._dismissOverlay;}
166dismissEscape(enable){if(typeof enable==='boolean'){this._dismissEscape=!!enable;this._adjustDialog();return this;}
167return this._dismissEscape;}
168dismissClickAnywhere(enable){if(typeof enable==='boolean'){this._dismissClickAnywhere=!!enable;this._adjustDialog();return this;}
169return this._dismissClickAnywhere;}
170dismissable(enable){this.dismissOverlay(enable);this.dismissEscape(enable);this.showDismissIcon(enable);return this;}
171destroyAfterHide(enable){if(typeof enable==='boolean'){this._destroyAfterHide=!!enable;return this;}
172return this._destroyAfterHide;}
173autoFocus(selector){if(selector===undefined){return this._autoFocus;}
174this._autoFocus=selector;return this;}
175content(content){if(!content){this._createContent();return this._contentElem;}
176this._content=content;if(this._contentElem){Dialog._setElementContent(this._contentElem,this._content);}
177return this;}
178title(title){if(title===undefined){this._createTitle();return this._titleElem;}
179this._title=title;if(this._titleElem){Dialog._setElementContent(this._titleElem,this._title);}
180return this;}
181header(){this._createHeader();return this._headerElem;}
182footer(){this._createFooter();return this._footerElem;}
183setHeaderToggle(initialState,onToggle){this._headerToggleState=!!initialState;this._headerToggleCallback=onToggle;if(this._headerElem){this._buildHeaderToggle();}
184return this;}
185setHeaderToggleState(state){this._headerToggleState=!!state;if(this._headerToggleElem){if(!this._headerToggleCallback){this._headerToggleElem.innerHTML="";this._headerToggleElem.classList.add("dialog__headertoggle--disabled");return this;}
186this._headerToggleElem.classList.remove("dialog__headertoggle--disabled");this._headerToggleElem.innerHTML=this._headerToggleState?'<svg class="svg-inline--fa fa-toggle-on success" data-prefix="fas" data-icon="toggle-on" role="img" viewBox="0 0 576 512" aria-hidden="true" data-fa-i2svg="">
186<path fill="currentColor" d="M192 64C86 64 0 150 0 256S86 448 192 448l192 0c106 0 192-86 192-192S490 64 384 64L192 64zm192 96a96 96 0 1 1 0 192 96 96 0 1 1 0-192z"></path></svg>':'<svg class="svg-inline--fa fa-toggle-off danger" data-prefix="fas" data-icon="toggle-off" role="img" viewBox="0 0 576 512" aria-hidden="true" data-fa-i2svg=""><path fill="currentColor" d="M384 128c70.7 0 128 57.3 128 128S454.7 384 384 384l-192 0c-70.7 0-128-57.3-128-128s57.3-128 128-128l192 0zM576 256c0-106-86-192-192-192L192 64C86 64 0 150 0 256S86 448 192 448l192 0c106 0 192-86 192-192zM192 336a80 80 0 1 0 0-160 80 80 0 1 0 0 160z"></path></svg>';}
187return this;}
188style(style){if(!style){return this._style;}
189if(this._dialog){this._dialog.classList.remove("dialog--"+this._style);this._dialog.classList.add("dialog--"+style);}
190this._style=style;return this;}
191width(width){if(width===undefined){return this._dialog?this._dialog.offsetWidth:this._width;}
192this._width=width;this._adjustDialog();return this;}
193show(callback){if(callback){this.on("showOnce",callback);}
194Dialog._dialogs.push(this);if(Dialog._dialogs.length>1){return this;}
195Dialog._showNextInQueue();return this;}
196showInFront(callback){if(!Dialog._dialogs.length){return this.show(callback);}
197if(callback){this.on("showOnce",callback);}
198Dialog._dialogs.unshift(this);Dialog._current._isTemporarilyHidden=true;Dialog._overlay.removeChild(Dialog._current._dialog);Dialog._current=null;Dialog._showNextInQueue();return this;}
199static _showNextInQueue(){if(!Dialog._overlay){Dialog._createOverlay();}
200if(Dialog._current){Dialog._current.hide();return;}
201Dialog._current=Dialog._dialogs.length>0?Dialog._dialogs[0]:null;if(Dialog._current){if(!Dialog._lastActiveElement){Dialog._lastActiveElement=document.activeElement;}
202if(!Dialog._current._dialog){Dialog._current._createDialog();}
203if(!Dialog._overlay.classList.contains("dialog-overlay--visible")){Dialog._overlay.classList.add("dialog-overlay--visible");if(typeof Dialog._onShowOverlay==='function'){Dialog._onShowOverlay();}}
204Dialog._current._dialog.classList.add("dialog--visible");Dialog._overlay.appendChild(Dialog._current._dialog);Dialog._current._dialog.setAttribute('aria-hidden','false');Dialog._current._dialog.focus();if(Dialog._current._autoFocus){Dialog._setAutoFocus();}
205if(Dialog._current._isTemporarilyHidden){Dialog._current._isTemporarilyHidden=false;return;}
206Dialog._current._triggerEvent("show");Dialog._current._triggerEvent("showOnce");Dialog._current._events.showOnce=[];}else{if(Dialog._overlay.classList.contains("dialog-overlay--visible")){Dialog._overlay.classList.remove("dialog-overlay--visible");if(typeof Dialog._onHideOverlay==='function'){Dialog._onHideOverlay();}}
207if(Dialog._lastActiveElement){Dialog._lastActiveElement.focus();Dialog._lastActiveElement=null;}}
208return this;}
209static _setAutoFocus(){const elems=Dialog._current._scrollerElem.querySelectorAll(Dialog._current._autoFocus);for(let i=0;i<elems.length;i++){let inp=elems[i];if(inp.offsetParent!==null&&!(inp.disabled)){inp.focus();try{inp.selectionEnd=inp.selectionStart=inp.value.length;}catch(err){}
210break;}}}
211hide(){Dialog._dialogs=Dialog._dialogs.filter((e)=>e!==this);if(Dialog._current===this){Dialog._current=null;this._dialog.classList.remove("dialog--visible");this._dialog.setAttribute('aria-hidden','true');this._fullyVisible=false;}
212this._triggerEvent("hide");this._triggerEvent("hideOnce");this._events.hideOnce=[];if(!Dialog._current){Dialog._showNextInQueue();}
213return this;}
214destroy(){if(Dialog._current===this){this.hide();}
215this.clear();return this;}
216once(callback){this._destroyAfterHide=true;return this.show(callback);}
217isVisible(){return Dialog._current===this;}
218addButton(content,style,onClick){let button=document.createElement('button');Dialog._setElementContent(button,content);button.classList.add("btn");button.classList.add("btn--"+style);button.addEventListener('click',(e)=>{let hideDialog=true;if(onClick){hideDialog=onClick(this,e)===false?false:true;}
219if(hideDialog){this.hide();}});this._buttons.push(button);if(this._footerElem){this._footerElem.append(button);}
220return this;}
221getButton(text){if(text===undefined){return this._buttons[this._buttons.length-1];}
222return this._buttons.find(button=>button.innerText===text);}
223setButtonTooltip(title,text){const button=this.getButton(text);if(button){Tooltip.setContent(button,title);}
224return this;}
225removeButton(text){const b=this.getButton(text);if(b){this._buttons=this._buttons.filter(btn=>btn!==b);if(this._footerElem){this._footerElem.removeChild(b);}}
226return this;}
227save(id){this.clear();this._id=id;Dialog._saved[this._id]=this;return this;}
228static load(id){return Dialog._saved[id];}
229clear(){delete Dialog._saved[this._id];return this;}
230on(event,callback){if(this._events[event]){this._events[event].push(callback);}
231return this;}
232off(event,callback){if(this._events[event]){this._events[event]=this._events[event].filter(cb=>cb!==callback);}
233return this;}
234_triggerEvent(event){if(this._events[event]){this._events[event].forEach(callback=>callback(this));}}
235static _createOverlay(){if(Dialog._overlay){return;}
236Dialog._overlay=document.createElement("div");Dialog._overlay.classList.add("dialog-overlay");Dialog._overlay.addEventListener("mousedown",(event)=>{if(Dialog._current){if(Dialog._current._dismissClickAnywhere){Dialog._current.hide();}
237if(Dialog._current._dismissOverlay){if(!event.target.closest(".dialog")){Dialog._current.hide();}}}});document.body.append(Dialog._overlay);}
238_createDialog(){if(this._dialog){return;}
239this._dialog=document.createElement("div");this._dialog.classList.add("dialog");if(this._style){this._dialog.classList.add("dialog--"+this._style);}
240this._dialog.setAttribute('role','dialog');this._dialog.setAttribute('id',this._dialogId);this._dialog.setAttribute('aria-labelledby',this._dialogId+'-title');this._dialog.setAttribute('aria-modal','true');this._createHeader();this._dialog.append(this._headerElem);this._createScroller();this._dialog.append(this._scrollerElem);this._adjustDialog();this._dialog.addEventListener('keydown',(e)=>{if(e.key==='Tab'){const focusableEls=Array.from(this._dialog.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not
240([tabindex="-1"])'));let firstFocusableEl,lastFocusableEl;for(let i=0;i<focusableEls.length;i++){if(getComputedStyle(focusableEls[i]).display!=='none'){firstFocusableEl=focusableEls[i];break;}}
241for(let i=focusableEls.length-1;i>=0;i--){if(getComputedStyle(focusableEls[i]).display!=='none'){lastFocusableEl=focusableEls[i];break;}}
242if(e.shiftKey){if(document.activeElement===firstFocusableEl){lastFocusableEl.focus();e.preventDefault();}}else{if(document.activeElement===lastFocusableEl){firstFocusableEl.focus();e.preventDefault();}}}
243if(e.key==='Escape'){if((this._dismissEscape===null&&this._dismissOverlay)||this._dismissEscape){this.hide();}}});this._dialog.addEventListener('animationend',(event)=>{if(event.animationName==='dialogHideDialog'){Dialog._overlay.removeChild(this._dialog);if(this._destroyAfterHide){this.destroy();}}
244if(event.animationName==='dialogShowDialog'){this._fullyVisible=true;}});}
245_createTitle(){if(this._titleElem){return;}
246this._titleElem=document.createElement("div");this._titleElem.classList.add("dialog__headertitle");Dialog._setElementContent(this._titleElem,this._title);this._titleElem.setAttribute('id',this._dialogId+'-title');}
247_createHeader(){if(this._headerElem){return this;}
248this._headerElem=document.createElement("div");this._headerElem.classList.add("dialog__header");this._buildHeaderToggle();this._headerElem.append(this._headerToggleElem);this._createTitle();this._headerElem.append(this._titleElem);const dismiss=document.createElement("a");dismiss.href="#";dismiss.classList.add("dialog__headerdismiss");dismiss.innerHTML=Dialog._dismissIcon;dismiss.addEventListener("click",(e)=>{e.preventDefault();this.hide();});this._headerElem.append(dismiss);return this;}
249_buildHeaderToggle(){if(!this._headerToggleElem){this._headerToggleElem=document.createElement("a");this._headerToggleElem.href="#";this._headerToggleElem.classList.add("dialog__headertoggle");this._headerToggleElem.style.textDecoration="none";this._headerToggleElem.addEventListener("click",(e)=>{e.preventDefault();const newState=!this._headerToggleState;this.setHeaderToggleState(newState);if(this._headerToggleCallback){this._headerToggleCallback(newState,e);}});}
250this.setHeaderToggleState(this._headerToggleState);}
251_createContent(){if(this._contentElem){return this;}
252this._contentElem=document.createElement("div");this._contentElem.classList.add("dialog__content");Dialog._setElementContent(this._contentElem,this._content);return this;}
253_createFooter(){if(this._footerElem){return;}
254this._footerElem=document.createElement("div");this._footerElem.classList.add("dialog__footer");for(var b in this._buttons){this._footerElem.append(this._buttons[b]);}}
255_createScroller(){if(this._scrollerElem){return;}
256this._scrollerElem=document.createElement("div");this._scrollerElem.classList.add("dialog__scroller");this._createContent();this._scrollerElem.append(this._contentElem);this._createFooter();this._scrollerElem.append(this._footerElem);}
257static _setElementContent(element,content){element.innerHTML="";if(content instanceof HTMLElement){element.append(content);}else if(content!==undefined){element.innerHTML=content;}
258return this;}
259_adjustDialog(){if(!this._dialog){return;}
260if(this._fullscreen){this._dialog.classList.add("dialog--fullscreen");}else{this._dialog.classList.remove("dialog--fullscreen");}
261if(this._dismissShowIcon){this._headerElem.classList.remove("dialog__header--nodismiss");}else{this._headerElem.classList.add("dialog__header--nodismiss");}
262if(this._width){let intWidth=parseInt(this._width);this._dialog.style.width=!isNaN(intWidth)&&intWidth.toString()===this._width.toString()?intWidth+"px":this._width;}else{this._dialog.style.width="";}}
263static onShowOverlay(callback){if(callback===undefined){return Dialog._onShowOverlay;}
264Dialog._onShowOverlay=callback;}
265static onHideOverlay(callback){if(callback===undefined){return Dialog._onHideOverlay;}
266Dialog._onHideOverlay=callback;}
267static current(){return Dialog._current;}
268static hideAll(){Dialog._dialogs=[];if(Dialog._current){Dialog._current.hide();}}
269static setLang(lang){Dialog._lang=Object.assign({},Dialog._lang,lang);}
270static confirm(content,title,style,fn_yes,fn_no){const d=new Dialog(content,title,style);d.dismissable(false);
270d.addButton(Dialog._lang.yes,"success",fn_yes);d.addButton(Dialog._lang.no,"danger",fn_no);d.once();return d;}
271static alert(content,title,style,fn_ok){const d=new Dialog(content,title,style);d.dismissable(false);d.addButton(Dialog._lang.ok,"primary",fn_ok);d.once();return d;}
272static loader(content,title,style){if(content===undefined){content=Dialog._lang.loader;}
273if(title===undefined){title=Dialog._lang.loaderTitle;}
274if(style===undefined){style=Dialog._lang.loaderStyle;}
275const d=new Dialog(content,title,style);d.dismissable(false);return d;}
276static prompt(content,title,style,inputValue){const input=document.createElement("input");input.type="text";input.classList.add("input","input--w100");input.value=inputValue===undefined?"":inputValue;if(style!==undefined){input.classList.add("input--"+style);}
277const container=document.createElement("div");Dialog._setElementContent(container,content);container.append(document.createElement("br"));container.append(input);const d=new Dialog(container,title,style);d.dismissable(false);input.addEventListener('keydown',(e)=>{if(e.key==='Enter'){e.preventDefault();d.getButton(Dialog._lang.ok).click();}});return new Promise((resolve,reject)=>{d.addButton(Dialog._lang.ok,"success",()=>resolve(input.value));d.addButton(Dialog._lang.cancel,"warning",()=>reject({dialog:d}));d.once();input.focus();});}}
278class Notification{static _containerTop;static _containerBottom;static _containerDefault;static _lang={loader:'<svg class="svg-inline--fa fa-circle-notch fa-spin fa-lg" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="circle-notch" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M222.7 32.1c5 16.9-4.6 34.8-21.5 39.8C121.8 95.6 64 169.1 64 256c0 106 86 192 192 192s192-86 192-192c0-86.9-57.8-160.4-137.1-184.1c-16.9-5-26.6-22.9-21.5-39.8s22.9-26.6 39.8-21.5C434.9 42.1 512 140 512 256c0 141.4-114.6 256-256 256S0 397.4 0 256C0 140 77.1 42.1 182.9 10.6c16.9-5 34.8 4.6 39.8 21.5z"></path></svg> Bezig met laden, een moment geduld aub... ',loaderStyle:"info"};constructor(content,style){this._content=content;this._style=style;this._duration=null;this._dismissable=true;this._type=null;this._showAnimationFrame=null;this._autoHide=null;this._notification=null;this._progress=null;this._clickText=null;this._clickAction=null;this._autoShow=setTimeout(()=>{this.show();},1);this._events={'show':[],'hide':[],'click':[]};}
279showNextPageLoad(){let st=sessionStorage.getItem('notifications');if(!st){st=[];}else{st=JSON.parse(st);}
280st.push({_content:this._content,_style:this._style,_duration:this._duration});sessionStorage.setItem('notifications',JSON.stringify(st));return this;}
281setDuration(duration){this._duration=duration;if(this._autoHide){clearTimeout(this._autoHide);if(duration){this._progress.style.width='100%';this._progress.style.transition=`width 0ms linear`;this._showAnimationFrame=window.requestAnimationFrame(()=>{this._showAnimationFrame=null;const duration=this._getDuration();if(duration){this._progress.style.transition=`width ${duration}ms linear`;this._progress.style.width='0%';this._autoHide=setTimeout(()=>{this.hide();},duration);}});}}
282return this;}
283setPersistent(){this._duration=false;return this;}
284setDismissable(dismissable){this._dismissable=!!dismissable;return this;}
285setTop(){this._type="top";if(this._notification){this._getContainer().append(this._notification);}
286return this;}
287setBottom(){this._type="bottom";if(this._notification){this._getContainer().append(this._notification);}
288return this;}
289setDefault(){this._type=null;if(this._notification){this._getContainer().append(this._notification);}
290return this;}
291setAction(callback,text){if(this._clickText){this._clickText.remove();this._clickText=null;}
292if(this._clickAction){this.off("click",this._clickAction);}
293this._clickAction=callback;this.on("click",this._clickAction);if(text){this._clickText=document.createElement("div");this._clickText.classList.add("notification__action");this._clickText.append(text);}
294if(this._notification&&this._clickText){this._notification.append(this._clickText);}
295return this;}
296show(){if(this._notification){return this;}
297if(this._autoShow){clearTimeout(this._autoShow);this._autoShow=null;}
298this._notification=this._buildNotification();this._getContainer().append(this._notification);if(this._getDuration()){this._progress.style.width='100%';}
299this._showAnimationFrame=window.requestAnimationFrame(()=>{this._showAnimationFrame=window.requestAnimationFrame(()=>{this._showAnimationFrame=null;this._notification.classList.add("notification--visible");const duration=this._getDuration();if(duration){this._progress.style.transition=`width ${duration}ms linear`;this._progress.style.width='0%';this._autoHide=setTimeout(()=>{this.hide();},duration);}});});this._triggerEvent("show");return this;}
300hide(){if(this._showAnimationFrame){window.cancelAnimationFrame(this._showAnimationFrame);this._showAnimationFrame=null;}
301if(this._autoShow){clearTimeout(this._autoShow);this._autoShow=null;}
302if(this._autoHide){clearTimeout(this._autoHide);this._autoHide=null;}
303if(!this._notification){return this;}
304this._notification.classList.remove("notification--dismissable");const computedStyle=getComputedStyle(this._notification);this._notification.style.height=computedStyle.height;void this._notification.offsetHeight;this._notification.style.height='0';this._notification.style.opacity='0';this._notification.style.margin='0';this._notification.style.padding='0';this._notification.style.transform='scaleY(0.8)';this._progress.style.transition='';this._progress.style.width='';if(this._notification.classList.contains("notification--visible")){this._notification.addEventListener("transitionend",(event)=>{event.target.remove();});this._notification=null;}else{this._notification.remove();this._notification=null;}
305this._triggerEvent("hide");return this;}
306on(event,callback){if(this._events[event]){this._events[event].push(callback);}
307return this;}
308off(event,callback){if(this._events[event]){this._events[event]=this._events[event].filter(cb=>cb!==callback);}
309return this;}
310_buildNotification(){const notification=document.createElement("div");notification.classList.add("notification");if(this._style){notification.classList.add("notification--"+this._style);}
311if(this._dismissable){notification.classList.add("notification--dismissable");}
312notification.addEventListener("click",()=>{if(this._dismissable){this.hide();}
313this._triggerEvent("click");});if(this._content instanceof HTMLElement){notification.append(this._content);}else if(this._content!==undefined){notification.innerHTML=this._content;}
314if(this._clickText){notification.append(this._clickText);}
315const progress=this._createProgressBar();this._progress=progress;notification.append(progress);return notification;}
316_getDuration(){return this._duration===null?(5000+(this._notification.innerText.length*25)):this._duration;}
317_createProgressBar(){const progress=document.createElement("div");progress.classList.add("notification__progress");return progress;}
318_getContainer(){if(this._type==="top"){if(!Notification._containerTop){Notification._containerTop=Notification._buildContainer("top");}
319return Notification._containerTop;}
320if(this._type==="bottom"){if(!Notification._containerBottom){Notification._containerBottom=Notification._buildContainer("bottom");}
321return Notification._containerBottom;}
322if(!Notification._containerDefault){Notification._containerDefault=Notification._buildContainer("default");}
323return Notification._containerDefault;}
324_triggerEvent(event){if(this._events[event]){this._events[event].forEach(callback=>callback(this));}}
325static _buildContainer(type){const container=document.createElement("div");container.classList.add("notification-container");container.classList.add("notification-container--"+type);container.setAttribute("aria-live","polite");document.body.append(container);return container;}
326static loader(content,style){if(content===undefined){content=Notification._lang.loader;}
327if(style===undefined){style=Notification._lang.loaderStyle;}
328const not=new Notification(content,style);not.setDismissable(false);not.setPersistent();return not;}
329static checkPageLoadNotification(){let notifications=sessionStorage.getItem('notifications');if(notifications){notifications=JSON.parse(notifications);notifications.forEach((n)=>{const not=new Notification(n._content,n._style);not.setDuration(n._duration);not.show();});}
330sessionStorage.setItem('notifications',"");}}
331(function($){var defaults={scope:".ph",position:"bottom"};$.hcs.extend({"placeholder":function(options){options=$.extend({},defaults,options);$(document).on("focus",options.scope,function(){var $this=$(this);var content=$this.attr("placeholder");if(!content){return;}
332var $container=$("<div class='placeholder' style='position: absolute;'><div>"+content+"</div></div>");var addClass=$this.data("ph-class");if(addClass){$container.addClass("placeholder--"+addClass);}
333$container.insertAfter($this);$container.css({"min-width":$this.outerWidth(),"max-width":"100%","text-align":$this.css("text-align"),"color":$this.css("color")});var offset=$this.offset();if(options.position=="bottom"){$container.addClass("placeholder--bottom");offset.top+=$this.outerHeight();}else{$container.addClass("placeholder--top");offset.top-=$container.outerHeight();}
334$container.offset(offset);$this.data("placeholder",$container);$this.on("blur.placeholder, keydown.placeholder, change.placeholder",function(){$container.remove();$this.off(".placeholder");});$container.on("mouseenter",function(){var offset=$this.offset();if($container.hasClass("placeholder--bottom")){$container.removeClass("placeholder--bottom").addClass("placeholder--top");offset.top-=$container.outerHeight();}else{$container.removeClass("placeholder--top").addClass("placeholder--bottom");offset.top+=$this.outerHeight();}
335$container.offset(offset);});});}});})(jQuery);class Tooltip{constructor(){}
336static _visibleTooltipTargets=[];static _allToolTipTargets=new WeakMap();static _tooltipContents=new WeakMap();static _initialized=false;static _currentMousePos={x:0,y:0};static _init(){if(Tooltip._initialized){return;}
337Tooltip.mutationObserver=new MutationObserver((mutationsList,observer)=>{for(let mutation of mutationsList){if(mutation.type==='childList'){if(mutation.removedNodes.length){mutation.removedNodes.forEac
337h((node)=>{Tooltip._visibleTooltipTargets.forEach((tooltipTarget)=>{if(node.contains(tooltipTarget)){Tooltip._hideTooltipOnTarget({target:tooltipTarget});}});});}}}});Tooltip._initialized=true;}
338static _getTooltipContent(target){if(Tooltip._tooltipContents.has(target)){return Tooltip._parseTooltipContent(Tooltip._tooltipContents.get(target),target);}
339const title=target.getAttribute('title');if(title){return Tooltip._parseTooltipContent(title,target);}
340return null;}
341static _parseTooltipContent(content,target){if(typeof content==="string"){if(content.startsWith('.')||content.startsWith('#')){const selectedElement=document.querySelector(content);if(selectedElement){content=selectedElement;}}else if(typeof window[content]==="function"){content=window[content];}}
342if(typeof content==="function"){content=content(target);}
343if(typeof content==="string"){content=content.replace(/(\\n|\n)/g,"<br>");}else if(!(content instanceof HTMLElement)){content=null;}
344return content;}
345static _createTooltip(target){if(target.closest('.tox')){return;}
346const tooltip=document.createElement('div');tooltip.className='tooltip';const content=Tooltip._getTooltipContent(target);if(content===null){return;}else if(content instanceof HTMLElement){tooltip.append(content);}else{tooltip.innerHTML=content;}
347target.removeAttribute('title');const style=target.getAttribute("data-tooltipstyle");if(style){tooltip.classList.add("tooltip--"+style);}
348const mode=target.getAttribute("data-tooltipmode");if(mode==="sticky"){tooltip.classList.add("tooltip--sticky");}
349target.tooltip=tooltip;return tooltip;}
350static _getTooltipForElement(target){if(Tooltip._allToolTipTargets.has(target)){return Tooltip._allToolTipTargets.get(target);}
351let tooltip=Tooltip._createTooltip(target);Tooltip._allToolTipTargets.set(target,tooltip);return tooltip;}
352static _showTooltipOnTarget=(event)=>{let target=event.target;while(!Tooltip._allToolTipTargets.has(target)&&!Tooltip._tooltipContents.has(target)&&target.parentNode&&!target.getAttribute('title')){target=target.parentNode;}
353if(!target.parentNode){return;}
354const tooltip=Tooltip._getTooltipForElement(target);if(!tooltip){return;}
355if(Tooltip._visibleTooltipTargets.includes(target)){return;}
356tooltip.removeEventListener('animationend',Tooltip._removeTooltip);tooltip.classList.add("tooltip--visible");document.body.appendChild(tooltip);target.addEventListener("mousemove",Tooltip._moveTooltipOnTarget);target.addEventListener("mouseleave",Tooltip._hideTooltipOnTarget);Tooltip._visibleTooltipTargets.push(target);if(Tooltip._visibleTooltipTargets.length===1){window.addEventListener('scroll',Tooltip._hideTooltipsOnScroll);Tooltip.mutationObserver.observe(document.body,{childList:true,subtree:true});}
357Tooltip._moveTooltipOnTarget(event);}
358static _moveTooltipOnTarget=(event)=>{let target=event.target;while(!Tooltip._allToolTipTargets.has(target)&&target.parentNode){target=target.parentNode;}
359const tooltip=Tooltip._getTooltipForElement(target);if(!tooltip){return;}
360Tooltip._currentMousePos={x:event.clientX,y:event.clientY};if(tooltip.classList.contains("tooltip--sticky")){if(event.clientY<(window.innerHeight / 2)){tooltip.style.left=`0`;tooltip.style.bottom=`0`;tooltip.style.top="auto";}else{tooltip.style.left=`0`;tooltip.style.top=`0`;tooltip.style.bottom="auto";}}else{const tooltipBox=tooltip.getBoundingClientRect();let top=Math.max(event.clientY+10,0);let left=Math.max(event.clientX+10,0);if(window.innerWidth-event.clientX<tooltipBox.width){left=Math.max(event.clientX-tooltipBox.width-10,0);}
361if(window.innerHeight-event.clientY<tooltipBox.height){top=Math.max(event.clientY-tooltipBox.height-10,0);}
362tooltip.style.left=`${left}px`;tooltip.style.top=`${top}px`;}}
363static _hideTooltipsOnScroll=(event)=>{Tooltip._visibleTooltipTargets.forEach((tooltipTarget)=>{Tooltip._hideTooltipOnTarget({target:tooltipTarget});});}
364static _hideTooltipOnTarget=(event)=>{const target=event.target;const tooltip=Tooltip._getTooltipForElement(target);if(!tooltip){return;}
365tooltip.classList.remove("tooltip--visible");tooltip.addEventListener('animationend',Tooltip._removeTooltip);target.removeEventListener("mouseleave",Tooltip._hideTooltipOnTarget);target.removeEventListener("mousemove",Tooltip._moveTooltipOnTarget);Tooltip._visibleTooltipTargets=Tooltip._visibleTooltipTargets.filter(t=>t!==target);if(Tooltip._visibleTooltipTargets.length===0){Tooltip.mutationObserver.disconnect();window.removeEventListener('scroll',Tooltip._hideTooltipsOnScroll);}}
366static _removeTooltip=(event)=>{event.target.remove();}
367static attachTo(element){if(!Tooltip._initialized){Tooltip._init();}
368element.addEventListener("mouseover",Tooltip._showTooltipOnTarget);}
369static detachFrom(element){element.removeEventListener("mouseover",Tooltip._showTooltipOnTarget);}
370static setContent(element,content){if(!(element instanceof HTMLElement)){throw new Error("The first parameter must be an HTML element.");}
371if(!(content instanceof HTMLElement)&&typeof content!=='string'&&typeof content!=='function'){throw new Error("The second parameter must be an HTML element or a string.");}
372if(!Tooltip._allToolTipTargets.has(element)){Tooltip._tooltipContents.set(element,content);return;}
373content=Tooltip._parseTooltipContent(content,element);const tooltip=Tooltip._getTooltipForElement(element);if(!tooltip){return;}
374tooltip.innerHTML='';if(content===null){return;}else if(content instanceof HTMLElement){tooltip.append(content);}else{tooltip.innerHTML=content;}
375var mousePos=Tooltip._currentMousePos;if(!mousePos){return;}
376var event=new MouseEvent('mousemove',{'view':window,'bubbles':true,'cancelable':true,'clientX':mousePos.x,'clientY':mousePos.y});element.dispatchEvent(event);}}
377(function($){var contructor=function(){return contructor.log.apply(contructor,arguments);}
378var loopEvents=[];var loopRunning={};var events={keyup:function(e){if(e.keyCode==27)
379return $.debug.loopStop(0);if(e.shiftKey!==true||e.keyCode<48||e.keyCode>57)
380return;var i=e.keyCode-48;$.debug.loopToggle(i);}};$.extend(contructor,{log:function(){if(!console)
381return;if(!console.groupCollapsed){for(var n in arguments){console.log(arguments[n]);}}
381
382var e=new Error();console.groupCollapsed(e.stack.split("\n")[3]);for(var n in arguments){console.groupCollapsed($.isFunction(arguments[n])?"function":arguments[n])
383if(console.trace){console.groupCollapsed("trace");console.trace();console.groupEnd();}
384if(console.dir){console.groupCollapsed("dir");console.dir(arguments[n]);console.groupEnd();}else{console.groupCollapsed("log");console.dir(arguments[n]);console.groupEnd();}
385console.groupEnd();}
386console.groupEnd();},loop:function(delay,amount,method){if(!$.isFunction(method)){method=amount;amount=delay;delay=null;}
387if(!$.isFunction(method)){method=amount;amount=1000000000;}
388if(!loopEvents.length){loopEvents.push([]);$(window).on("keyup",events.keyup);}
389loopEvents.push({amount:amount,method:method,delay:delay==undefined?5:delay,timeout:null,startTime:null,counter:0,running:false});var id=loopEvents.length-1;console.log("Loop test "+id+" added.");if(!loopEvents[id].delay){console.log("LOOP WITHOUT DELAY: this cannot be interrupted, add a delay (default 5) to avoid unresponsive result.");}
390console.log("Shift+"+id+" = start/stop | shift+0 = start/stop all tests | esc = stop all tests");},loopStart:function(id){if(!id){for(var i=1;i<loopEvents.length;++i){$.debug.loopStart(i);}
391return;}
392if(loopEvents[id].running){console.log("Loop "+id+" is already running!");return;}
393if(Object.keys(loopRunning).length==0){console.group("Loop test");}
394console.log("Started looping: "+id);loopEvents[id].startTime=!performance.now?performance.now():Date.now();loopEvents[id].counter=0;if(!loopEvents[id].delay){loopEvents[id].running=true;for(;loopEvents[id].counter<loopEvents[id].amount;++loopEvents[id].counter){loopEvents[id].method();if(!loopEvents[id].running)
395return;}
396$.debug.loopStop(id);}else{loopRunning[id]=function(){if(!loopEvents[id].running)
397return;loopEvents[id].method();++loopEvents[id].counter;if(loopEvents[id].counter>=loopEvents[id].amount){$.debug.loopStop(id);}else{if(!loopEvents[id].delay){loopRunning[id]();}else{loopEvents[id].timeout=setTimeout(loopRunning[id],loopEvents[id].delay);}}};loopEvents[id].running=true;loopRunning[id]();}},loopStop:function(id){if(!id){for(var n in loopRunning){$.debug.loopStop(n);}
398return;}
399if(!loopEvents[id].running){console.log("Loop "+id+" has already stopped!");return;}
400if(loopEvents[id].timeout){clearTimeout(loopEvents[id].timeout);}
401loopEvents[id].running=false;delete loopRunning[id];var elapsed=(!performance.now?performance.now():Date.now())-loopEvents[id].startTime;var target=loopEvents[id].counter*loopEvents[id].delay;var execution=elapsed-target;var average=elapsed / loopEvents[id].counter;loopEvents[0].push("Test "+id+" iterations: "+loopEvents[id].counter+" - time: "+Math.floor(elapsed)+"ms - execution time: "+Math.floor(execution)+" - execution average: "+Math.floor(average));console.log("Stopped looping: "+id);if(Object.keys(loopRunning).length>0)
402return;console.groupEnd();console.group("Loop tests Results");for(var i=0;i<loopEvents[0].length;i++){console.log(loopEvents[0][i]);}
403loopEvents[0]=[];console.groupEnd();},loopToggle:function(id){if(!id){for(var i=1;i<loopEvents.length;i++){$.debug.loopToggle(i);}
404return;}
405if(!loopEvents[id].running){$.debug.loopStart(id);}else{$.debug.loopStop(id);}}});$.hcs.extend({debug:contructor});})(jQuery);class ImagePreloader{constructor(images){this.images=images;this.preloadedImages=new Array(images.length);}
406async preloadImage(index){return new Promise((resolve,reject)=>{const picture=document.createElement('picture');if(this.images[index].mobile){let source=document.createElement('source');source.media='(max-width: 600px)';source.srcset=this.images[index].mobile;picture.appendChild(source);source=document.createElement('source');source.media='(min-width: 601px)';source.srcset=this.images[index].src;picture.appendChild(source);}
407picture.classList.add("slider__img");const img=new Image();img.onload=()=>resolve(picture);img.onerror=reject;img.alt="Slider image "+(index+1);picture.appendChild(img);img.src=this.images[index].src;this.preloadedImages[index]=picture;});}
408setLoadedImage(index,picture){this.preloadedImages[index]=picture;}
409async preloadImages(){const promises=this.images.map((_,index)=>this.preloadImage(index));await Promise.all(promises);}
410getImage(index){return this.preloadedImages[index];}}
411class Slider{constructor(element,options){const defaultOptions={slides:[],start:false,delay:10,autoplay:true,onBeforeShow:()=>{},onAfterShow:()=>{},initialDelay:10};this.options=Object.assign({},defaultOptions,options);this.imagePreloader=new ImagePreloader(options.slides);if(element.classList.contains("slider")){this.container=element;this.imagePreloader.setLoadedImage(this.options.start,element.children[0]);this.isPreLoaded=true;}else{this.container=document.createElement("div");this.container.classList.add("slider");element.append(this.container);this.isPreLoaded=false;}
412this.autoplayEnabled=!!this.options.autoplay&&this.options.slides.length>1;this.autoplayTimer=null;if(this.options.start!==false){this.currentSlideIndex=this.options.start;}else{this.currentSlideIndex=Math.floor(Math.random()*this.options.slides.length);}
413this.loadSlide(this.currentSlideIndex);}
414startAutoplay(){this.autoplayEnabled=true;if(!this.autoplayTimer){this.autoplayTimer=setTimeout(()=>{this.nextSlide();},this.options.delay*1000);}}
415stopAutoplay(){this.autoplayEnabled=false;if(!this.autoplayTimer){clearTimeout(this.autoplayTimer);this.autoplayTimer=null;}}
416nextSlide(){this.currentSlideIndex=(this.currentSlideIndex+1)%this.options.slides.length;this.loadSlide(this.currentSlideIndex);}
417prevSlide(){this.currentSlideIndex=(this.currentSlideIndex-1+this.options.slides.length)%this.options.slides.length;this.loadSlide(this.currentSlideIndex);}
418loadSlide(index){if(!(this.imagePreloader.getImage(index))){this.imagePreloader.preloadImage(index).then(()=>{this._showSlide(index);});}else{this._showSlide(index);}}
419_attachEventListeners(index){const img=this.imagePreloader.getImage(index);if(!img||img.sliderBuildComplete){return;}
420img.sliderBuildComplete=true;if(this.options.slides[index].link){img.classList.add("slider__img--clickable");img.addEventListener("click",()=>{window.location=this.options.slides[index].link;});}}
421_showSlide(index){if(this.options.onBeforeShow(index,this.options.slides[index])===false){return;}
422this._attachEventListeners(index);const img=this.imagePreloader.getImage(index);const handleAnimationEnd=(event)=>{img.removeEventListener("animationend",handleAnimationEnd);this.options.onAfterShow(index,this.options.slides[index]);};img.addEventListener("animationend",handleAnimationEnd);if(this.autoplayEnabled){this.autoplayTimer=setTimeout(()=>{this.autoplayTimer=null;this.nextSlide();},this.options.delay*1000);}
423const preloaded=this.container.getElementsByClassName("slider__img--preload");if(preloaded.length){if(preloaded[0]===img){return;}
424preloaded[0].classList.remove("slider__img--preload");}
425this.container.append(img);const prevImg=this.container.getElementsByClassName("slider__img--visible");if(prevImg.length){prevImg[0].classList.remove("slider__img--visible");}
426if(this.container.children.length===1){img.classList.add("slider__img--preload");}else{img.classList.add("slider__img--visible");}}}
427(function(){window.jQuery=window.$=window.jQuery||function(selector){this._selector=selector;};let $=window.jQuery;const jQueryLoaders=[];$.loader=$.loader||function(content){console.warn("Deprecated use of $.loader()");const l=new Loader(content);jQueryLoaders.push(l);return l;};$.loader.load=Loader.load;$.loader.stop=(all)=>
427{jQueryLoaders.forEach((l)=>all?l.stopAll():l.stop());};if(!$.dialog){const _dialogSetDeprecatedMethods=function(d){d._parseDeprecatedOptions=function(options){for(var n in options){if(n==="onAfterShow"){d.on("show",options[n].bind(this));}
428if(n==="onAfterHide"){d.on("hide",options[n].bind(this));}}};d.contentOrig=d.content;d.content=function(content){if(content===undefined){return jQuery(d.contentOrig());}
429return d.contentOrig(content);};d.addButtonOrig=d.addButton;d.addButton=function(value,style,fn,title){if(typeof fn==="string"){title=fn;fn=null;}
430const btn=d.addButtonOrig(value,style,fn?fn.bind(d):fn);if(title){d.setButtonTooltip(title);}
431return btn;};d.set=function(setting,value){d._parseDeprecatedOptions({[setting]:value});return d;};};let _dialog=function(content,title,style,options){console.warn("Deprecated use of $.dialog()");if($.isPlainObject(content)){return this;}
432if($.isPlainObject(style)){options=style;style=undefined;}
433if($.isPlainObject(title)){options=title;title=undefined;}
434options=options||{};options['title']=title||options['title'];options['style']=style||options['style'];if(content instanceof jQuery){content.show();content=content.get(0);}
435const d=new Dialog(content,options['title'],options['style']);_dialogSetDeprecatedMethods(d);d._parseDeprecatedOptions(options);return d;};_dialog.alert=(content,title,style,fn_ok)=>{console.warn("Deprecated use of $.dialog.alert()");if($.isFunction(style)){fn_ok=style;style=undefined;}
436if($.isFunction(title)){fn_ok=title;style=undefined;title=undefined;}
437if(content instanceof jQuery){content.show();content=content.get(0);}
438const d=Dialog.alert(content,title,style,fn_ok);_dialogSetDeprecatedMethods(d);return d;};;_dialog.confirm=(content,title,style,fn_yes,fn_no)=>{console.warn("Deprecated use of $.dialog.confirm()");if($.isFunction(style)){fn_no=fn_yes;fn_yes=style;style=undefined;}
439if($.isFunction(title)){fn_no=style;fn_yes=title;style=undefined;title=undefined;}
440if(content instanceof jQuery){content.show();content=content.get(0);}
441const d=Dialog.confirm(content,title,style,fn_yes,fn_no);_dialogSetDeprecatedMethods(d);return d;};_dialog.okcancel=_dialog.confirm;_dialog.hideAll=Dialog.hideAll;_dialog.prompt=(content,title,style,fn_ok,fn_cancel,inputValue)=>{console.warn("Deprecated use of $.dialog.prompt()");if($.isFunction(style)){inputValue=fn_cancel;fn_cancel=fn_ok;fn_ok=style;style=undefined;}
442if($.isFunction(title)){inputValue=fn_cancel;fn_cancel=style;fn_ok=title;style=undefined;title=undefined;}
443if(fn_cancel&&!$.isFunction(fn_cancel)){inputValue=fn_cancel;fn_cancel=null;}
444if(content instanceof jQuery){content.show();content=content.get(0);}
445const input=document.createElement("input");input.type="text";input.classList.add("input");input.value=inputValue===undefined?"":inputValue;const container=document.createElement("div");Dialog._setElementContent(container,content);container.append(document.createElement("br"));container.append(input);const d=new Dialog(container,title,style);d.dismissable(false);d.addButton(Dialog._lang.ok,"success",()=>fn_ok(jQuery(input)));d.addButton(Dialog._lang.cancel,"warning",()=>fn_cancel?fn_cancel({dialog:d}):"");_dialogSetDeprecatedMethods(d);return d;};_dialog.load=Dialog.load;_dialog.hide=()=>{if(Dialog.current()){Dialog.current().hide();};};_dialog.current=()=>{console.warn("Deprecated use of $.dialog.current()");return Dialog.current();};_dialog.lang=Dialog.setLang;$.dialog=_dialog;}
446if(!$.notification){$.notification=function(content,style,showNextPageLoad){console.warn("Deprecated use of $.notification()");let n=new Notification(content,style);if(showNextPageLoad){n.showNextPageLoad();}};}
447if(!$.translationEditor){$.translationEditor=(linktype,linkid,property,lang,opts)=>{console.warn("Deprecated use of $.translationEditor()");if($.isPlainObject(linktype)){return this;}
448let editor;if(!isNaN(linktype)){editor=TranslationEditor.getById(linktype,linkid);}else if(!linkid||isNaN(linkid)){editor=TranslationEditor.getByLabel(linktype,linkid,property,lang);}else{editor=TranslationEditor.getByLinkType(linktype,linkid,property,lang);}
449if(opts){if(opts.onSave){editor.on("save",opts.onSave);}
450if(opts.onClose){editor.on("hide",opts.onClose);}}
451return editor;};}
452if(!$.addTinyDefaults){$.addTinyDefaults=(obj)=>{hcsTinyMCE.addDefaults(obj);};$.getTinyDefaults=(obj)=>{hcsTinyMCE.getDefaults();};$.onTinyReady=(fn)=>{console.warn("Deprecated use of $.onTinyReady()");hcsTinyMCE.onReady(fn);};}
453if(!$.fn.autocompletion){$.fn.autocompletion=function(obj){console.warn("Deprecated use of $().autocompletion()");if(this.data("autocompletioncache")){if(obj==="getSelectedKey"){const selected=this.data("autocompletioncache").getSelected();if(selected){return selected.id;}
454const data=this.data("autocompletioncache").getFilteredData();if(data&&data.length===1){return data[0].id;}
455return null;}
456if(obj==="search"){return this.data("autocompletioncache").search();}
457return this.data("autocompletioncache");}
458const ac=new Autocompletion(this.get(0));ac.setParam("query");if(obj.source){ac.setSource(obj.source);}
459if(obj.onOptionSelected){ac.on("select",()=>{obj.onOptionSelected(ac.getSelected().id,ac.getSelected().label);});}
460if(obj.onHideResults){ac.on("hideResults",()=>{obj.onHideResults.call(this);});}
461ac._parseDataOld=ac._parseData;ac._parseData=function(){if(typeof ac._data==="string"){ac._data=JSON.parse(ac._data);}
462const newData=[];
462for(var n in ac._data){if(Array.isArray(ac._data[n])){newData.push({id:n,label:ac._data[n][1],labelHTML:ac._data[n][0]});}else{newData.push({id:n,label:ac._data[n],labelHTML:ac._data[n]});}}
463ac._data=newData;return ac._parseDataOld();};this.data("autocompletioncache",ac);};}})();(function($){$.hcs.fn.plugin("carousel",{children:null,$wrapper:null,$navLeft:null,$navRight:null,$scrollbar:null,$scrollthumb:null,$navbar:null,autoscroll:null,autoscrollTimeout:null,_resizePending:false,_touchDelay:null,_uid:0,_static:{uid:0},options:{autoscroll:true,scrolldelay:3000,navigation:true,fitChild:true,fitChildMinMargin:10,stepSize:null,navLeft:'<svg class="svg-inline--fa fa-angle-left fa-xs" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="angle-left" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512" data-fa-i2svg=""><path fill="currentColor" d="M41.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 256 246.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-160 160z"></path></svg>',navRight:'<svg class="svg-inline--fa fa-angle-right fa-xs" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="angle-right" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512" data-fa-i2svg=""><path fill="currentColor" d="M278.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L210.7 256 73.4 118.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l160 160z"></path></svg>',scrollThreshold:50},_create:function(){var plugin=this;this.children=this.$elem.children();this._uid=this._static.uid;this._static.uid++;this.$elem.addClass("carousel");var elem=this.$elem.get(0);var children=elem.children;var childrenSize=children.length;Array.from(children).forEach((child,index)=>{if(!child.hasAttribute('role')){child.setAttribute('role',"group");}
464if(!child.hasAttribute('aria-label')){child.setAttribute('aria-label','item '+(index+1)+' / '+childrenSize);}});this.$wrapper=$("<div class='carousel-wrapper' role='group' aria-label='Carousel' id='carousel_"+this._uid+"'></div>");this.$wrapper.insertBefore(this.$elem);this.$wrapper.append(this.$elem);this.$navbar=$("<div class='carousel__navbar'></div>").appendTo(this.$wrapper);this.$navLeft=$("<div role='button' class='carousel__navleft' aria-controls='carousel_"+this._uid+"' aria-label='previous'>"+this.options.navLeft+"</div>").appendTo(this.$navbar);this.$scrollbar=$("<div class='carousel__scrollbar'></div>").appendTo(this.$navbar);this.$scrollThumb=$("<div class='carousel__thumb'></div>").appendTo(this.$scrollbar);this.$navRight=$("<div role='button' class='carousel__navright' aria-controls='carousel_"+this._uid+"' aria-label='next'>"+this.options.navRight+"</div>").appendTo(this.$navbar);this.$navLeft.click(function(){plugin.scrollLeft(true);});this.$navRight.click(function(){plugin.scrollRight(true);});if(this.options.navigation){}
465var plugin=this;if(this.options.autoscroll){this.$elem.mouseenter(function(){if(plugin.autoscroll){clearInterval(plugin.autoscroll);plugin.autoscroll=null;}});this.$elem.mouseleave(function(){if(plugin.autoscroll){return;}
466plugin.autoscroll=setInterval(function(){plugin.scrollRight(true);},plugin.options.scrolldelay);}).trigger("mouseleave");}
467this._on('scroll',function(){plugin._updateScrollbarPosition();});this._updateScrollThumb();this._on('touchstart',function(){plugin.$navbar.addClass("carousel__navbar--showmobile");if(plugin._touchDelay){clearTimeout(plugin._touchDelay);plugin._touchDelay=null;}});this._on('touchend',function(){plugin._touchDelay=setTimeout(function(){plugin.$navbar.removeClass("carousel__navbar--showmobile");},2000);});this.$scrollThumb.on('mousedown',function(e){var startX=e.pageX;var startScrollLeft=plugin.$elem.scrollLeft();$('body').css({'-moz-user-select':'none','-webkit-user-select':'none','-ms-user-select':'none','user-select':'none'});plugin._on(document,'mousemove',function(e){var x=e.pageX;var diff=x-startX;var thumbWidth=plugin.$scrollThumb.width();var scrollbarWidth=plugin.$scrollbar.width();var scrollableWidth=plugin.$elem[0].scrollWidth-plugin.$elem.width();var thumbPositionPercentage=diff /(scrollbarWidth-thumbWidth);var scrollLeft=startScrollLeft+thumbPositionPercentage*scrollableWidth;plugin.$elem.scrollLeft(scrollLeft);});plugin._on(document,'mouseup',function(){$('body').css({'-moz-user-select':'','-webkit-user-select':'','-ms-user-select':'','user-select':''});plugin._off(document,'mousemove');plugin._off(document,'mouseup');});});this._resize();this._on(window,"resize",function(){plugin._resize();});},_resize:function(){if(this.options.fitChild){if(this._resizePending){return;}
468this._resizePending=true;requestAnimationFrame(()=>{this._resizePending=false;this._updateScrollThumb();var elem=this.$elem[0];this.$elem.find('.carousel__spacer').remove();var carouselScrollWidth=elem.scrollWidth-elem.clientWidth;if(carouselScrollWidth<=0){this.$elem.css("justify-content","space-between");this.$navbar.addClass("carousel__navbar--fullwidth");return;}else{this.$elem.css("justify-content","initial");this.$navbar.removeClass("carousel__navbar--fullwidth");}
469var children=elem.children;var lastChild=children[0];var elemPadding=children[0].offsetLeft;var childMargin=0;for(var i=0;i<children.length;i++){var child=children[i];var childPos=child.offsetLeft-elemPadding;if(childPos>elem.clientWidth){var visibleChildren=i-1;var totalMargin=elem.clientWidth-lastChild.offsetLeft;if(totalMargin<=0){return;}
470childMargin=totalMargin /(visibleChildren===1?1:visibleChildren-1);break;}else if(i===(children.length-1)){var visibleChildren=i;var totalMargin=elem.clientWidth-child.offsetLeft-elemPadding;if(totalMargin<=0){return;}
471childMargin=totalMargin /(visibleChildren-1);break;}
472lastChild=child;}
473for(var i=children.length-1;i>0;i--){var spacer=document.createElement("div");spacer.style.width=childMargin+"px";spacer.classList.add("carousel__spacer");this.$elem[0].insertBefore(spacer,children[i]);}});}},_init:function(){},_destroy:function(){},_updateScrollThumb:function(){var elem=this.$elem[0];var scrollThumbWidthPercentage=(elem.clientWidth / elem.scrollWidth)*100;this.$scrollThumb.width(scrollThumbWidthPercentage+'%');},_updateScrollbarPosition:function(){var elem=this.$elem[0];var carouselScrollLeft=elem.scrollLeft;var carouselScrollWidth=elem.scrollWidth-elem.clientWidth;var carouselScrollPos=carouselScrollLeft*100 / carouselScrollWidth;var scrollbarWidth=this.$scrollbar.width();var scrollThumbWidth=this.$scrollThumb.width();
473var scrollSpace=(scrollbarWidth-scrollThumbWidth)*100 / scrollbarWidth;var scrollPos=carouselScrollPos*scrollSpace / 100;this.$scrollThumb.css("left",scrollPos+'%');},scrollLeft:function(backToEnd){var elem=this.$elem[0];var carouselScrollLeft=elem.scrollLeft;var carouselScrollWidth=elem.scrollWidth-elem.clientWidth;var targetScrollLeft=0;if(carouselScrollLeft<=0&&backToEnd){targetScrollLeft=carouselScrollWidth;}else{var children=elem.children;var elemPadding=children[0].offsetLeft;for(var i=0;i<children.length;i++){var child=children[i];if(children[i].classList.contains("carousel__spacer")){continue;}
474var childPos=child.offsetLeft-elemPadding;if(childPos>=(carouselScrollLeft-this.options.scrollThreshold)){break;}
475targetScrollLeft=childPos;}}
476this.$elem.get(0).scrollTo({left:targetScrollLeft,behavior:'smooth'});},scrollRight:function(backToStart){var elem=this.$elem[0];var carouselScrollLeft=elem.scrollLeft;var carouselLastVisiblePos=carouselScrollLeft+elem.clientWidth;var carouselScrollWidth=elem.scrollWidth-elem.clientWidth;var targetScrollLeft=0;if(carouselScrollLeft>=carouselScrollWidth&&backToStart){targetScrollLeft=0;}else{var children=elem.children;var lastChild=true;for(var i=0;i<children.length;i++){if(children[i].classList.contains("carousel__spacer")){continue;}
477var child=children[i];var childPos=child.offsetLeft;if(childPos>=carouselLastVisiblePos){if(children[i+1]){targetScrollLeft=children[i+1].offsetLeft-elem.clientWidth;lastChild=false;}else{lastChild=true;}
478break;}}
479if(lastChild){targetScrollLeft=carouselScrollWidth;}}
480this.$elem.get(0).scrollTo({left:targetScrollLeft,behavior:'smooth'});}});})(jQuery);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.