vendor: 4,476 bytes, lines 1-11
1 2window.lazySizesConfig = window.lazySizesConfig || {}; 3window.lazySizesConfig.lazyClass = "lazyload"; 4 5lazySizesConfig.srcAttr = "data-flickity-lazyload"; 6 7// page is optimized for fast onload event 8lazySizesConfig.loadMode = 0; 9 10/*! lazysizes - v4.0.3 */ 11!function(a,b){var c=b(a,a.document);a.lazySizes=c,"object"==typeof module&&module.exports&&(module.exports=c)}(window,function(a,b){"use strict";if(b.getElementsByClassName){var c,d,e=b.documentElement,f=a.Date,g=a.HTMLPictureElement,h="addEventListener",i="getAttribute",j=a[h],k=a.setTimeout,l=a.requestAnimationFrame||k,m=a.requestIdleCallback,n=/^picture$/i,o=["load","error","lazyincluded","_lazyloaded"],p={},q=Array.prototype.forEach,r=function(a,b){return p[b]||(p[b]=new RegExp("(\\s|^)"+b+"(\\s|$)")),p[b].test(a[i]("class")||"")&&p[b]},s=function(a,b){r(a,b)||a.setAttribute("class",(a[i]("class")||"").trim()+" "+b)},t=function(a,b){var c;(c=r(a,b))&&a.setAttribute("class",(a[i]("class")||"").replace(c," "))},u=function(a,b,c){var d=c?h:"removeEventListener";c&&u(a,b),o.forEach(function(c){a[d](c,b)})},v=function(a,d,e,f,g){var h=b.createEvent("CustomEvent");return e||(e={}),e.instance=c,h.initCustomEvent(d,!f,!g,e),a.dispatchEvent(h),h},w=function(b,c){var e;!g&&(e=a.picturefill||d.pf)?e({reevaluate:!0,elements:[b]}):c&&c.src&&(b.src=c.src)},x=function(a,b){return(getComputedStyle(a,null)||{})[b]},y=function(a,b,c){for(c=c||a.offsetWidth;c<d.minSize&&b&&!a._lazysizesWidth;)c=b.offsetWidth,b=b.parentNode;return c},z=function(){var a,c,d=[],e=[],f=d,g=function(){var b=f;for(f=d.length?e:d,a=!0,c=!1;b.length;)b.shift()();a=!1},h=function(d,e){a&&!e?d.apply(this,arguments):(f.push(d),c||(c=!0,(b.hidden?k:l)(g)))};return h._lsFlush=g,h}(),A=function(a,b){return b?function(){z(a)}:function(){var b=this,c=arguments;z(function(){a.apply(b,c)})}},B=function(a){var b,c=0,e=d.throttleDelay,g=d.ricTimeout,h=function(){b=!1,c=f.now(),a()},i=m&&g>49?function(){m(h,{timeout:g}),g!==d.ricTimeout&&(g=d.ricTimeout)}:A(function(){k(h)},!0);return function(a){var d;(a=a===!0)&&(g=33),b||(b=!0,d=e-(f.now()-c),0>d&&(d=0),a||9>d?i():k(i,d))}},C=function(a){var b,c,d=99,e=function(){b=null,a()},g=function(){var a=f.now()-c;d>a?k(g,d-a):(m||e)(e)};return function(){c=f.now(),b||(b=k(g,d))}};!function(){var b,c={lazyClass:"lazyload",loadedClass:"lazyloaded",loadingClass:"lazyloading",preloadClass:"lazypreload",errorClass:"lazyerror",autosizesClass:"lazyautosizes",srcAttr:"data-src",srcsetAttr:"data-srcset",sizesAttr:"data-sizes",minSize:40,customMedia:{},init:!0,expFactor:1.5,hFac:.8,loadMode:2,loadHidden:!0,ricTimeout:0,throttleDelay:125};d=a.lazySizesConfig||a.lazysizesConfig||{};for(b in c)b in d||(d[b]=c[b]);a.lazySizesConfig=d,k(function(){d.init&&F()})}();var D=function(){var g,l,m,o,p,y,D,F,G,H,I,J,K,L,M=/^img$/i,N=/^iframe$/i,O="onscroll"in a&&!/glebot/.test(navigator.userAgent),P=0,Q=0,R=0,S=-1,T=function(a){R--,a&&a.target&&u(a.target,T),(!a||0>R||!a.target)&&(R=0)},U=function(a,c){var d,f=a,g="hidden"==x(b.body,"visibility")||"hidden"!=x(a,"visibility");for(F-=c,I+=c,G-=c,H+=c;g&&(f=f.offsetParent)&&f!=b.body&&f!=e;)g=(x(f,"opacity")||1)>0,g&&"visible"!=x(f,"overflow")&&(d=f.getBoundingClientRect(),g=H>d.left&&G<d.right&&I>d.top-1&&F<d.bottom+1);return g},V=function(){var a,f,h,j,k,m,n,p,q,r=c.elements;if((o=d.loadMode)&&8>R&&(a=r.length)){f=0,S++,null==K&&("expand"in d||(d.expand=e.clientHeight>500&&e.clientWidth>500?500:370),J=d.expand,K=J*d.expFactor),K>Q&&1>R&&S>2&&o>2&&!b.hidden?(Q=K,S=0):Q=o>1&&S>1&&6>R?J:P;for(;a>f;f++)if(r[f]&&!r[f]._lazyRace)if(O)if((p=r[f][i]("data-expand"))&&(m=1*p)||(m=Q),q!==m&&(y=innerWidth+m*L,D=innerHeight+m,n=-1*m,q=m),h=r[f].getBoundingClientRect(),(I=h.bottom)>=n&&(F=h.top)<=D&&(H=h.right)>=n*L&&(G=h.left)<=y&&(I||H||G||F)&&(d.loadHidden||"hidden"!=x(r[f],"visibility"))&&(l&&3>R&&!p&&(3>o||4>S)||U(r[f],m))){if(ba(r[f]),k=!0,R>9)break}else!k&&l&&!j&&4>R&&4>S&&o>2&&(g[0]||d.preloadAfterLoad)&&(g[0]||!p&&(I||H||G||F||"auto"!=r[f][i](d.sizesAttr)))&&(j=g[0]||r[f]);else ba(r[f]);j&&!k&&ba(j)}},W=B(V),X=function(a){s(a.target,d.loadedClass),t(a.target,d.loadingClass),u(a.target,Z),v(a.target,"lazyloaded")},Y=A(X),Z=function(a){Y({target:a.target})},$=function(a,b){try{a.contentWindow.location.replace(b)}catch(c){a.src=b}},_=function(a){var b,c=a[i](d.srcsetAttr);(b=d.customMedia[a[i]("data-media")||a[i]("media")])&&a.setAttribute("media",b),c&&a.setAttribute("srcset",c)},aa=A(function(a,b,c,e,f){var g,h,j,l,o,p;
11(o=v(a,"lazybeforeunveil",b)).defaultPrevented||(e&&(c?s(a,d.autosizesClass):a.setAttribute("sizes",e)),h=a[i](d.srcsetAttr),g=a[i](d.srcAttr),f&&(j=a.parentNode,l=j&&n.test(j.nodeName||"")),p=b.firesLoad||"src"in a&&(h||g||l),o={target:a},p&&(u(a,T,!0),clearTimeout(m),m=k(T,2500),s(a,d.loadingClass),u(a,Z,!0)),l&&q.call(j.getElementsByTagName("source"),_),h?a.setAttribute("srcset",h):g&&!l&&(N.test(a.nodeName)?$(a,g):a.src=g),f&&(h||l)&&w(a,{src:g})),a._lazyRace&&delete a._lazyRace,t(a,d.lazyClass),z(function(){(!p||a.complete&&a.naturalWidth>1)&&(p?T(o):R--,X(o))},!0)}),ba=function(a){var b,c=M.test(a.nodeName),e=c&&(a[i](d.sizesAttr)||a[i]("sizes")),f="auto"==e;(!f&&l||!c||!a[i]("src")&&!a.srcset||a.complete||r(a,d.errorClass)||!r(a,d.lazyClass))&&(b=v(a,"lazyunveilread").detail,f&&E.updateElem(a,!0,a.offsetWidth),a._lazyRace=!0,R++,aa(a,b,f,e,c))},ca=function(){if(!l){if(f.now()-p<999)return void k(ca,999);var a=C(function(){d.loadMode=3,W()});l=!0,d.loadMode=3,W(),j("scroll",function(){3==d.loadMode&&(d.loadMode=2),a()},!0)}};return{_:function(){p=f.now(),c.elements=b.getElementsByClassName(d.lazyClass),g=b.getElementsByClassName(d.lazyClass+" "+d.preloadClass),L=d.hFac,j("scroll",W,!0),j("resize",W,!0),a.MutationObserver?new MutationObserver(W).observe(e,{childList:!0,subtree:!0,attributes:!0}):(e[h]("DOMNodeInserted",W,!0),e[h]("DOMAttrModified",W,!0),setInterval(W,999)),j("hashchange",W,!0),["focus","mouseover","click","load","transitionend","animationend","webkitAnimationEnd"].forEach(function(a){b[h](a,W,!0)}),/d$|^c/.test(b.readyState)?ca():(j("load",ca),b[h]("DOMContentLoaded",W),k(ca,2e4)),c.elements.length?(V(),z._lsFlush()):W()},checkElems:W,unveil:ba}}(),E=function(){var a,c=A(function(a,b,c,d){var e,f,g;if(a._lazysizesWidth=d,d+="px",a.setAttribute("sizes",d),n.test(b.nodeName||""))for(e=b.getElementsByTagName("source"),f=0,g=e.length;g>f;f++)e[f].setAttribute("sizes",d);c.detail.dataAttr||w(a,c.detail)}),e=function(a,b,d){var e,f=a.parentNode;f&&(d=y(a,f,d),e=v(a,"lazybeforesizes",{width:d,dataAttr:!!b}),e.defaultPrevented||(d=e.detail.width,d&&d!==a._lazysizesWidth&&c(a,f,e,d)))},f=function(){var b,c=a.length;if(c)for(b=0;c>b;b++)e(a[b])},g=C(f);return{_:function(){a=b.getElementsByClassName(d.autosizesClass),j("resize",g)},checkElems:g,updateElem:e}}(),F=function(){F.i||(F.i=!0,E._(),D._())};return c={cfg:d,autoSizer:E,loader:D,init:F,uP:w,aC:s,rC:t,hC:r,fire:v,gW:y,rAF:z}}}); 12 13!function(){if("function"!=typeof window.CustomEvent){var e=function(e,t){t=t||{bubbles:!1,cancelable:!1,detail:void 0};var n=document.createEvent("CustomEvent");return n.initCustomEvent(e,t.bubbles,t.cancelable,t.detail),n};e.prototype=window.Event.prototype,window.CustomEvent=e}function t(){return(t=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}).apply(this,arguments)}function n(e){var i=['a[href]:not([tabindex^="-"]):not([inert])','area[href]:not([tabindex^="-"]):not([inert])',"input:not([disabled]):not([inert])","select:not([disabled]):not([inert])","textarea:not([disabled]):not([inert])","button:not([disabled]):not([inert])",'iframe:not([tabindex^="-"]):not([inert])','audio:not([tabindex^="-"]):not([inert])','video:not([tabindex^="-"]):not([inert])','[contenteditable]:not([tabindex^="-"]):not([inert])','[tabindex]:not([tabindex^="-"]):not([inert])'],r=[],o={gallery:[],slider:null,sliderElements:[],elementsLength:0,currentIndex:0,x:0},a=[],d={},s=0,l=null,u=null,c=null,p=null,b=null,f={},m=!1,h=!1,v=!1,g=null,y=null,w=null,x=!1,E=!1,A=0,L={},_=null,C=null,I={image:{checkSupport:function(e){return!e.hasAttribute("data-type")&&e.href.match(/\.(png|jpe?g|tiff|tif|gif|bmp|webp|avif|svg|ico)(\?.*)?$/i)},init:function(e,t){var n=document.createElement("figure"),i=document.createElement("figcaption"),r=document.createElement("img"),o=e.querySelector("img"),a=document.createElement("div");n.style.opacity="0",o&&(r.alt=o.alt||""),r.setAttribute("src",""),r.setAttribute("data-src",e.href),n.appendChild(r),d.captions&&("function"==typeof d.captionText?i.textContent=d.captionText(e):"self"===d.captionsSelector&&e.getAttribute(d.captionAttribute)?i.textContent=e.getAttribute(d.captionAttribute):"img"===d.captionsSelector&&o&&o.getAttribute(d.captionAttribute)&&(i.textContent=o.getAttribute(d.captionAttribute)),i.textContent&&(i.id="tobii-figcaption-"+s,n.appendChild(i),r.setAttribute("aria-labelledby",i.id),++s)),t.appendChild(n),a.className="tobii__loader",a.setAttribute("role","progressbar"),a.setAttribute("aria-label",d.loadingIndicatorLabel),t.appendChild(a),t.setAttribute("data-type","image")},onPreload:function(e){I.image.onLoad(e)},onLoad:function(e){var t=e.querySelector("img");if(t.hasAttribute("data-src")){var n=e.querySelector("figure"),i=e.querySelector(".tobii__loader");t.onload=function(){e.removeChild(i),n.style.opacity="1"},t.setAttribute("src",t.getAttribute("data-src")),t.removeAttribute("data-src")}},onLeave:function(e){},onCleanup:function(e){}},html:{checkSupport:function(e){return oe(e,"html")},init:function(e,t){var n=e.hasAttribute("href")?e.getAttribute("href"):e.getAttribute("data-target"),i=document.querySelector(n);if(!i)throw new Error("Ups, I can't find the target "+n+".");t.appendChild(i),t.setAttribute("data-type","html")},onPreload:function(e){},onLoad:function(e){var t=e.querySelector("video");t&&(t.hasAttribute("data-time")&&t.readyState>0&&(t.currentTime=t.getAttribute("data-time")),d.autoplayVideo&&t.play())},onLeave:function(e){var t=e.querySelector("video");t&&(t.paused||t.pause(),t.readyState>0&&t.setAttribute("data-time",t.currentTime))},onCleanup:function(e){var t=e.querySelector("video");if(t&&t.readyState>0&&t.readyState<3&&t.duration!==t.currentTime){var n=t.cloneNode(!0);ae(t),t.load(),t.parentNode.removeChild(t),e.appendChild(n)}}},iframe:{checkSupport:function(e){return oe(e,"iframe")},init:function(e,t){var n=document.createElement("iframe"),i=e.hasAttribute("href")?e.getAttribute("href"):e.getAttribute("data-target");n.setAttribute("frameborder","0"),n.setAttribute("src",""),n.setAttribute("data-src",
13i),e.getAttribute("data-width")&&(n.style.maxWidth=e.getAttribute("data-width")+"px"),e.getAttribute("data-height")&&(n.style.maxHeight=e.getAttribute("data-height")+"px"),t.appendChild(n),t.setAttribute("data-type","iframe")},onPreload:function(e){},onLoad:function(e){var t=e.querySelector("iframe");t.setAttribute("src",t.getAttribute("data-src"))},onLeave:function(e){},onCleanup:function(e){}},youtube:{checkSupport:function(e){return oe(e,"youtube")},init:function(e,t){var n=document.createElement("div");t.appendChild(n),a[A]=new window.YT.Player(n,{host:"https://www.youtube-nocookie.com",height:e.getAttribute("data-height")||"360",width:e.getAttribute("data-width")||"640",videoId:e.getAttribute("data-id"),playerVars:{controls:e.getAttribute("data-controls")||1,rel:0,playsinline:1}}),t.setAttribute("data-player",A),t.setAttribute("data-type","youtube"),A++},onPreload:function(e){},onLoad:function(e){d.autoplayVideo&&a[e.getAttribute("data-player")].playVideo()},onLeave:function(e){1===a[e.getAttribute("data-player")].getPlayerState()&&a[e.getAttribute("data-player")].pauseVideo()},onCleanup:function(e){1===a[e.getAttribute("data-player")].getPlayerState()&&a[e.getAttribute("data-player")].pauseVideo()}}},S=function(e){if(null===document.querySelector('[data-type="youtube"]')||E)k(e);else{if(null===document.getElementById("iframe_api")){var t=document.createElement("script"),n=document.getElementsByTagName("script")[0];t.id="iframe_api",t.src="https://www.youtube.com/iframe_api",n.parentNode.insertBefore(t,n)}-1===r.indexOf(e)&&r.push(e),window.onYouTubePlayerAPIReady=function(){r.forEach(function(e){k(e)}),E=!0}}},T=function(e){return e.hasAttribute("data-group")?e.getAttribute("data-group"):"default"},k=function(e){if(_=T(e),Object.prototype.hasOwnProperty.call(L,_)||(L[_]=JSON.parse(JSON.stringify(o)),N()),-1!==L[_].gallery.indexOf(e))throw new Error("Ups, element already added.");if(L[_].gallery.push(e),L[_].elementsLength++,d.zoom&&e.querySelector("img")){var t=document.createElement("div");t.className="tobii-zoom__icon",t.innerHTML=d.zoomText,e.classList.add("tobii-zoom"),e.appendChild(t)}e.addEventListener("click",W),O(e),ue()&&_===C&&(de(),se())},P=function(e){var t=T(e);if(-1===L[t].gallery.indexOf(e))throw new Error("Ups, I can't find a slide for the element "+e+".");var n=L[t].gallery.indexOf(e),i=L[t].sliderElements[n];if(ue()&&t===C&&n===L[t].currentIndex){if(1===L[t].elementsLength)throw X(),new Error("Ups, I've closed. There are no slides more to show.");0===L[t].currentIndex?M():z()}if(L[t].elementsLength--,d.zoom&&e.querySelector(".tobii-zoom__icon")){var r=e.querySelector(".tobii-zoom__icon");r.parentNode.classList.remove("tobii-zoom"),r.parentNode.removeChild(r)}e.removeEventListener("click",W),i.parentNode.removeChild(i)},N=function(){L[_].slider=document.createElement("div"),L[_].slider.className="tobii__slider",L[_].slider.setAttribute("aria-hidden","true"),l.appendChild(L[_].slider)},O=function(e){for(var t in I)if(Object.prototype.hasOwnProperty.call(I,t)&&I[t].checkSupport(e)){var n=document.createElement("div"),i=document.createElement("div");n.className="tobii__slide",n.style.position="absolute",n.style.left=100*L[_].x+"%",n.setAttribute("aria-hidden","true"),I[t].init(e,i),n.appendChild(i),L[_].slider.appendChild(n),L[_].sliderElements.push(n),++L[_].x;break}},q=function(e){if(C=null!==C?C:_,ue())throw new Error("Ups, I'm aleady open.");if(!ue()&&(e||(e=0),-1===e||e>=L[C].elementsLength))throw new Error("Ups, I can't find slide "+e+".");d.hideScrollbar&&(document.documentElement.classList.add("tobii-is-open"),document.body.classList.add("tobii-is-open")),de(),d.close||(p.disabled=!1,p.setAttribute("aria-hidden","true")),g=document.activeElement;var t=window.location.href;window.history.pushState({tobii:"close"},"Image",t),L[C].currentIndex=e,B(),ie(),Y(L[C].currentIndex),L[C].slider.setAttribute("aria-hidden","false"),l.setAttribute("aria-hidden","false"),se(),U(L[C].currentIndex+1),U(L[C].currentIndex-1),setTimeout(function(){L[C].slider.classList.add("tobii__slider--animate")},1e3);var n=new window.CustomEvent("open");l.dispatchEvent(n)},X=function(){if(!ue())throw new Error("Ups, I'm already closed.");d.hideScrollbar&&(document.documentElement.classList.remove("tobii-is-open"),document.body.classList.remove("tobii-is-open")),re(),null!==window.history.state&&"close"===window.history.state.tobii&&window.history.back(),g.focu
13s(),D(L[C].currentIndex),H(L[C].currentIndex),l.setAttribute("aria-hidden","true"),L[C].slider.setAttribute("aria-hidden","true"),L[C].currentIndex=0,L[C].slider.classList.remove("tobii__slider--animate")},U=function(e){if(void 0!==L[C].sliderElements[e]){var t=L[C].sliderElements[e].querySelector("[data-type]"),n=t.getAttribute("data-type");I[n].onPreload(t)}},Y=function(e){if(void 0!==L[C].sliderElements[e]){var t=L[C].sliderElements[e].querySelector("[data-type]"),n=t.getAttribute("data-type");L[C].sliderElements[e].classList.add("tobii__slide--is-active"),L[C].sliderElements[e].setAttribute("aria-hidden","false"),I[n].onLoad(t)}},z=function(){if(!ue())throw new Error("Ups, I'm closed.");L[C].currentIndex>0&&(D(L[C].currentIndex),Y(--L[C].currentIndex),se("left"),H(L[C].currentIndex+1),U(L[C].currentIndex-1));var e=new window.CustomEvent("previous");l.dispatchEvent(e)},M=function(){if(!ue())throw new Error("Ups, I'm closed.");L[C].currentIndex<L[C].elementsLength-1&&(D(L[C].currentIndex),Y(++L[C].currentIndex),se("right"),H(L[C].currentIndex-1),U(L[C].currentIndex+1));var e=new window.CustomEvent("next");l.dispatchEvent(e)},D=function(e){if(void 0!==L[C].sliderElements[e]){var t=L[C].sliderElements[e].querySelector("[data-type]"),n=t.getAttribute("data-type");L[C].sliderElements[e].classList.remove("tobii__slide--is-active"),L[C].sliderElements[e].setAttribute("aria-hidden","true"),I[n].onLeave(t)}},H=function(e){if(void 0!==L[C].sliderElements[e]){var t=L[C].sliderElements[e].querySelector("[data-type]"),n=t.getAttribute("data-type");I[n].onCleanup(t)}},j=function(){L[C=null!==C?C:_].slider.style.transform="translate3d("+(y=-L[C].currentIndex*l.offsetWidth)+"px, 0, 0)",w=y},B=function(){f={startX:0,endX:0,startY:0,endY:0}},V=function(){var e=f.endX-f.startX,t=f.endY-f.startY,n=Math.abs(e),i=Math.abs(t);e>0&&n>d.threshold&&L[C].currentIndex>0?z():e<0&&n>d.threshold&&L[C].currentIndex!==L[C].elementsLength-1?M():t<0&&i>d.threshold&&d.swipeClose?X():j()},R=function(){x||(x=!0,window.requestAnimationFrame(function(){j(),x=!1}))},W=function(e){e.preventDefault(),C=T(e.currentTarget),q(L[C].gallery.indexOf(e.currentTarget))},G=function(e){e.target===u?z():e.target===c?M():(e.target===p||!1===m&&!1===h&&e.target.classList.contains("tobii__slide")&&d.docClose)&&X(),e.stopPropagation()},J=function(e){var t=Array.prototype.slice.call(l.querySelectorAll(".tobii__btn:not([disabled]), .tobii__slide--is-active + "+i.join(", .tobii__slide--is-active "))).filter(function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)}),n=t.indexOf(document.activeElement);9===e.keyCode||"Tab"===e.code?e.shiftKey&&0===n?(t[t.length-1].focus(),e.preventDefault()):e.shiftKey||n!==t.length-1||(t[0].focus(),e.preventDefault()):27===e.keyCode||"Escape"===e.code?(e.preventDefault(),X()):37===e.keyCode||"ArrowLeft"===e.code?(e.preventDefault(),z()):39!==e.keyCode&&"ArrowRight"!==e.code||(e.preventDefault(),M())},K=function(e){pe(e.target)||(e.stopPropagation(),m=!1,h=!1,v=!0,f.startX=e.touches[0].pageX,f.startY=e.touches[0].pageY,L[C].slider.classList.add("tobii__slider--is-dragging"))},F=function(e){e.stopPropagation(),v&&(e.preventDefault(),f.endX=e.touches[0].pageX,f.endY=e.touches[0].pageY,ne())},$=function(e){e.stopPropagation(),v=!1,L[C].slider.classList.remove("tobii__slider--is-dragging"),f.endX&&V(),B()},Q=function(e){pe(e.target)||(e.preventDefault(),e.stopPropagation(),m=!1,h=!1,v=!0,f.startX=e.pageX,f.startY=e.pageY,L[C].slider.classList.add("tobii__slider--is-dragging"))},Z=function(e){e.preventDefault(),v&&(f.endX=e.pageX,f.endY=e.pageY,ne())},ee=function(e){e.stopPropagation(),v=!1,L[C].slider.classList.remove("tobii__slider--is-dragging"),f.endX&&V(),B()},te=function(){v=!1},ne=function(){Math.abs(f.startX-f.endX)>0&&!h&&L[C].elementsLength>1?(L[C].slider.style.transform="translate3d("+(w-Math.round(f.startX-f.endX))+"px, 0, 0)",m=!0,h=!1):Math.abs(f.startY-f.endY)>0&&!m&&d.swipeClose&&(L[C].slider.style.transform="translate3d("+w+"px, -"+Math.round(f.startY-f.endY)+"px, 0)",m=!1,h=!0)},ie=function(){d.keyboard&&window.addEventListener("keydown",J),window.addEventListener("resize",R),window.addEventListener("popstate",X),l.addEventListener("click",G),d.draggable&&(ce()&&(l.addEventListener("touchstart",K),l.addEventListener("touchmove",F),l.addEventListener("touchend",$)),l.addEventListener("mousedown",Q),l.addEventListener("mouseup",ee),l.addEventListener("mousemove",Z),l.addEventListener("contextmenu",te))},re=function(){d.keyboard&&window.removeEventListener("keydown",J),window.removeEventListener("resize",R),window.removeEventListener("popstate",X),l.removeEventListener("click",G),d.draggable&&(ce()&&(l.removeEventListener("touchstart",K),l.removeEventListener("touchmove",F),l.removeEventListener("touchend",$)),l.removeEventListener("mousedown",Q),l.removeEventListener("mouseup",ee),l.removeEventListener("mousemove",Z),l.removeEventListener("contextmenu",te))},oe=function(e,t){return e.getAttribute("data-type")===t},ae=function(e){var t=e.querySelectorAll("src");t&&t.forEach(function(e){e.setAttribute("src","")})},de=function(){(d.draggable&&d.swipeClose&&!L[C].slider.classList.contains("tobii__slider--is-draggable")||d.draggable&&L[C].elementsLength>1&&!L[C].slider.classList.contains("tobii__slider--is-draggable"))&&L[C].slider.classList.add("tobii__slider--is-draggable"),!d.nav||1===L[C].elementsLength||"auto"===d.nav&&ce()?(u.setAttribute("aria-hidden","true"),u.disabled=!0,c.setAttribute("aria-hidden","true"),c.disabled=!0):(u.setAttribute("aria-hidden","false"),u.disabled=!1,c.setAttribute("aria-hidden","false"),c.disabled=!1),b.setAttribute("aria-hidden",d.counter&&1!==L[C].elementsLength?"false":"true")},se=function(e){j(),b.textContent=L[C].currentIndex+1+"/"+L[C].elementsLength,function(e){(!0===d.nav||"auto"===d.nav)&&!ce()&&L[C].elementsLength>1?(u.setAttribute("aria-hidden","true"),u.disabled=!0,c.setAttribute("aria-hidden","true"),c.disabled=!0,1===L[C].elementsLength?d.close&&p.focus():0===L[C].currentIndex?(c.setAttribute("aria-hidden","false"),c.disabled=!1,c.focus()):L[C].currentIndex===L[C].elementsLength-1?(u.setAttribute("aria-hidden","false"),u.disabled=!1,u.focus()):(u.setAttribute("aria-hidden","false"),u.disabled=!1,c.setAttribute("aria-hidden","false"),c.disabled=!1,"left"===e?u.focus():c.focus())):d.close&&p.focus()}(e)}
13,le=function(){ue()&&X(),Object.entries(L).forEach(function(e){e[1].gallery.forEach(function(e){P(e)})}),L={},_=C=null,s=0},ue=function(){return"false"===l.getAttribute("aria-hidden")},ce=function(){return"ontouchstart"in window},pe=function(e){return-1!==["TEXTAREA","OPTION","INPUT","SELECT"].indexOf(e.nodeName)||e===u||e===c||e===p};return function(e){d=function(e){return t({},{selector:".lightbox",captions:!0,captionsSelector:"img",captionAttribute:"alt",captionText:null,nav:"auto",navText:['<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" focusable="false"><path stroke="none" d="M0 0h24v24H0z"/><polyline points="15 6 9 12 15 18" /></svg>','<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" focusable="false"><path stroke="none" d="M0 0h24v24H0z"/><polyline points="9 6 15 12 9 18" /></svg>'],navLabel:["Previous image","Next image"],close:!0,closeText:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" focusable="false"><path stroke="none" d="M0 0h24v24H0z"/><line x1="18" y1="6" x2="6" y2="18" /><line x1="6" y1="6" x2="18" y2="18" /></svg>',closeLabel:"Close lightbox",loadingIndicatorLabel:"Image loading",counter:!0,download:!1,downloadText:"",downloadLabel:"Download image",keyboard:!0,zoom:!0,zoomText:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" focusable="false"><path stroke="none" d="M0 0h24v24H0z"/><polyline points="16 4 20 4 20 8" /><line x1="14" y1="10" x2="20" y2="4" /><polyline points="8 20 4 20 4 16" /><line x1="4" y1="20" x2="10" y2="14" /><polyline points="16 20 20 20 20 16" /><line x1="14" y1="14" x2="20" y2="20" /><polyline points="8 4 4 4 4 8" /><line x1="4" y1="4" x2="10" y2="10" /></svg>',docClose:!0,swipeClose:!0,hideScrollbar:!0,draggable:!0,threshold:100,rtl:!1,loop:!1,autoplayVideo:!1,modal:!1,theme:"tobii--theme-default"},e)}(e),l||((l=document.createElement("div")).setAttribute("role","dialog"),l.setAttribute("aria-hidden","true"),l.classList.add("tobii"),l.classList.add(d.theme),(u=document.createElement("button")).className="tobii__btn tobii__btn--previous",u.setAttribute("type","button"),u.setAttribute("aria-label",d.navLabel[0]),u.innerHTML=d.navText[0],l.appendChild(u),(c=document.createElement("button")).className="tobii__btn tobii__btn--next",c.setAttribute("type","button"),c.setAttribute("aria-label",d.navLabel[1]),c.innerHTML=d.navText[1],l.appendChild(c),(p=document.createElement("button")).className="tobii__btn tobii__btn--close",p.setAttribute("type","button"),p.setAttribute("aria-label",d.closeLabel),p.innerHTML=d.closeText,l.appendChild(p),(b=document.createElement("div")).className="tobii__counter",l.appendChild(b),document.body.appendChild(l));var n=document.querySelectorAll(d.selector);if(!n)throw new Error("Ups, I can't find the selector "+d.selector+" on this website.");n.forEach(function(e){S(e)})}(e),n.open=q,n.previous=z,n.next=M,n.close=X,n.add=S,n.remove=P,n.reset=le,n.destroy=function(){le(),l.parentNode.removeChild(l)},n.isOpen=ue,n.slidesIndex=function(){return L[C].currentIndex},n.select=function(e){var t=L[C].currentIndex;if(!ue())throw new Error("Ups, I'm closed.");if(ue()){if(!e&&0!==e)throw new Error("Ups, no slide specified.");if(e===L[C].currentIndex)throw new Error("Ups, slide "+e+" is already selected.");if(-1===e||e>=L[C].elementsLength)throw new Error("Ups, I can't find slide "+e+".")}L[C].currentIndex=e,D(t),Y(e),e<t&&(se("left"),H(t),U(e-1)),e>t&&(se("right"),H(t),U(e+1))},n.slidesCount=function(){return L[C].elementsLength},n.selectGroup=function(e){if(ue())throw new Error("Ups, I'm open.");if(!e)throw new Error("Ups, no group specified.");if(e&&!Object.prototype.hasOwnProperty.call(L,e))throw new Error("Ups, I don't have a group called \""+e+'".');C=e},n.currentGroup=function(){return null!==C?C:_},n.on=function(e,t){l.addEventListener(e,t)},n.off=function(e,t){l.removeEventListener(e,t)},n}typeof module<"u"?module.exports=n:self.Tobii=n}(); 14 15!function(a,b,c){"use strict";var d=function(){function d(d){function e(){B.forEach(function(a){m(a,u)}),y||m(b.documentElement,"no-csstransforms3d"),m(A,t)}function f(){if(!a.getComputedStyle)return!1;var d,e=b.createElement("p"),f={webkitTransform:"-webkit-transform",OTransform:"-o-transform",msTransform:"-ms-transform",MozTransform:"-moz-transform",transform:"transform"};b.body.insertBefore(e,null);for(var g in f)e.style[g]!==c&&(e.style[g]="translate3d(1px,1px,1px)",d=a.getComputedStyle(e).getPropertyValue(f[g]));return b.body.removeChild(e),d!==c&&d.length>0&&"none"!==d}function g(a,b,d){var e=q(a!==c?a:".offside");return e!==!1?new h(e[0],b,d):null}function h(a,b,c){var d,e;e={buttonsSelector:"",slidingSide:"left",init:function(){},beforeOpen:function(){},afterOpen:function(){},beforeClose:function(){},afterClose:function(){},beforeDestroy:function(){},afterDestroy:function(){}};for(d in b)e.hasOwnProperty(d)&&(e[d]=b[d]);var f=a,g=q(e.buttonsSelector),h=e.slidingSide,i="offside",j=i+"--"+h,t="is-open",u=s+"--is-open",v=s+"--is-"+h,y=c||0,B=function(){r(z,y)===!1?D():E()},D=function(){e.beforeOpen(),x&&(x=!1,l()),k(),m(A,u),m(A,v),m(f,t),z.push(y),e.afterOpen()},E=function(){var a=r(z,y);a!==!1&&(e.beforeClose(),n(A,u),n(A,v),n(f,t),z.splice(a,1),e.afterClose())},F=function(){k()},G=function(a){a.preventDefault(),B()},H=function(){C&&J(),m(f,i),m(f,j),g.forEach(function(a){o(a,"click",G)}
vendor: 2,156 bytes, lines 15-17
15),e.init()},I=function(){e.beforeDestroy(),E(),g.forEach(function(a){p(a,"click",G)}),n(f,i),n(f,j),delete w[y],e.afterDestroy()},J=function(){f||console.error('Offside alert: "offside" selector could not match any element'),g.length||console.error('Offside alert: "buttonsSelector" selector could not match any element')};this.toggle=function(){B()},this.open=function(){D()},this.close=function(){E()},this.closeAll=function(){F()},this.destroy=function(){I()},H()}var i,j,k=function(a){z.length>0&&(isNaN(a)?z.forEach(function(a){w[a].close()}):w[a].close())},l=function(){m(A,v)},m=function(a,b){a.classList?a.classList.add(b):a.className=(a.className+" "+b).trim()},n=function(a,b){a.classList?a.classList.remove(b):a.className=a.className.replace(new RegExp("(^|\\b)"+b.split(" ").join("|")+"(\\b|$)","gi")," ")},o=function(a,b,c){a.addEventListener(b,c)},p=function(a,b,c){a.removeEventListener(b,c)},q=function(a){return a instanceof HTMLElement?[a]:Array.isArray(a)?a:"string"==typeof a&&Array.apply(null,b.querySelectorAll(a))},r=function(a,b){var c=a.indexOf(b);return c>-1&&c};j={slidingElementsSelector:".offside-sliding-element",disableCss3dTransforms:!1,debug:!1};for(i in d)j.hasOwnProperty(i)&&(j[i]=d[i]);var s="offside-js",t=s+"--init",u="offside-sliding-element",v=s+"--interact",w=[],x=!0,y=!j.disableCss3dTransforms&&f(),z=[],A=b.body,B=q(j.slidingElementsSelector),C=j.debug;return e(),{closeOpenOffside:function(){k()},getOffsideInstance:function(a,b){var c=w.length||0,d=g(a,b,c);if(null!==d)return w[c]=d}}}var e={getInstance:function(a,b){return e.getInstance.factory||(e.getInstance.factory=d(b)),e.getInstance.factory.getOffsideInstance(a,b)}};return e}();"undefined"!=typeof module&&module.exports?module.exports=d.getInstance:a.offside=d.getInstance}(window,document); 16/*! smooth-scroll v14.2.0 | (c) 2018 Chris Ferdinandi | MIT License | http://github.com/cferdinandi/smooth-scroll */ 17window.Element&&!Element.prototype.closest&&(Element.prototype.closest=function(e){var t,n=(this.document||this.ownerDocument).querySelectorAll(e),o=this;do{for(t=n.length;--t>=0&&n.item(t)!==o;);}while(t<0&&(o=o.parentElement));return o}
17),(function(){function e(e,t){t=t||{bubbles:!1,cancelable:!1,detail:void 0};var n=document.createEvent("CustomEvent");return n.initCustomEvent(e,t.bubbles,t.cancelable,t.detail),n}if("function"==typeof window.CustomEvent)return!1;e.prototype=window.Event.prototype,window.CustomEvent=e})(),(function(){for(var e=0,t=["ms","moz","webkit","o"],n=0;n<t.length&&!window.requestAnimationFrame;++n)window.requestAnimationFrame=window[t[n]+"RequestAnimationFrame"],window.cancelAnimationFrame=window[t[n]+"CancelAnimationFrame"]||window[t[n]+"CancelRequestAnimationFrame"];window.requestAnimationFrame||(window.requestAnimationFrame=function(t,n){var o=(new Date).getTime(),i=Math.max(0,16-(o-e)),r=window.setTimeout((function(){t(o+i)}),i);return e=o+i,r}),window.cancelAnimationFrame||(window.cancelAnimationFrame=function(e){clearTimeout(e)})})(),(function(e,t){"function"==typeof define&&define.amd?define([],(function(){return t(e)})):"object"==typeof exports?module.exports=t(e):e.SmoothScroll=t(e)})("undefined"!=typeof global?global:"undefined"!=typeof window?window:this,(function(e){"use strict";var t={ignore:"[data-scroll-ignore]",header:null,topOnEmptyHash:!0,speed:500,clip:!0,offset:0,easing:"easeInOutCubic",customEasing:null,updateURL:!0,popstate:!0,emitEvents:!0},n=function(){return"querySelector"in document&&"addEventListener"in e&&"requestAnimationFrame"in e&&"closest"in e.Element.prototype},o=function(){for(var e={},t=0;t<arguments.length;t++)!(function(t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(arguments[t]);return e},i=function(t){return!!("matchMedia"in e&&e.matchMedia("(prefers-reduced-motion)").matches)},r=function(t){return parseInt(e.getComputedStyle(t).height,10)},a=function(e){var t;try{t=decodeURIComponent(e)}catch(n){t=e}return t},c=function(e){"#"===e.charAt(0)&&(e=e.substr(1));for(var t,n=String(e),o=n.length,i=-1,r="",a=n.charCodeAt(0);++i<o;){if(0===(t=n.charCodeAt(i)))throw new InvalidCharacterError("Invalid character: the input contains U+0000.");t>=1&&t<=31||127==t||0===i&&t>=48&&t<=57||1===i&&t>=48&&t<=57&&45===a?r+="\\"+t.toString(16)+" ":r+=t>=128||45===t||95===t||t>=48&&t<=57||t>=65&&t<=90||t>=97&&t<=122?n.charAt(i):"\\"+n.charAt(i)}var c;try{c=decodeURIComponent("#"+r)}catch(e){c="#"+r}return c},u=function(e,t){var n;return"easeInQuad"===e.easing&&(n=t*t),"easeOutQuad"===e.easing&&(n=t*(2-t)),"easeInOutQuad"===e.easing&&(n=t<.5?2*t*t:(4-2*t)*t-1),"easeInCubic"===e.easing&&(n=t*t*t),"easeOutCubic"===e.easing&&(n=--t*t*t+1),"easeInOutCubic"===e.easing&&(n=t<.5?4*t*t*t:(t-1)*(2*t-2)*(2*t-2)+1),"easeInQuart"===e.easing&&(n=t*t*t*t),"easeOutQuart"===e.easing&&(n=1- --t*t*t*t),"easeInOutQuart"===e.easing&&(n=t<.5?8*t*t*t*t:1-8*--t*t*t*t),"easeInQuint"===e.easing&&(n=t*t*t*t*t),"easeOutQuint"===e.easing&&(n=1+--t*t*t*t*t),"easeInOutQuint"===e.easing&&(n=t<.5?16*t*t*t*t*t:1+16*--t*t*t*t*t),e.customEasing&&(n=e.customEasing(t)),n||t},s=function(){return Math.max(document.body.scrollHeight,document.documentElement.scrollHeight,document.body.offsetHeight,document.documentElement.offsetHeight,document.body.clientHeight,document.documentElement.clientHeight)},l=function(t,n,o,i){var r=0;if(t.offsetParent)do{r+=t.offsetTop,t=t.offsetParent}while(t);return r=Math.max(r-n-o,0),i&&(r=Math.min(r,s()-e.innerHeight)),r},m=function(e){return e?r(e)+e.offsetTop:0},d=function(e,t,n){t||history.pushState&&n.updateURL&&history.pushState({smoothScroll:JSON.stringify(n),anchor:e.id},document.title,e===document.documentElement?"#top":"#"+e.id)},f=function(t,n,o){0===t&&document.body.focus(),o||(t.focus(),document.activeElement!==t&&(t.setAttribute("tabindex","-1"),t.focus(),t.style.outline="none"),e.scrollTo(0,n))},h=function(t,n,o,i){if(n.emitEvents&&"function"==typeof e.CustomEvent){var r=new CustomEvent(t,{bubbles:!0,detail:{anchor:o,toggle:i}});document.dispatchEvent(r)}};return function(r,p){var g,v,w,y,E,b,S,A={};A.cancelScroll=function(e){cancelAnimationFrame(S),S=null,e||h("scrollCancel",g)},A.animateScroll=function(n,i,r){var a=o(g||t,r||{}),c="[object Number]"===Object.prototype.toString.call(n),p=c||!n.tagName?null:n;if(c||p){var v=e.pageYOffset;a.header&&!y&&(y=document.querySelector(a.header)),E||(E=m(y));var w,b,C,O=c?n:l(p,E,parseInt("function"==typeof a.offset?a.offset(n,i):a.offset,10),a.clip),I=O-v,q=s(),F=0,L=function(t,o){var r=e.pageYOffset;
17if(t==o||r==o||(v<o&&e.innerHeight+r)>=q)return A.cancelScroll(!0),f(n,o,c),h("scrollStop",a,n,i),w=null,S=null,!0},H=function(t){w||(w=t),F+=t-w,b=F/parseInt(a.speed,10),b=b>1?1:b,C=v+I*u(a,b),e.scrollTo(0,Math.floor(C)),L(C,O)||(S=e.requestAnimationFrame(H),w=t)};0===e.pageYOffset&&e.scrollTo(0,0),d(n,c,a),h("scrollStart",a,n,i),A.cancelScroll(!0),e.requestAnimationFrame(H)}};var C=function(t){if(!i()&&0===t.button&&!t.metaKey&&!t.ctrlKey&&"closest"in t.target&&(w=t.target.closest(r))&&"a"===w.tagName.toLowerCase()&&!t.target.closest(g.ignore)&&w.hostname===e.location.hostname&&w.pathname===e.location.pathname&&/#/.test(w.href)){var n=c(a(w.hash)),o=g.topOnEmptyHash&&"#"===n?document.documentElement:document.querySelector(n);o=o||"#top"!==n?o:document.documentElement,o&&(t.preventDefault(),A.animateScroll(o,w))}},O=function(e){if(history.state.smoothScroll&&history.state.smoothScroll===JSON.stringify(g)&&history.state.anchor){var t=document.querySelector(c(a(history.state.anchor)));t&&A.animateScroll(t,null,{updateURL:!1})}},I=function(e){b||(b=setTimeout((function(){b=null,E=m(y)}),66))};return A.destroy=function(){g&&(document.removeEventListener("click",C,!1),e.removeEventListener("resize",I,!1),e.removeEventListener("popstate",O,!1),A.cancelScroll(),g=null,v=null,w=null,y=null,E=null,b=null,S=null)},A.init=function(i){if(!n())throw"Smooth Scroll: This browser does not support the required JavaScript methods and browser APIs.";A.destroy(),g=o(t,i||{}),y=g.header?document.querySelector(g.header):null,E=m(y),document.addEventListener("click",C,!1),y&&e.addEventListener("resize",I,!1),g.updateURL&&g.popstate&&e.addEventListener("popstate",O,!1)},A.init(p),A}})); 18/*! 19 * imagesLoaded PACKAGED v4.1.4 20 * JavaScript is all like "You images are done yet or what?" 21 * MIT License 22 */ 23 24!function(e,t){"function"==typeof define&&define.amd?define("ev-emitter/ev-emitter",t):"object"==typeof module&&module.exports?module.exports=t():e.EvEmitter=t()}("undefined"!=typeof window?window:this,function(){function e(){}var t=e.prototype;return t.on=function(e,t){if(e&&t){var i=this._events=this._events||{},n=i[e]=i[e]||[];return n.indexOf(t)==-1&&n.push(t),this}},t.once=function(e,t){if(e&&t){this.on(e,t);var i=this._onceEvents=this._onceEvents||{},n=i[e]=i[e]||{};return n[t]=!0,this}},t.off=function(e,t){var i=this._events&&this._events[e];if(i&&i.length){var n=i.indexOf(t);return n!=-1&&i.splice(n,1),this}},t.emitEvent=function(e,t){var i=this._events&&this._events[e];if(i&&i.length){i=i.slice(0),t=t||[];for(var n=this._onceEvents&&this._onceEvents[e],o=0;o<i.length;o++){var r=i[o],s=n&&n[r];s&&(this.off(e,r),delete n[r]),r.apply(this,t)}return this}},t.allOff=function(){delete this._events,delete this._onceEvents},e}),function(e,t){"use strict";"function"==typeof define&&define.amd?define(["ev-emitter/ev-emitter"],function(i){return t(e,i)}):"object"==typeof module&&module.exports?module.exports=t(e,require("ev-emitter")):e.imagesLoaded=t(e,e.EvEmitter)}("undefined"!=typeof window?window:this,function(e,t){function i(e,t){for(var i in t)e[i]=t[i];return e}function n(e){if(Array.isArray(e))return e;var t="object"==typeof e&&"number"==typeof e.length;return t?d.call(e):[e]}function o(e,t,r){if(!(this instanceof o))return new o(e,t,r);var s=e;return"string"==typeof e&&(s=document.querySelectorAll(e)),s?(this.elements=n(s),this.options=i({},this.options),"function"==typeof t?r=t:i(this.options,t),r&&this.on("always",r),this.getImages(),h&&(this.jqDeferred=new h.Deferred),void setTimeout(this.check.bind(this))):void a.error("Bad element for imagesLoaded "+(s||e))}function r(e){this.img=e}function s(e,t){this.url=e,this.element=t,this.img=new Image}var h=e.jQuery,a=e.console,d=Array.prototype.slice;o.prototype=Object.create(t.prototype),o.prototype.options={},o.prototype.getImages=function(){this.images=[],this.elements.forEach(this.addElementImages,this)},o.prototype.addElementImages=function(e){"IMG"==e.nodeName&&this.addImage(e),this.options.background===!0&&this.addElementBackgroundImages(e);var t=e.nodeType;if(t&&u[t]){for(var i=e.querySelectorAll("img"),n=0;n<i.length;n++){var o=i[n];this.addImage(o)}if("string"==typeof this.options.background){var r=e.querySelectorAll(this.options.background);for(n=0;n<r.length;n++){var s=r[n];
vendor: 4,081 bytes, lines 24-36
24this.addElementBackgroundImages(s)}}}};var u={1:!0,9:!0,11:!0};return o.prototype.addElementBackgroundImages=function(e){var t=getComputedStyle(e);if(t)for(var i=/url\((['"])?(.*?)\1\)/gi,n=i.exec(t.backgroundImage);null!==n;){var o=n&&n[2];o&&this.addBackground(o,e),n=i.exec(t.backgroundImage)}},o.prototype.addImage=function(e){var t=new r(e);this.images.push(t)},o.prototype.addBackground=function(e,t){var i=new s(e,t);this.images.push(i)},o.prototype.check=function(){function e(e,i,n){setTimeout(function(){t.progress(e,i,n)})}var t=this;return this.progressedCount=0,this.hasAnyBroken=!1,this.images.length?void this.images.forEach(function(t){t.once("progress",e),t.check()}):void this.complete()},o.prototype.progress=function(e,t,i){this.progressedCount++,this.hasAnyBroken=this.hasAnyBroken||!e.isLoaded,this.emitEvent("progress",[this,e,t]),this.jqDeferred&&this.jqDeferred.notify&&this.jqDeferred.notify(this,e),this.progressedCount==this.images.length&&this.complete(),this.options.debug&&a&&a.log("progress: "+i,e,t)},o.prototype.complete=function(){var e=this.hasAnyBroken?"fail":"done";if(this.isComplete=!0,this.emitEvent(e,[this]),this.emitEvent("always",[this]),this.jqDeferred){var t=this.hasAnyBroken?"reject":"resolve";this.jqDeferred[t](this)}},r.prototype=Object.create(t.prototype),r.prototype.check=function(){var e=this.getIsImageComplete();return e?void this.confirm(0!==this.img.naturalWidth,"naturalWidth"):(this.proxyImage=new Image,this.proxyImage.addEventListener("load",this),this.proxyImage.addEventListener("error",this),this.img.addEventListener("load",this),this.img.addEventListener("error",this),void(this.proxyImage.src=this.img.src))},r.prototype.getIsImageComplete=function(){return this.img.complete&&this.img.naturalWidth},r.prototype.confirm=function(e,t){this.isLoaded=e,this.emitEvent("progress",[this,this.img,t])},r.prototype.handleEvent=function(e){var t="on"+e.type;this[t]&&this[t](e)},r.prototype.onload=function(){this.confirm(!0,"onload"),this.unbindEvents()},r.prototype.onerror=function(){this.confirm(!1,"onerror"),this.unbindEvents()},r.prototype.unbindEvents=function(){this.proxyImage.removeEventListener("load",this),this.proxyImage.removeEventListener("error",this),this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},s.prototype=Object.create(r.prototype),s.prototype.check=function(){this.img.addEventListener("load",this),this.img.addEventListener("error",this),this.img.src=this.url;var e=this.getIsImageComplete();e&&(this.confirm(0!==this.img.naturalWidth,"naturalWidth"),this.unbindEvents())},s.prototype.unbindEvents=function(){this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},s.prototype.confirm=function(e,t){this.isLoaded=e,this.emitEvent("progress",[this,this.element,t])},o.makeJQueryPlugin=function(t){t=t||e.jQuery,t&&(h=t,h.fn.imagesLoaded=function(e,t){var i=new o(this,e,t);return i.jqDeferred.promise(h(this))})},o.makeJQueryPlugin(),o}); 25/*! 26 * Flickity PACKAGED v2.2.1 27 * Touch, responsive, flickable carousels 28 * 29 * Licensed GPLv3 for open source use 30 * or Flickity Commercial License for commercial use 31 * 32 * https://flickity.metafizzy.co 33 * Copyright 2015-2019 Metafizzy 34 */ 35 36!function(e,i){"function"==typeof define&&define.amd?define("jquery-bridget/jquery-bridget",["jquery"],function(t){return i(e,t)}):"object"==typeof module&&module.exports?module.exports=i(e,require("jquery")):e.jQueryBridget=i(e,e.jQuery)}(window,function(t,e){"use strict";var i=Array.prototype.slice,n=t.console,d=void 0===n?function(){}:function(t){n.error(t)};function s(h,s,c){(c=c||e||t.jQuery)&&(s.prototype.option||(s.prototype.option=function(t){c.isPlainObject(t)&&(this.options=c.extend(!0,this.options,t))}),c.fn[h]=function(t){return"string"==typeof t?function(t,o,r){var a,l="$()."+h+'("'+o+'")';return t.each(function(t,e){var i=c.data(e,h);if(i){var n=i[o];if(n&&"_"!=o.charAt(0)){var s=n.apply(i,r);a=void 0===a?s:a}else d(l+" is not a valid method")}else d(h+" not initialized. Cannot call methods, i.e. "+l)}),void 0!==a?a:t}
36(this,t,i.call(arguments,1)):(function(t,n){t.each(function(t,e){var i=c.data(e,h);i?(i.option(n),i._init()):(i=new s(e,n),c.data(e,h,i))})}(this,t),this)},o(c))}function o(t){!t||t&&t.bridget||(t.bridget=s)}return o(e||t.jQuery),s}),function(t,e){"function"==typeof define&&define.amd?define("ev-emitter/ev-emitter",e):"object"==typeof module&&module.exports?module.exports=e():t.EvEmitter=e()}("undefined"!=typeof window?window:this,function(){function t(){}var e=t.prototype;return e.on=function(t,e){if(t&&e){var i=this._events=this._events||{},n=i[t]=i[t]||[];return-1==n.indexOf(e)&&n.push(e),this}},e.once=function(t,e){if(t&&e){this.on(t,e);var i=this._onceEvents=this._onceEvents||{};return(i[t]=i[t]||{})[e]=!0,this}},e.off=function(t,e){var i=this._events&&this._events[t];if(i&&i.length){var n=i.indexOf(e);return-1!=n&&i.splice(n,1),this}},e.emitEvent=function(t,e){var i=this._events&&this._events[t];if(i&&i.length){i=i.slice(0),e=e||[];for(var n=this._onceEvents&&this._onceEvents[t],s=0;s<i.length;s++){var o=i[s];n&&n[o]&&(this.off(t,o),delete n[o]),o.apply(this,e)}return this}},e.allOff=function(){delete this._events,delete this._onceEvents},t}),function(t,e){"function"==typeof define&&define.amd?define("get-size/get-size",e):"object"==typeof module&&module.exports?module.exports=e():t.getSize=e()}(window,function(){"use strict";function m(t){var e=parseFloat(t);return-1==t.indexOf("%")&&!isNaN(e)&&e}var i="undefined"==typeof console?function(){}:function(t){console.error(t)},y=["paddingLeft","paddingRight","paddingTop","paddingBottom","marginLeft","marginRight","marginTop","marginBottom","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth"],b=y.length;function E(t){var e=getComputedStyle(t);return e||i("Style returned "+e+". Are you running this code in a hidden iframe on Firefox? See https://bit.ly/getsizebug1"),e}var S,C=!1;function x(t){if(function(){if(!C){C=!0;var t=document.createElement("div");t.style.width="200px",t.style.padding="1px 2px 3px 4px",t.style.borderStyle="solid",t.style.borderWidth="1px 2px 3px 4px",t.style.boxSizing="border-box";var e=document.body||document.documentElement;e.appendChild(t);var i=E(t);S=200==Math.round(m(i.width)),x.isBoxSizeOuter=S,e.removeChild(t)}}(),"string"==typeof t&&(t=document.querySelector(t)),t&&"object"==typeof t&&t.nodeType){var e=E(t);if("none"==e.display)return function(){for(var t={width:0,height:0,innerWidth:0,innerHeight:0,outerWidth:0,outerHeight:0},e=0;e<b;e++){t[y[e]]=0}return t}();var i={};i.width=t.offsetWidth,i.height=t.offsetHeight;for(var n=i.isBorderBox="border-box"==e.boxSizing,s=0;s<b;s++){var o=y[s],r=e[o],a=parseFloat(r);i[o]=isNaN(a)?0:a}var l=i.paddingLeft+i.paddingRight,h=i.paddingTop+i.paddingBottom,c=i.marginLeft+i.marginRight,d=i.marginTop+i.marginBottom,u=i.borderLeftWidth+i.borderRightWidth,f=i.borderTopWidth+i.borderBottomWidth,p=n&&S,g=m(e.width);!1!==g&&(i.width=g+(p?0:l+u));var v=m(e.height);return!1!==v&&(i.height=v+(p?0:h+f)),i.innerWidth=i.width-(l+u),i.innerHeight=i.height-(h+f),i.outerWidth=i.width+c,i.outerHeight=i.height+d,i}}return x}),function(t,e){"use strict";"function"==typeof define&&define.amd?define("desandro-matches-selector/matches-selector",e):"object"==typeof module&&module.exports?module.exports=e():t.matchesSelector=e()}(window,function(){"use strict";var i=function(){var t=window.Element.prototype;if(t.matches)return"matches";if(t.matchesSelector)return"matchesSelector";for(var e=["webkit","moz","ms","o"],i=0;i<e.length;i++){var n=e[i]+"MatchesSelector";if(t[n])return n}}();return function(t,e){return t[i](e)}}),function(e,i){"function"==typeof define&&define.amd?define("fizzy-ui-utils/utils",["de
36sandro-matches-selector/matches-selector"],function(t){return i(e,t)}):"object"==typeof module&&module.exports?module.exports=i(e,require("desandro-matches-selector")):e.fizzyUIUtils=i(e,e.matchesSelector)}(window,function(h,o){var c={extend:function(t,e){for(var i in e)t[i]=e[i];return t},modulo:function(t,e){return(t%e+e)%e}},e=Array.prototype.slice;c.makeArray=function(t){return Array.isArray(t)?t:null==t?[]:"object"==typeof t&&"number"==typeof t.length?e.call(t):[t]},c.removeFrom=function(t,e){var i=t.indexOf(e);-1!=i&&t.splice(i,1)},c.getParent=function(t,e){for(;t.parentNode&&t!=document.body;)if(t=t.parentNode,o(t,e))return t},c.getQueryElement=function(t){return"string"==typeof t?document.querySelector(t):t},c.handleEvent=function(t){var e="on"+t.type;this[e]&&this[e](t)},c.filterFindElements=function(t,n){t=c.makeArray(t);var s=[];return t.forEach(function(t){if(t instanceof HTMLElement)if(n){o(t,n)&&s.push(t);for(var e=t.querySelectorAll(n),i=0;i<e.length;i++)s.push(e[i])}else s.push(t)}),s},c.debounceMethod=function(t,e,n){n=n||100;var s=t.prototype[e],o=e+"Timeout";t.prototype[e]=function(){var t=this[o];clearTimeout(t);var e=arguments,i=this;this[o]=setTimeout(function(){s.apply(i,e),delete i[o]},n)}},c.docReady=function(t){var e=document.readyState;"complete"==e||"interactive"==e?setTimeout(t):document.addEventListener("DOMContentLoaded",t)},c.toDashed=function(t){return t.replace(/(.)([A-Z])/g,function(t,e,i){return e+"-"+i}).toLowerCase()};var d=h.console;return c.htmlInit=function(a,l){c.docReady(function(){var t=c.toDashed(l),s="data-"+t,e=document.querySelectorAll("["+s+"]"),i=document.querySelectorAll(".js-"+t),n=c.makeArray(e).concat(c.makeArray(i)),o=s+"-options",r=h.jQuery;n.forEach(function(e){var t,i=e.getAttribute(s)||e.getAttribute(o);try{t=i&&JSON.parse(i)}catch(t){return void(d&&d.error("Error parsing "+s+" on "+e.className+": "+t))}var n=new a(e,t);r&&r.data(e,l,n)})})},c}),function(e,i){"function"==typeof define&&define.amd?define("flickity/js/cell",["get-size/get-size"],function(t){return i(e,t)}):"object"==typeof module&&module.exports?module.exports=i(e,require("get-size")):(e.Flickity=e.Flickity||{},e.Flickity.Cell=i(e,e.getSize))}(window,function(t,e){function i(t,e){this.element=t,this.parent=e,this.create()}var n=i.prototype;return n.create=function(){this.element.style.position="absolute",this.element.setAttribute("aria-hidden","true"),this.x=0,this.shift=0},n.destroy=function(){this.unselect(),this.element.style.position="";var t=this.parent.originSide;this.element.style[t]=""},n.getSize=function(){this.size=e(this.element)},n.setPosition=function(t){this.x=t,this.updateTarget(),this.renderPosition(t)},n.updateTarget=n.setDefaultTarget=function(){var t="left"==this.parent.originSide?"marginLeft":"marginRight";this.target=this.x+this.size[t]+this.size.width*this.parent.cellAlign},n.renderPosition=function(t){var e=this.parent.originSide;this.element.style[e]=this.parent.getPositionValue(t)},n.select=function(){this.element.classList.add("is-selected"),this.element.removeAttribute("aria-hidden")},n.unselect=function(){this.element.classList.remove("is-selected"),this.element.setAttribute("aria-hidden","true")},n.wrapShift=function(t){this.shift=t,this.renderPosition(this.x+this.parent.slideableWidth*t)},n.remove=function(){this.element.parentNode.removeChild(this.element)},i}),function(t,e){"function"==typeof define&&define.amd?define("flickity/js/slide",e):"object"==typeof module&&module.exports?module.exports=e():(t.Flickity=t.Flickity||{},t.Flickity.Slide=e())}(window,function(){"use strict";function t(t){this.parent=t,this.isOriginLeft="left"==t.originSide,this.cells=[],this.outerWidth=0,this.height=0}var e=t.prototype;return e.addCell=function(t){if(this.cells.push(t),this.outerWidth+=t.size.outerWidth,this.height=Math.max(t.size.outerHeight,this.height),1==this.cells.length){this.x=t.x;var e=this.isOriginLeft?"marginLeft":"marginRight";this.firstMargin=t.size[e]}},e.updateTarget=function(){var t=this.isOriginLeft?"marginRight":"marginLeft",e=this.getLastCell(),i=e?e.size[t]:0,n=this.outerWidth-(this.firstMargin+i);this.target=this.x+this.firstMargin+n*this.parent.cellAlign},e.getLastCell=function(){return this.cells[this.cells.length-1]}
36,e.select=function(){this.cells.forEach(function(t){t.select()})},e.unselect=function(){this.cells.forEach(function(t){t.unselect()})},e.getCellElements=function(){return this.cells.map(function(t){return t.element})},t}),function(e,i){"function"==typeof define&&define.amd?define("flickity/js/animate",["fizzy-ui-utils/utils"],function(t){return i(e,t)}):"object"==typeof module&&module.exports?module.exports=i(e,require("fizzy-ui-utils")):(e.Flickity=e.Flickity||{},e.Flickity.animatePrototype=i(e,e.fizzyUIUtils))}(window,function(t,e){var i={startAnimation:function(){this.isAnimating||(this.isAnimating=!0,this.restingFrames=0,this.animate())},animate:function(){this.applyDragForce(),this.applySelectedAttraction();var t=this.x;if(this.integratePhysics(),this.positionSlider(),this.settle(t),this.isAnimating){var e=this;requestAnimationFrame(function(){e.animate()})}},positionSlider:function(){var t=this.x;this.options.wrapAround&&1<this.cells.length&&(t=e.modulo(t,this.slideableWidth),t-=this.slideableWidth,this.shiftWrapCells(t)),this.setTranslateX(t,this.isAnimating),this.dispatchScrollEvent()},setTranslateX:function(t,e){t+=this.cursorPosition,t=this.options.rightToLeft?-t:t;var i=this.getPositionValue(t);this.slider.style.transform=e?"translate3d("+i+",0,0)":"translateX("+i+")"},dispatchScrollEvent:function(){var t=this.slides[0];if(t){var e=-this.x-t.target,i=e/this.slidesWidth;this.dispatchEvent("scroll",null,[i,e])}},positionSliderAtSelected:function(){this.cells.length&&(this.x=-this.selectedSlide.target,this.velocity=0,this.positionSlider())},getPositionValue:function(t){return this.options.percentPosition?.01*Math.round(t/this.size.innerWidth*1e4)+"%":Math.round(t)+"px"},settle:function(t){this.isPointerDown||Math.round(100*this.x)!=Math.round(100*t)||this.restingFrames++,2<this.restingFrames&&(this.isAnimating=!1,delete this.isFreeScrolling,this.positionSlider(),this.dispatchEvent("settle",null,[this.selectedIndex]))},shiftWrapCells:function(t){var e=this.cursorPosition+t;this._shiftCells(this.beforeShiftCells,e,-1);var i=this.size.innerWidth-(t+this.slideableWidth+this.cursorPosition);this._shiftCells(this.afterShiftCells,i,1)},_shiftCells:function(t,e,i){for(var n=0;n<t.length;n++){var s=t[n],o=0<e?i:0;s.wrapShift(o),e-=s.size.outerWidth}},_unshiftCells:function(t){if(t&&t.length)for(var e=0;e<t.length;e++)t[e].wrapShift(0)},integratePhysics:function(){this.x+=this.velocity,this.velocity*=this.getFrictionFactor()},applyForce:function(t){this.velocity+=t},getFrictionFactor:function(){return 1-this.options[this.isFreeScrolling?"freeScrollFriction":"friction"]},getRestingPosition:function(){return this.x+this.velocity/(1-this.getFrictionFactor())},applyDragForce:function(){if(this.isDraggable&&this.isPointerDown){var t=this.dragX-this.x-this.velocity;this.applyForce(t)}},applySelectedAttraction:function(){if(!(this.isDraggable&&this.isPointerDown)&&!this.isFreeScrolling&&this.slides.length){var t=(-1*this.selectedSlide.target-this.x)*this.options.selectedAttraction;this.applyForce(t)}}};return i}),function(r,a){if("function"==typeof define&&define.amd)define("flickity/js/flickity",["ev-emitter/ev-emitter","get-size/get-size","fizzy-ui-utils/utils","./cell","./slide","./animate"],function(t,e,i,n,s,o){return a(r,t,e,i,n,s,o)});else if("object"==typeof module&&module.exports)module.exports=a(r,require("ev-emitter"),require("get-size"),require("fizzy-ui-utils"),require("./cell"),require("./sli
vendor: 20,553 bytes, line 36
36de"),require("./animate"));else{var t=r.Flickity;r.Flickity=a(r,r.EvEmitter,r.getSize,r.fizzyUIUtils,t.Cell,t.Slide,t.animatePrototype)}}(window,function(n,t,e,a,i,r,s){var l=n.jQuery,o=n.getComputedStyle,h=n.console;function c(t,e){for(t=a.makeArray(t);t.length;)e.appendChild(t.shift())}var d=0,u={};function f(t,e){var i=a.getQueryElement(t);if(i){if(this.element=i,this.element.flickityGUID){var n=u[this.element.flickityGUID];return n.option(e),n}l&&(this.$element=l(this.element)),this.options=a.extend({},this.constructor.defaults),this.option(e),this._create()}else h&&h.error("Bad element for Flickity: "+(i||t))}f.defaults={accessibility:!0,cellAlign:"center",freeScrollFriction:.075,friction:.28,namespaceJQueryEvents:!0,percentPosition:!0,resize:!0,selectedAttraction:.025,setGallerySize:!0},f.createMethods=[];var p=f.prototype;a.extend(p,t.prototype),p._create=function(){var t=this.guid=++d;for(var e in this.element.flickityGUID=t,(u[t]=this).selectedIndex=0,this.restingFrames=0,this.x=0,this.velocity=0,this.originSide=this.options.rightToLeft?"right":"left",this.viewport=document.createElement("div"),this.viewport.className="flickity-viewport",this._createSlider(),(this.options.resize||this.options.watchCSS)&&n.addEventListener("resize",this),this.options.on){var i=this.options.on[e];this.on(e,i)}f.createMethods.forEach(function(t){this[t]()},this),this.options.watchCSS?this.watchCSS():this.activate()},p.option=function(t){a.extend(this.options,t)},p.activate=function(){this.isActive||(this.isActive=!0,this.element.classList.add("flickity-enabled"),this.options.rightToLeft&&this.element.classList.add("flickity-rtl"),this.getSize(),c(this._filterFindCellElements(this.element.children),this.slider),this.viewport.appendChild(this.slider),this.element.appendChild(this.viewport),this.reloadCells(),this.options.accessibility&&(this.element.tabIndex=0,this.element.addEventListener("keydown",this)),this.emitEvent("activate"),this.selectInitialIndex(),this.isInitActivated=!0,this.dispatchEvent("ready"))},p._createSlider=function(){var t=document.createElement("div");t.className="flickity-slider",t.style[this.originSide]=0,this.slider=t},p._filterFindCellElements=function(t){return a.filterFindElements(t,this.options.cellSelector)},p.reloadCells=function(){this.cells=this._makeCells(this.slider.children),this.positionCells(),this._getWrapShiftCells(),this.setGallerySize()},p._makeCells=function(t){return this._filterFindCellElements(t).map(function(t){return new i(t,this)},this)},p.getLastCell=function(){return this.cells[this.cells.length-1]},p.getLastSlide=function(){return this.slides[this.slides.length-1]},p.positionCells=function(){this._sizeCells(this.cells),this._positionCells(0)},p._positionCells=function(t){t=t||0,this.maxCellHeight=t&&this.maxCellHeight||0;var e=0;if(0<t){var i=this.cells[t-1];e=i.x+i.size.outerWidth}for(var n=this.cells.length,s=t;s<n;s++){var o=this.cells[s];o.setPosition(e),e+=o.size.outerWidth,this.maxCellHeight=Math.max(o.size.outerHeight,this.maxCellHeight)}this.slideableWidth=e,this.updateSlides(),this._containSlides(),this.slidesWidth=n?this.getLastSlide().target-this.slides[0].target:0},p._sizeCells=function(t){t.forEach(function(t){t.getSize()})},p.updateSlides=function(){if(this.slides=[],this.cells.length){var n=new r(this);this.slides.push(n);var s="left"==this.originSide?"marginRight":"marginLeft",o=this._getCanCellFit();this.cells.forEach(function(t,e){if(n.cells.length){var i=n.outerWidth-n.firstMargin+(t.size.outerWidth-t.size[s]);o.call(this,e,i)||(n.updateTarget(),n=new r(this),this.slides.push(n)),n.addCell(t)}else n.addCell(t)},this),n.updateTarget(),this.updateSelectedSlide()}},p._getCanCellFit=function(){var t=this.options.groupCells;if(!t)return function(){return!1};if("number"==typeof t){var e=parseInt(t,10);return function(t){return t%e!=0}}var i="string"==typeof t&&t.match(/^(\d+)%$/),n=i?parseInt(i[1],10)/100:1;return function(t,e){return e<=(this.size.innerWidth+1)*n}},p._init=p.reposition=function(){this.positionCells(),this.positionSliderAtSelected()},p.getSize=function(){this.size=e(this.element),this.setCellAlign(),this.cursorPosition=this.size.innerWidth*this.cellAlign};var g={center:{left:.5,right:.5},left:{left:0,right:1},right:{right:0,left:1}};return p.setCellAlign=function(){var t=g[this.options.cellAlign];this.cellAlign=t?t[this.originSide]:this.options.cellAlign},p.setGallerySize=function(){if(this.options.setGallerySize){var t=this.options.adaptiveHeight&&this.selectedSlide?this.selectedSlide.height:this.maxCellHeight;this.viewport.style.height=t+"px"}},p._getWrapShiftCells=function(){if(this.options.wrapAround){this._unshiftCells(this.beforeShiftCells),this._unshiftCells(this.afterShiftCells);var t=this.cursorPosition,e=this.cells.length-1;this.beforeShiftCells=this._getGapCells(t,e,-1),t=this.size.innerWidth-this.cursorPosition,this.afterShiftCells=this._getGapCells(t,0,1)}},p._getGapCells=function(t,e,i){for(var n=[];0<t;){var s=this.cells[e];if(!s)break;n.push(s),e+=i,t-=s.size.outerWidth}return n},p._containSlides=function(){if(this.options.contain&&!this.options.wrapAround&&this.cells.length){var t=this.options.rightToLeft,e=t?"marginRight":"marginLeft",i=t?"marginLeft":"marginRight",n=this.slideableWidth-this.getLastCell().size[i],s=n<this.size.innerWidth,o=this.cursorPosition+this.cells[0].size[e],r=n-this.size.innerWidth*(1-this.cellAlign);this.slides.forEach(function(t){s?t.target=n*this.cellAlign:(t.target=Math.max(t.target,o),t.target=Math.min(t.target,r))},this)}},p.dispatchEvent=function(t,e,i){var n=e?[e].concat(i):i;if(this.emitEvent(t,n),l&&this.$element){var s=t+=this.options.namespaceJQueryEvents?".flickity":"";if(e){var o=l.Event(e);o.type=t,s=o}this.$element.trigger(s,i)}},p.select=function(t,e,i){if(this.isActive&&(t=parseInt(t,10),this._wrapSelect(t),(this.options.wrapAround||e)&&(t=a.modulo(t,this.slides.length)),this.slides[t])){var n=this.selectedIndex;this.selectedIndex=t,this.updateSelectedSlide(),i?this.positionSliderAtSelected():this.startAnimation(),this.options.adaptiveHeight&&this.setGallerySize(),this.dispatchEvent("select",null,[t]),t!=n&&this.dispatchEvent("change",null,[t]),this.dispatchEvent("cellSelect")}},p._wrapSelect=function(t){var e=this.slides.length;if(!(this.options.wrapAround&&1<e))return t;var i=a.modulo(t,e),n=Math.abs(i-this.selectedIndex),s=Math.abs(i+e-this.selectedIndex),o=Math.abs(i-e-this.selectedIndex);!this.isDragSelect&&s<n?t+=e:!this.isDragSelect&&o<n&&(t-=e),t<0?this.x-=this.slideableWidth:e<=t&&(this.x+=this.slideableWidth)},p.previous=function(t,e){this.select(this.selectedIndex-1,t,e)},p.next=function(t,e){this.select(this.selectedIndex+1,t,e)},p.updateSelectedSlide=function(){var t=this.slides[this.selectedIndex];t&&(this.unselectSelectedSlide(),(this.selectedSlide=t).select(),this.selectedCells=t.cells,this.selectedElements=t.getCellElements(),this.selectedCell=t.cells[0],this.selectedElement=this.selectedElements[0])},p.unselectSelectedSlide=function(){this.selectedSlide&&this.selectedSlide.unselect()},p.selectInitialIndex=function(){var t=this.options.initialIndex;if(this.isInitActivated)this.select(this.selectedIndex,!1,!0);else{if(t&&"string"==typeof t)if(this.queryCell(t))return void this.selectCell(t,!1,!0);var e=0;t&&this.slides[t]&&(e=t),this.select(e,!1,!0)}},p.selectCell=function(t,e,i){var n=this.queryCell(t);if(n){var s=this.getCellSlideIndex(n);this.select(s,e,i)}},p.getCellSlideIndex=function(t){for(var e=0;e<this.slides.length;e++){if(-1!=this.slides[e].cells.indexOf(t))return e}},p.getCell=function(t){for(var e=0;e<this.cells.length;e++){var i=this.cells[e];if(i.element==t)return i}},p.getCells=function(t){t=a.makeArray(t);var i=[];return t.forEach(function(t){var e=this.getCell(t);e&&i.push(e)},this),i},p.getCellElements=function(){return this.cells.map(function(t){return t.element})},p.getParentCell=function(t){var e=this.getCell(t);return e||(t=a.getParent(t,".flickity-slider > *"),this.getCell(t))},p.getAdjacentCellElements=function(t,e){if(!t)return this.selectedSlide.getCellElements();e=void 0===e?this.selectedIndex:e;var i=this.slides.length;if(i<=1+2*t)return this.getCellElements();for(var n=[],s=e-t;s<=e+t;s++){var o=this.options.wrapAround?a.modulo(s,i):s,r=this.slides[o];r&&(n=n.concat(r.getCellElements()))}return n},p.queryCell=function(t){if("number"==typeof t)return this.cells[t];if("string"==typeof t){if(t.match(/^[#\.]?[\d\/]/))return;t=this.element.querySelector(t)}return this.getCell(t)},p.uiChange=function(){this.emitEvent("uiChange")},p.childUIPointerDown=function(t){"touchstart"!=t.type&&t.preventDefault(),this.focus()},p.onresize=function(){this.watchCSS(),this.resize()},a.debounceMethod(f,"onresize",150),p.resize=function(){if(this.isActive){this.getSize(),this.options.wrapAround&&(this.x=a.modulo(this.x,this.slideableWidth)),this.positionCells(),this._getWrapShiftCells(),this.setGallerySize(),this.emitEvent("resize");var t=this.selectedElements&&this.selectedElements[0];this.selectCell(t,!1,!0)}},p.watchCSS=function(){this.options.watchCSS&&(-1!=o(this.element,":after").content.indexOf("flickity")?this.activate():this.deactivate())},p.onkeydown=function(t){var e=document.activeElement&&document.activeElement!=this.element;if(this.options.accessibility&&!e){var i=f.keyboardHandlers[t.keyCode];i&&i.call(this)}},f.keyboardHandlers={37:function(){var t=this.options.rightToLeft?"next":"previous";this.uiChange(),this[t]()},39:function(){var t=this.options.rightToLeft?"previous":"next";this.uiChange(),this[t]()}},p.focus=function(){var t=n.pageYOffset;this.element.focus({preventScroll:!0}),n.pageYOffset!=t&&n.scrollTo(n.pageXOffset,t)},p.deactivate=function(){this.isActive&&(this.element.classList.remove("flickity-enabled"),this.element.classList.remove("flickity-rtl"),this.unselectSelectedSlide(),this.cells.forEach(function(t){t.destroy()}),this.element.removeChild(this.viewport),c(this.slider.children,this.element),this.options.accessibility&&(this.element.removeAttribute("tabIndex"),this.element.removeEventListener("keydown",this)),this.isActive=!1,this.emitEvent("deactivate"))},p.destroy=function(){this.deactivate(),n.removeEventListener("resize",this),this.allOff(),this.emitEvent("destroy"),l&&this.$element&&l.removeData(this.element,"flickity"),delete this.element.flickityGUID,delete u[this.guid]},a.extend(p,s),f.data=function(t){var e=(t=a.getQueryElement(t))&&t.flickityGUID;return e&&u[e]},a.htmlInit(f,"flickity"),l&&l.bridget&&l.bridget("flickity",f),f.setJQuery=function(t){l=t},f.Cell=i,f.Slide=r,f}),function(e,i){"function"==typeof define&&define.amd?define("unipointer/unipointer",["ev-emitter/ev-emitter"],function(t){return i(e,t)}):"object"==typeof module&&module.exports?module.exports=i(e,require("ev-emitter")):e.Unipointer=i(e,e.EvEmitter)}(window,function(s,t){function e(){}var i=e.prototype=Object.create(t.prototype);i.bindStartEvent=function(t){this._bindStartEvent(t,!0)},i.unbindStartEvent=function(t){this._bindStartEvent(t,!1)},i._bindStartEvent=function(t,e){var i=(e=void 0===e||e)?"addEventListener":"removeEventListener",n="mousedown";s.PointerEvent?n="pointerdown":"ontouchstart"in s&&(n="touchstart"),t[i](n,this)},i.handleEvent=function(t){var e="on"+t.type;this[e]&&this[e](t)},i.getTouch=function(t){for(var e=0;e<t.length;e++){var i=t[e];if(i.identifier==this.pointerIdentifier)return i}},i.onmousedown=function(t){var e=t.button;e&&0!==e&&1!==e||this._pointerDown(t,t)},i.ontouchstart=function(t){this._pointerDown(t,t.changedTouches[0])},i.onpointerdown=function(t){this._pointerDown(t,t)},i._pointerDown=function(t,e){t.button||this.isPointerDown||(this.isPointerDown=!0,this.pointerIdentifier=void 0!==e.pointerId?e.pointerId:e.identifier,this.pointerDown(t,e))},i.pointerDown=function(t,e){this._bindPostStartEvents(t),this.emitEvent("pointerDown",[t,e])};var n={mousedown:["mousemove","mouseup"],touchstart:["touchmove","touchend","touchcancel"],pointerdown:["pointermove","pointerup","pointercancel"]};return i._bindPostStartEvents=function(t){if(t){var e=n[t.type];e.forEach(function(t){s.addEventListener(t,this)},this),this._boundPointerEvents=e}},i._unbindPostStartEvents=function(){this._boundPointerEvents&&(this._boundPointerEvents.forEach(function(t){s.removeEventListener(t,this)},this),delete this._boundPointerEvents)},i.onmousemove=function(t){this._pointerMove(t,t)},i.onpointermove=function(t){t.pointerId==this.pointerIdentifier&&this._pointerMove(t,t)},i.ontouchmove=function(t){var e=this.getTouch(t.changedTouches);e&&this._pointerMove(t,e)},i._pointerMove=function(t,e){this.pointerMove(t,e)},i.pointerMove=function(t,e){this.emitEvent("pointerMove",[t,e])},i.onmouseup=function(t){this._pointerUp(t,t)},i.onpointerup=function(t){t.pointerId==this.pointerIdentifier&&this._pointerUp(t,t)},i.ontouchend=function(t){var e=this.getTouch(t.changedTouches);e&&this._pointerUp(t,e)},i._pointerUp=function(t,e){this._pointerDone(),this.pointerUp(t,e)},i.pointerUp=function(t,e){this.emitEvent("pointerUp",[t,e])},i._pointerDone=function(){this._pointerReset(),this._unbindPostStartEvents(),this.pointerDone()},i._pointerReset=function(){this.isPointerDown=!1,delete this.pointerIdentifier},i.pointerDone=function(){},i.onpointercancel=function(t){t.pointerId==this.pointerIdentifier&&this._pointerCancel(t,t)},i.ontouchcancel=function(t){var e=this.getTouch(t.changedTouches);e&&this._pointerCancel(t,e)},i._pointerCancel=function(t,e){this._pointerDone(),this.pointerCancel(t,e)},i.pointerCancel=function(t,e){this.emitEvent("pointerCancel",[t,e])},e.getPointerPoint=function(t){return{x:t.pageX,y:t.pageY}},e}),function(e,i){"function"==typeof define&&define.amd?define("unidragger/unidragger",["unipointer/unipointer"],function(t){return i(e,t)}):"object"==typeof module&&module.exports?module.exports=i(e,require("unipointer")):e.Unidragger=i(e,e.Unipointer)}(window,function(o,t){function e(){}var i=e.prototype=Object.create(t.prototype);i.bindHandles=function(){this._bindHandles(!0)},i.unbindHandles=function(){this._bindHandles(!1)},i._bindHandles=function(t){for(var e=(t=void 0===t||t)?"addEventListener":"removeEventListener",i=t?this._touchActionValue:"",n=0;n<this.handles.length;n++){var s=this.handles[n];this._bindStartEvent(s,t),s[e]("click",this),o.PointerEvent&&(s.style.touchAction=i)}},i._touchActionValue="none",i.pointerDown=function(t,e){this.okayPointerDown(t)&&(this.pointerDownPointer=e,t.preventDefault(),this.pointerDownBlur(),this._bindPostStartEvents(t),this.emitEvent("pointerDown",[t,e]))};var s={TEXTAREA:!0,INPUT:!0,SELECT:!0,OPTION:!0},r={radio:!0,checkbox:!0,button:!0,submit:!0,image:!0,file:!0};return i.okayPointerDown=function(t){var e=s[t.target.nodeName],i=r[t.target.type],n=!e||i;return n||this._pointerReset(),n},i.pointerDownBlur=function(){var t=document.activeElement;t&&t.blur&&t!=document.body&&t.blur()},i.pointerMove=function(t,e){var i=this._dragPointerMove(t,e);this.emitEvent("pointerMove",[t,e,i]),this._dragMove(t,e,i)},i._dragPointerMove=function(t,e){var i={x:e.pageX-this.pointerDownPointer.pageX,y:e.pageY-this.pointerDownPointer.pageY};return!this.isDragging&&this.hasDragStarted(i)&&this._dragStart(t,e),i},i.hasDragStarted=function(t){return 3<Math.abs(t.x)||3<Math.abs(t.y)},i.pointerUp=function(t,e){this.emitEvent("pointerUp",[t,e]),this._dragPointerUp(t,e)},i._dragPointerUp=function(t,e){this.isDragging?this._dragEnd(t,e):this._staticClick(t,e)},i._dragStart=function(t,e){this.isDragging=!0,this.isPreventingClicks=!0,this.dragStart(t,e)},i.dragStart=function(t,e){this.emitEvent("dragStart",[t,e])},i._dragMove=function(t,e,i){this.isDragging&&this.dragMove(t,e,i)},i.dragMove=function(t,e,i){t.preventDefault(),this.emitEvent("dragMove",[t,e,i])},i._dragEnd=function(t,e){this.isDragging=!1,setTimeout(function(){delete this.isPreventingClicks}.bind(this)),this.dragEnd(t,e)},i.dragEnd=function(t,e){this.emitEvent("dragEnd",[t,e])},i.onclick=function(t){this.isPreventingClicks&&t.preventDefault()},i._staticClick=function(t,e){this.isIgnoringMouseUp&&"mouseup"==t.type||(this.staticClick(t,e),"mouseup"!=t.type&&(this.isIgnoringMouseUp=!0,setTimeout(function(){delete this.isIgnoringMouseUp}.bind(this),400)))},i.staticClick=function(t,e){this.emitEvent("staticClick",[t,e])},e.getPointerPoint=t.getPointerPoint,e}),function(n,s){"function"==typeof define&&define.amd?define("flickity/js/drag",["./flickity","unidragger/unidragger","fizzy-ui-utils/utils"],function(t,e,i){return s(n,t,e,i)}):"object"==typeof module&&module.exports?module.exports=s(n,require("./flickity"),require("unidragger"),require("fizzy-ui-utils")):n.Flickity=s(n,n.Flickity,n.Unidragger,n.fizzyUIUtils)}(window,function(i,t,e,a){a.extend(t.defaults,{draggable:">1",dragThreshold:3}),t.createMethods.push("_createDrag");var n=t.prototype;a.extend(n,e.prototype),n._touchActionValue="pan-y";var s="createTouch"in document,o=!1;n._createDrag=function(){this.on("activate",this.onActivateDrag),this.on("uiChange",this._uiChangeDrag),this.on("deactivate",this.onDeactivateDrag),this.on("cellChange",this.updateDraggable),s&&!o&&(i.addEventListener("touchmove",function(){}),o=!0)},n.onActivateDrag=function(){this.handles=[this.viewport],this.bindHandles(),this.updateDraggable()},n.onDeactivateDrag=function(){this.unbindHandles(),this.element.classList.remove("is-draggable")},n.updateDraggable=function(){">1"==this.options.draggable?this.isDraggable=1<this.slides.length:this.isDraggable=this.options.draggable,this.isDraggable?this.element.classList.add("is-draggable"):this.element.classList.remove("is-draggable")},n.bindDrag=function(){this.options.draggable=!0,this.updateDraggable()},n.unbindDrag=function(){this.options.draggable=!1,this.updateDraggable()},n._uiChangeDrag=function(){delete this.isFreeScrolling},n.pointerDown=function(t,e){this.isDraggable?this.okayPointerDown(t)&&(this._pointerDownPreventDefault(t),this.pointerDownFocus(t),document.activeElement!=this.element&&this.pointerDownBlur(),this.dragX=this.x,this.viewport.classList.add("is-pointer-down"),this.pointerDownScroll=l(),i.addEventListener("scroll",this),this._pointerDownDefault(t,e)):this._pointerDownDefault(t,e)},n._pointerDownDefault=function(t,e){this.pointerDownPointer={pageX:e.pageX,pageY:e.pageY},this._bindPostStartEvents(t),this.dispatchEvent("pointerDown",t,[e])};var r={INPUT:!0,TEXTAREA:!0,SELECT:!0};function l(){return{x:i.pageXOffset,y:i.pageYOffset}}return n.pointerDownFocus=function(t){r[t.target.nodeName]||this.focus()},n._pointerDownPreventDefault=function(t){var e="touchstart"==t.type,i="touch"==t.pointerType,n=r[t.target.nodeName];e||i||n||t.preventDefault()},n.hasDragStarted=function(t){return Math.abs(t.x)>this.options.dragThreshold},n.pointerUp=function(t,e){delete this.isTouchScrolling,this.viewport.classList.remove("is-pointer-down"),this.dispatchEvent("pointerUp",t,[e]),this._dragPointerUp(t,e)},n.pointerDone=function(){i.removeEventListener("scroll",this),delete this.pointerDownScroll},n.dragStart=function(t,e){this.isDraggable&&(this.dragStartPosition=this.x,this.startAnimation(),i.removeEventListener("scroll",this),this.dispatchEvent("dragStart",t,[e]))},n.pointerMove=function(t,e){var i=this._dragPointerMove(t,e);this.dispatchEvent("pointerMove",t,[e,i]),this._dragMove(t,e,i)},n.dragMove=function(t,e,i){if(this.isDraggable){t.preventDefault(),this.previousDragX=this.dragX;var n=this.options.rightToLeft?-1:1;this.options.wrapAround&&(i.x=i.x%this.slideableWidth);var s=this.dragStartPosition+i.x*n;if(!this.options.wrapAround&&this.slides.length){var o=Math.max(-this.slides[0].target,this.dragStartPosition);s=o<s?.5*(s+o):s;var r=Math.min(-this.getLastSlide().target,this.dragStartPosition);s=s<r?.5*(s+r):s}this.dragX=s,this.dragMoveTime=new Date,this.dispatchEvent("dragMove",t,[e,i])}},n.dragEnd=function(t,e){if(this.isDraggable){this.options.freeScroll&&(this.isFreeScrolling=!0);var i=this.dragEndRestingSelect();if(this.options.freeScroll&&!this.options.wrapAround){var n=this.getRestingPosition();this.isFreeScrolling=-n>this.slides[0].target&&-n<this.getLastSlide().target}else this.options.freeScroll||i!=this.selectedIndex||(i+=this.dragEndBoostSelect());delete this.previousDragX,this.isDragSelect=this.options.wrapAround,this.select(i),delete this.isDragSelect,this.dispatchEvent("dragEnd",t,[e])}},n.dragEndRestingSelect=function(){var t=this.getRestingPosition(),e=Math.abs(this.getSlideDistance(-t,this.selectedIndex)),i=this._getClosestResting(t,e,1),n=this._getClosestResting(t,e,-1);return i.distance<n.distance?i.index:n.index}
36,n._getClosestResting=function(t,e,i){for(var n=this.selectedIndex,s=1/0,o=this.options.contain&&!this.options.wrapAround?function(t,e){return t<=e}:function(t,e){return t<e};o(e,s)&&(n+=i,s=e,null!==(e=this.getSlideDistance(-t,n)));)e=Math.abs(e);return{distance:s,index:n-i}},n.getSlideDistance=function(t,e){var i=this.slides.length,n=this.options.wrapAround&&1<i,s=n?a.modulo(e,i):e,o=this.slides[s];if(!o)return null;var r=n?this.slideableWidth*Math.floor(e/i):0;return t-(o.target+r)},n.dragEndBoostSelect=function(){if(void 0===this.previousDragX||!this.dragMoveTime||100<new Date-this.dragMoveTime)return 0;var t=this.getSlideDistance(-this.dragX,this.selectedIndex),e=this.previousDragX-this.dragX;return 0<t&&0<e?1:t<0&&e<0?-1:0},n.staticClick=function(t,e){var i=this.getParentCell(t.target),n=i&&i.element,s=i&&this.cells.indexOf(i);this.dispatchEvent("staticClick",t,[e,n,s])},n.onscroll=function(){var t=l(),e=this.pointerDownScroll.x-t.x,i=this.pointerDownScroll.y-t.y;(3<Math.abs(e)||3<Math.abs(i))&&this._pointerDone()},t}),function(n,s){"function"==typeof define&&define.amd?define("flickity/js/prev-next-button",["./flickity","unipointer/unipointer","fizzy-ui-utils/utils"],function(t,e,i){return s(n,t,e,i)}):"object"==typeof module&&module.exports?module.exports=s(n,require("./flickity"),require("unipointer"),require("fizzy-ui-utils")):s(n,n.Flickity,n.Unipointer,n.fizzyUIUtils)}(window,function(t,e,i,n){"use strict";var s="http://www.w3.org/2000/svg";function o(t,e){this.direction=t,this.parent=e,this._create()}(o.prototype=Object.create(i.prototype))._create=function(){this.isEnabled=!0,this.isPrevious=-1==this.direction;var t=this.parent.options.rightToLeft?1:-1;this.isLeft=this.direction==t;var e=this.element=document.createElement("button");e.className="flickity-button flickity-prev-next-button",e.className+=this.isPrevious?" previous":" next",e.setAttribute("type","button"),this.disable(),e.setAttribute("aria-label",this.isPrevious?"Previous":"Next");var i=this.createSVG();e.appendChild(i),this.parent.on("select",this.update.bind(this)),this.on("pointerDown",this.parent.childUIPointerDown.bind(this.parent))},o.prototype.activate=function(){this.bindStartEvent(this.element),this.element.addEventListener("click",this),this.parent.element.appendChild(this.element)},o.prototype.deactivate=function(){this.parent.element.removeChild(this.element),this.unbindStartEvent(this.element),this.element.removeEventListener("click",this)},o.prototype.createSVG=function(){var t=document.createElementNS(s,"svg");t.setAttribute("class","flickity-button-icon"),t.setAttribute("viewBox","0 0 100 100");var e=document.createElementNS(s,"path"),i=function(t){return"string"!=typeof t?"M "+t.x0+",50 L "+t.x1+","+(t.y1+50)+" L "+t.x2+","+(t.y2+50)+" L "+t.x3+",50 L "+t.x2+","+(50-t.y2)+" L "+t.x1+","+(50-t.y1)+" Z":t}(this.parent.options.arrowShape);return e.setAttribute("d",i),e.setAttribute("class","arrow"),this.isLeft||e.setAttribute("transform","translate(100, 100) rotate(180) "),t.appendChild(e),t},o.prototype.handleEvent=n.handleEvent,o.prototype.onclick=function(){if(this.isEnabled){this.parent.uiChange();var t=this.isPrevious?"previous":"next";this.parent[t]()}},o.prototype.enable=function(){this.isEnabled||(this.element.disabled=!1,this.isEnabled=!0)},o.prototype.disable=function(){this.isEnabled&&(this.element.disabled=!0,this.isEnabled=!1)},o.prototype.update=function(){var t=this.parent.slides;if(this.parent.options.wrapAround&&1<t.length)this.enable();else{var e=t.length?t.length-1:0,i=this.isPrevious?0:e;this[this.parent.selectedIndex==i?"disable":"enable"]()}},o.prototype.destroy=function(){this.deactivate(),this.allOff()},n.extend(e.defaults,{prevNextButtons:!0,arrowShape:{x0:10,x1:60,y1:50,x2:70,y2:40,x3:30}}),e.createMethods.push("_createPrevNextButtons");var r=e.prototype;return r._createPrevNextButtons=function(){this.options.prevNextButtons&&(this.prevButton=new o(-1,this),this.nextButton=new o(1,this),this.on("activate",this.activatePrevNextButtons))},r.activatePrevNextButtons=function(){this.prevButton.activate(),this.nextButton.activate(),this.on("deactivate",this.deactivatePrevNextButtons)},r.deactivatePrevNextButtons=function(){this.prevButton.deactivate(),this.nextButton.deactivate(),this.off("deactivate",this.deactivatePrevNextButtons)},e.PrevNextButton=o,e}),function(n,s){"function"==typeof define&&define.amd?define("flickity/js/page-dots",["./flickity","unipointer/unipointer","fizzy-ui-utils/utils"],function(t,e,
vendor: 5,980 bytes, line 36
36i){return s(n,t,e,i)}):"object"==typeof module&&module.exports?module.exports=s(n,require("./flickity"),require("unipointer"),require("fizzy-ui-utils")):s(n,n.Flickity,n.Unipointer,n.fizzyUIUtils)}(window,function(t,e,i,n){function s(t){this.parent=t,this._create()}(s.prototype=Object.create(i.prototype))._create=function(){this.holder=document.createElement("ol"),this.holder.className="flickity-page-dots",this.dots=[],this.handleClick=this.onClick.bind(this),this.on("pointerDown",this.parent.childUIPointerDown.bind(this.parent))},s.prototype.activate=function(){this.setDots(),this.holder.addEventListener("click",this.handleClick),this.bindStartEvent(this.holder),this.parent.element.appendChild(this.holder)},s.prototype.deactivate=function(){this.holder.removeEventListener("click",this.handleClick),this.unbindStartEvent(this.holder),this.parent.element.removeChild(this.holder)},s.prototype.setDots=function(){var t=this.parent.slides.length-this.dots.length;0<t?this.addDots(t):t<0&&this.removeDots(-t)},s.prototype.addDots=function(t){for(var e=document.createDocumentFragment(),i=[],n=this.dots.length,s=n+t,o=n;o<s;o++){var r=document.createElement("li");r.className="dot",r.setAttribute("aria-label","Page dot "+(o+1)),e.appendChild(r),i.push(r)}this.holder.appendChild(e),this.dots=this.dots.concat(i)},s.prototype.removeDots=function(t){this.dots.splice(this.dots.length-t,t).forEach(function(t){this.holder.removeChild(t)},this)},s.prototype.updateSelected=function(){this.selectedDot&&(this.selectedDot.className="dot",this.selectedDot.removeAttribute("aria-current")),this.dots.length&&(this.selectedDot=this.dots[this.parent.selectedIndex],this.selectedDot.className="dot is-selected",this.selectedDot.setAttribute("aria-current","step"))},s.prototype.onTap=s.prototype.onClick=function(t){var e=t.target;if("LI"==e.nodeName){this.parent.uiChange();var i=this.dots.indexOf(e);this.parent.select(i)}},s.prototype.destroy=function(){this.deactivate(),this.allOff()},e.PageDots=s,n.extend(e.defaults,{pageDots:!0}),e.createMethods.push("_createPageDots");var o=e.prototype;return o._createPageDots=function(){this.options.pageDots&&(this.pageDots=new s(this),this.on("activate",this.activatePageDots),this.on("select",this.updateSelectedPageDots),this.on("cellChange",this.updatePageDots),this.on("resize",this.updatePageDots),this.on("deactivate",this.deactivatePageDots))},o.activatePageDots=function(){this.pageDots.activate()},o.updateSelectedPageDots=function(){this.pageDots.updateSelected()},o.updatePageDots=function(){this.pageDots.setDots()},o.deactivatePageDots=function(){this.pageDots.deactivate()},e.PageDots=s,e}),function(t,n){"function"==typeof define&&define.amd?define("flickity/js/player",["ev-emitter/ev-emitter","fizzy-ui-utils/utils","./flickity"],function(t,e,i){return n(t,e,i)}):"object"==typeof module&&module.exports?module.exports=n(require("ev-emitter"),require("fizzy-ui-utils"),require("./flickity")):n(t.EvEmitter,t.fizzyUIUtils,t.Flickity)}(window,function(t,e,i){function n(t){this.parent=t,this.state="stopped",this.onVisibilityChange=this.visibilityChange.bind(this),this.onVisibilityPlay=this.visibilityPlay.bind(this)}(n.prototype=Object.create(t.prototype)).play=function(){"playing"!=this.state&&(document.hidden?document.addEventListener("visibilitychange",this.onVisibilityPlay):(this.state="playing",document.addEventListener("visibilitychange",this.onVisibilityChange),this.tick()))},n.prototype.tick=function(){if("playing"==this.state){var t=this.parent.options.autoPlay;t="number"==typeof t?t:3e3;var e=this;this.clear(),this.timeout=setTimeout(function(){e.parent.next(!0),e.tick()},t)}},n.prototype.stop=function(){this.state="stopped",this.clear(),document.removeEventListener("visibilitychange",this.onVisibilityChange)},n.prototype.clear=function(){clearTimeout(this.timeout)},n.prototype.pause=function(){"playing"==this.state&&(this.state="paused",this.clear())},n.prototype.unpause=function(){"paused"==this.state&&this.play()},n.prototype.visibilityChange=function(){this[document.hidden?"pause":"unpause"]()},n.prototype.visibilityPlay=function(){this.play(),document.removeEventListener("visibilitychange",this.onVisibilityPlay)},e.extend(i.defaults,{pauseAutoPlayOnHover:!0}),i.createMethods.push("_createPlayer");var s=i.prototype;return s._createPlayer=function(){this.player=new n(this),this.on("activate",this.activatePlayer),this.on("uiChange",this.stopPlayer),this.on("pointerDown",this.stopPlayer),this.on("deactivate",this.deactivatePlayer)},s.activatePlayer=function(){this.options.autoPlay&&(this.player.play(),this.element.addEventListener("mouseenter",this))},s.playPlayer=function(){this.player.play()},s.stopPlayer=function(){this.player.stop()},s.pausePlayer=function(){this.player.pause()},s.unpausePlayer=function(){this.player.unpause()},s.deactivatePlayer=function(){this.player.stop(),this.element.removeEventListener("mouseenter",this)},s.onmouseenter=function(){this.options.pauseAutoPlayOnHover&&(this.player.pause(),this.element.addEventListener("mouseleave",this))},s.onmouseleave=function(){this.player.unpause(),this.element.removeEventListener("mouseleave",this)},i.Player=n,i}),function(i,n){"function"==typeof define&&define.amd?define("flickity/js/add-remove-cell",["./flickity","fizzy-ui-utils/utils"],function(t,e){return n(i,t,e)}):"object"==typeof module&&module.exports?module.exports=n(i,require("./flickity"),require("fizzy-ui-utils")):n(i,i.Flickity,i.fizzyUIUtils)}(window,function(t,e,n){var i=e.prototype;return i.insert=function(t,e){var i=this._makeCells(t);if(i&&i.length){var n=this.cells.length;e=void 0===e?n:e;var s=function(t){var e=document.createDocumentFragment();return t.forEach(function(t){e.appendChild(t.element)}),e}(i),o=e==n;if(o)this.slider.appendChild(s);else{var r=this.cells[e].element;this.slider.insertBefore(s,r)}if(0===e)this.cells=i.concat(this.cells);else if(o)this.cells=this.cells.concat(i);else{var a=this.cells.splice(e,n-e);
36this.cells=this.cells.concat(i).concat(a)}this._sizeCells(i),this.cellChange(e,!0)}},i.append=function(t){this.insert(t,this.cells.length)},i.prepend=function(t){this.insert(t,0)},i.remove=function(t){var e=this.getCells(t);if(e&&e.length){var i=this.cells.length-1;e.forEach(function(t){t.remove();var e=this.cells.indexOf(t);i=Math.min(e,i),n.removeFrom(this.cells,t)},this),this.cellChange(i,!0)}},i.cellSizeChange=function(t){var e=this.getCell(t);if(e){e.getSize();var i=this.cells.indexOf(e);this.cellChange(i)}},i.cellChange=function(t,e){var i=this.selectedElement;this._positionCells(t),this._getWrapShiftCells(),this.setGallerySize();var n=this.getCell(i);n&&(this.selectedIndex=this.getCellSlideIndex(n)),this.selectedIndex=Math.min(this.slides.length-1,this.selectedIndex),this.emitEvent("cellChange",[t]),this.select(this.selectedIndex),e&&this.positionSliderAtSelected()},e}),function(i,n){"function"==typeof define&&define.amd?define("flickity/js/lazyload",["./flickity","fizzy-ui-utils/utils"],function(t,e){return n(i,t,e)}):"object"==typeof module&&module.exports?module.exports=n(i,require("./flickity"),require("fizzy-ui-utils")):n(i,i.Flickity,i.fizzyUIUtils)}(window,function(t,e,o){"use strict";e.createMethods.push("_createLazyload");var i=e.prototype;function s(t,e){this.img=t,this.flickity=e,this.load()}return i._createLazyload=function(){this.on("select",this.lazyLoad)},i.lazyLoad=function(){var t=this.options.lazyLoad;if(t){var e="number"==typeof t?t:0,i=this.getAdjacentCellElements(e),n=[];i.forEach(function(t){var e=function(t){if("IMG"==t.nodeName){var e=t.getAttribute("data-flickity-lazyload"),i=t.getAttribute("data-flickity-lazyload-src"),n=t.getAttribute("data-flickity-lazyload-srcset");if(e||i||n)return[t]}var s=t.querySelectorAll("img[data-flickity-lazyload], img[data-flickity-lazyload-src], img[data-flickity-lazyload-srcset]");return o.makeArray(s)}(t);n=n.concat(e)}),n.forEach(function(t){new s(t,this)},this)}},s.prototype.handleEvent=o.handleEvent,s.prototype.load=function(){this.img.addEventListener("load",this),this.img.addEventListener("error",this);var t=this.img.getAttribute("data-flickity-lazyload")||this.img.getAttribute("data-flickity-lazyload-src"),e=this.img.getAttribute("data-flickity-lazyload-srcset");this.img.src=t,e&&this.img.setAttribute("srcset",e),this.img.removeAttribute("data-flickity-lazyload"),this.img.removeAttribute("data-flickity-lazyload-src"),this.img.removeAttribute("data-flickity-lazyload-srcset")},s.prototype.onload=function(t){this.complete(t,"flickity-lazyloaded")},s.prototype.onerror=function(t){this.complete(t,"flickity-lazyerror")},s.prototype.complete=function(t,e){this.img.removeEventListener("load",this),this.img.removeEventListener("error",this);var i=this.flickity.getParentCell(this.img),n=i&&i.element;this.flickity.cellSizeChange(n),this.img.classList.add(e),this.flickity.dispatchEvent("lazyLoad",t,n)},e.LazyLoader=s,e}),function(t,e){"function"==typeof define&&define.amd?define("flickity/js/index",["./flickity","./drag","./prev-next-button","./page-dots","./player","./add-remove-cell","./lazyload"],e):"object"==typeof module&&module.exports&&(module.exports=e(require("./flickity"),require("./drag"),require("./prev-next-button"),require("./page-dots"),require("./player"),require("./add-remove-cell"),require("./lazyload")))}(window,function(t){return t}),function(t,e){"function"==typeof define&&define.amd?define("flickity-as-nav-for/as-nav-for",["flickity/js/index","fizzy-ui-utils/utils"],e):"object"==typeof module&&module.exports?module.exports=e(require("flickity"),require("fizzy-ui-utils")):t.Flickity=e(t.Flickity,t.fizzyUIUtils)}(window,function(n,s){n.createMethods.push("_createAsNavFor");var t=n.prototype;return t._createAsNavFor=function(){this.on("activate",this.activateAsNavFor),this.on("deactivate",this.deactivateAsNavFor),this.on("destroy",this.destroyAsNavFor);var t=this.options.asNavFor;if(t){var e=this;setTimeout(function(){e.setNavCompanion(t)})}},t.setNavCompanion=function(t){t=s.getQueryElement(t);var e=n.data(t);if(e&&e!=this){this.navCompanion=e;var i=this;this.onNavCompanionSelect=function(){i.navCompanionSelect()},e.on("select",this.onNavCompanionSelect),this.on("staticClick",this.onNavStaticClick),this.navCompanionSelect(!0)}},t.navCompanionSelect=function(t){var e=this.navCompanion&&this.navCompanion.selectedCells;if(e){var i=e[0],n=this.navCompanion.cells.indexOf(i),s=n+e.length-1,o=Math.floor(function(t,e,
36i){return(e-t)*i+t}(n,s,this.navCompanion.cellAlign));if(this.selectCell(o,!1,t),this.removeNavSelectedElements(),!(o>=this.cells.length)){var r=this.cells.slice(n,1+s);this.navSelectedElements=r.map(function(t){return t.element}),this.changeNavSelectedClass("add")}}},t.changeNavSelectedClass=function(e){this.navSelectedElements.forEach(function(t){t.classList[e]("is-nav-selected")})},t.activateAsNavFor=function(){this.navCompanionSelect(!0)},t.removeNavSelectedElements=function(){this.navSelectedElements&&(this.changeNavSelectedClass("remove"),delete this.navSelectedElements)},t.onNavStaticClick=function(t,e,i,n){"number"==typeof n&&this.navCompanion.selectCell(n)},t.deactivateAsNavFor=function(){this.removeNavSelectedElements()},t.destroyAsNavFor=function(){this.navCompanion&&(this.navCompanion.off("select",this.onNavCompanionSelect),this.off("staticClick",this.onNavStaticClick),delete this.navCompanion)},n}),function(e,i){"use strict";"function"==typeof define&&define.amd?define("imagesloaded/imagesloaded",["ev-emitter/ev-emitter"],function(t){return i(e,t)}):"object"==typeof module&&module.exports?module.exports=i(e,require("ev-emitter")):e.imagesLoaded=i(e,e.EvEmitter)}("undefined"!=typeof window?window:this,function(e,t){var s=e.jQuery,o=e.console;function r(t,e){for(var i in e)t[i]=e[i];return t}var a=Array.prototype.slice;function l(t,e,i){if(!(this instanceof l))return new l(t,e,i);var n=t;"string"==typeof t&&(n=document.querySelectorAll(t)),n?(this.elements=function(t){return Array.isArray(t)?t:"object"==typeof t&&"number"==typeof t.length?a.call(t):[t]}(n),this.options=r({},this.options),"function"==typeof e?i=e:r(this.options,e),i&&this.on("always",i),this.getImages(),s&&(this.jqDeferred=new s.Deferred),setTimeout(this.check.bind(this))):o.error("Bad element for imagesLoaded "+(n||t))}(l.prototype=Object.create(t.prototype)).options={},l.prototype.getImages=function(){this.images=[],this.elements.forEach(this.addElementImages,this)},l.prototype.addElementImages=function(t){"IMG"==t.nodeName&&this.addImage(t),!0===this.options.background&&this.addElementBackgroundImages(t);var e=t.nodeType;if(e&&h[e]){for(var i=t.querySelectorAll("img"),n=0;n<i.length;n++){var s=i[n];this.addImage(s)}if("string"==typeof this.options.background){var o=t.querySelectorAll(this.options.background);for(n=0;n<o.length;n++){var r=o[n];this.addElementBackgroundImages(r)}}}};var h={1:!0,9:!0,11:!0};function i(t){this.img=t}function n(t,e){this.url=t,this.element=e,this.img=new Image}return l.prototype.addElementBackgroundImages=function(t){var e=getComputedStyle(t);if(e)for(var i=/url\((['"])?(.*?)\1\)/gi,n=i.exec(e.backgroundImage);null!==n;){var s=n&&n[2];s&&this.addBackground(s,t),n=i.exec(e.backgroundImage)}},l.prototype.addImage=function(t){var e=new i(t);this.images.push(e)},l.prototype.addBackground=function(t,e){var i=new n(t,e);this.images.push(i)},l.prototype.check=function(){var n=this;function e(t,e,i){setTimeout(function(){n.progress(t,e,i)})}this.progressedCount=0,this.hasAnyBroken=!1,this.images.length?this.images.forEach(function(t){t.once("progress",e),t.check()}):this.complete()},l.prototype.progress=function(t,e,i){this.progressedCount++,this.hasAnyBroken=this.hasAnyBroken||!t.isLoaded,this.emitEvent("progress",[this,t,e]),this.jqDeferred&&this.jqDeferred.notify&&this.jqDeferred.notify(this,t),this.progressedCount==this.images.length&&this.complete(),this.options.debug&&o&&o.log("progress: "+i,t,e)},l.prototype.complete=function(){var t=this.hasAnyBroken?"fail":"done";if(this.isComplete=!0,this.emitEvent(t,[this]),this.emitEvent("always",[this]),this.jqDeferred){var e=this.hasAnyBroken?"reject":"resolve";this.jqDeferred[e](this)}},(i.prototype=Object.create(t.prototype)).check=function(){this.getIsImageComplete()?this.confirm(0!==this.img.naturalWidth,"naturalWidth"):(this.proxyImage=new Image,this.proxyImage.addEventListener("load",this),this.proxyImage.addEventListener("error",this),this.img.addEventListener("load",this),this.img.addEventListener("error",this),this.proxyImage.src=this.img.src)},i.prototype.getIsImageComplete=function(){return this.img.complete&&this.img.naturalWi
36dth},i.prototype.confirm=function(t,e){this.isLoaded=t,this.emitEvent("progress",[this,this.img,e])},i.prototype.handleEvent=function(t){var e="on"+t.type;this[e]&&this[e](t)},i.prototype.onload=function(){this.confirm(!0,"onload"),this.unbindEvents()},i.prototype.onerror=function(){this.confirm(!1,"onerror"),this.unbindEvents()},i.prototype.unbindEvents=function(){this.proxyImage.removeEventListener("load",this),this.proxyImage.removeEventListener("error",this),this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},(n.prototype=Object.create(i.prototype)).check=function(){this.img.addEventListener("load",this),this.img.addEventListener("error",this),this.img.src=this.url,this.getIsImageComplete()&&(this.confirm(0!==this.img.naturalWidth,"naturalWidth"),this.unbindEvents())},n.prototype.unbindEvents=function(){this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},n.prototype.confirm=function(t,e){this.isLoaded=t,this.emitEvent("progress",[this,this.element,e])},l.makeJQueryPlugin=function(t){(t=t||e.jQuery)&&((s=t).fn.imagesLoaded=function(t,e){return new l(this,t,e).jqDeferred.promise(s(this))})},l.makeJQueryPlugin(),l}),function(i,n){"function"==typeof define&&define.amd?define(["flickity/js/index","imagesloaded/imagesloaded"],function(t,e){return n(i,t,e)}):"object"==typeof module&&module.exports?module.exports=n(i,require("flickity"),require("imagesloaded")):i.Flickity=n(i,i.Flickity,i.imagesLoaded)}(window,function(t,e,i){"use strict";e.createMethods.push("_createImagesLoaded");var n=e.prototype;return n._createImagesLoaded=function(){this.on("activate",this.imagesLoaded)},n.imagesLoaded=function(){if(this.options.imagesLoaded){var n=this;i(this.slider).on("progress",function(t,e){var i=n.getParentCell(e.img);n.cellSizeChange(i&&i.element),n.options.freeScroll||n.positionSliderAtSelected()})}},e}); 37/*! emergence.js v1.1.2 | (c) 2017 @xtianmiller | https://github.com/xtianmiller/emergence.js */ 38!function(e,t){"function"==typeof define&&define.amd?define(function(){return t(e)}):"object"==typeof exports?module.exports=t:e.emergence=t(e)}(this,function(e){"use strict";var t,n,o,i,r,c,s,d,a,l,f={},u=function(){},m=function(){return/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini|playbook|silk/i.test(navigator.userAgent)},h=function(e){var t=e.offsetWidth,n=e.offsetHeight,o=0,i=0;do{isNaN(e.offsetTop)||(o+=e.offsetTop),isNaN(e.offsetLeft)||(i+=e.offsetLeft)}while(null!==(e=e.offsetParent));return{width:t,height:n,top:o,left:i}},g=function(){t||(clearTimeout(t),t=setTimeout(function(){f.engage(),t=null},o))};return f.init=function(e){var t=function(e,t){return parseInt(e||t,10)};n=(e=e||{}).container||window,i=void 0===e.reset||e.reset,r=void 0===e.handheld||e.handheld,o=t(e.throttle,250),c=function(e,t){return parseFloat(e||t)}(e.elemCushion,.15),s=t(e.offsetTop,0),d=t(e.offsetRight,0),a=t(e.offsetBottom,0),l=t(e.offsetLeft,0),u=e.callback||u,"querySelectorAll"in document?(m()&&r||!m())&&(document.documentElement.className+=" emergence",window.addEventListener?(window.addEventListener("load",g,!1),n.addEventListener("scroll",g,!1),n.addEventListener("resize",g,!1)):(document.attachEvent("onreadystatechange",function(){"complete"===document.readyState&&g()}),n.attachEvent("onscroll",g),n.attachEvent("onresize",g))):console.log("Emergence.js is not supported in this browser.")},f.engage=function(){for(var e,t=document.querySelectorAll("[data-emergence]"),o=t.length,r=0;r<o;r++)!function(e){if(function(e){return null===e.offsetParent}(e))return!1;var t=h(e),o=function(e){var t,n;return e!==window?(t=e.clientWidth,n=e.clientHeight):(t=window.innerWidth||document.documentElement.clientWidth,n=window.innerHeight||document.documentElement.clientHeight),{width:t,height:n}}(n),i=function(e){return e!==window?{x:e.scrollLeft+h(e).left,y:e.scrollTop+h(e).top}:{x:window.pageXOffset||document.documentElement.scrollLeft,y:window.pageYOffset||document.documentElement.scrollTop}}(n),r=t.width,f=t.height,u=t.top,m=t.left,g=u+f,v=m+r;return function(){var e=u+f*c,t=v-r*c,n=g-f*c,h=m+r*c,w=i.y+s,p=i.x-d+o.width,E=i.y-a+o.height,y=i.x+l;return e<E&&n>w&&h<p&&t>y}()}(e=t[r])?!0===i?(e.setAttribute("data-emergence","hidden"),e.className=e.className,u(e,"reset")):!1===i&&u(e,"noreset"):(e.setAttribute("data-emergence","visible"),e.className=e.className,u(e,"visible"));o||f.disengage()},f.disengage=function(){window.removeEventListener?(n.removeEventListener("scroll",g,!1),n.removeEventListener("resize",g,!1)):(n.detachEvent("onscroll",g),n.detachEvent("onresize",g)),clearTimeout(t)},f}); 39/* 40 * reframe.js - Reframe.js: responsive iframes for embedded content 41 * @version v2.2.1 42 * @link https://github.com/dollarshaveclub/reframe.js#readme 43 * @author Jeff Wainwright <[email protected]> (http://jeffry.in) 44 * @license MIT 45*/ 46!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.reframe=t()}(this,function(){"use strict";return function(e,t){var i="string"==typeof e?document.querySelectorAll(e):e,n=t||"js-reframe";"length"in i||(i=[i]);for(var r=0;r<i.length;r+=1){var o=i[r];if(-1!==o.className.split(" ").indexOf(n))return;var d=o.getAttribute("height"),f=o.getAttribute("width");
46if(f.indexOf("%")>-1||o.style.width.indexOf("%")>-1)return;var a=(d||o.offsetHeight)/(f||o.offsetWidth)*100,s=document.createElement("div");s.className=n;var l=s.style;l.position="relative",l.width="100%",l.paddingTop=a+"%";var u=o.style;u.position="absolute",u.width="100%",u.height="100%",u.left="0",u.top="0",o.parentNode.insertBefore(s,o),o.parentNode.removeChild(o),s.appendChild(o)}}}); 47/*! 48 * Name : Just Another Parallax [Jarallax] 49 * Version : 1.10.3 50 * Author : nK <https://nkdev.info> 51 * GitHub : https://github.com/nk-o/jarallax 52 */!function(o){var n={};function i(e){if(n[e])return n[e].exports;var t=n[e]={i:e,l:!1,exports:{}};return o[e].call(t.exports,t,t.exports,i),t.l=!0,t.exports}i.m=o,i.c=n,i.d=function(e,t,o){i.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:o})},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,"a",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p="",i(i.s=11)}([function(o,e,t){"use strict";(function(e){var t;t="undefined"!=typeof window?window:void 0!==e?e:"undefined"!=typeof self?self:{},o.exports=t}).call(e,t(2))},function(e,t,o){"use strict";e.exports=function(e){"complete"===document.readyState||"interactive"===document.readyState?e.call():document.attachEvent?document.attachEvent("onreadystatechange",function(){"interactive"===document.readyState&&e.call()}):document.addEventListener&&document.addEventListener("DOMContentLoaded",e)}},function(e,t,o){"use strict";var n,i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};n=function(){return this}();try{n=n||Function("return this")()||(0,eval)("this")}catch(e){"object"===("undefined"==typeof window?"undefined":i(window))&&(n=window)}e.exports=n},,,,,,,,,function(e,t,o){e.exports=o(12)},function(e,t,o){"use strict";var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i=l(o(1)),a=o(0),r=l(o(13));function l(e){return e&&e.__esModule?e:{default:e}}var s=a.window.jarallax;if(a.window.jarallax=r.default,a.window.jarallax.noConflict=function(){return a.window.jarallax=s,this},void 0!==a.jQuery){var c=function(){var e=arguments||[];Array.prototype.unshift.call(e,this);var t=r.default.apply(a.window,e);return"object"!==(void 0===t?"undefined":n(t))?t:this};c.constructor=r.default.constructor;var u=a.jQuery.fn.jarallax;a.jQuery.fn.jarallax=c,a.jQuery.fn.jarallax.noConflict=function(){return a.jQuery.fn.jarallax=u,this}}(0,i.default)(function(){(0,r.default)(document.querySelectorAll("[data-jarallax]"))})},function(e,$,j){"use strict";(function(e){Object.defineProperty($,"__esModule",{value:!0});var d=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var o=[],n=!0,i=!1,a=void 0;try{for(var r,l=e[Symbol.iterator]();!(n=(r=l.next()).done)&&(o.push(r.value),!t||o.length!==t);n=!0);}catch(e){i=!0,a=e}finally{try{!n&&l.return&&l.return()}finally{if(i)throw a}}return o}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")},t=function(){function n(e,t){for(var o=0;o<t.length;o++){var n=t[o];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(e,t,o){return t&&n(e.prototype,t),o&&n(e,o),e}}(),p="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o=a(j(1)),n=a(j(14)),i=j(0);function a(e){return e&&e.__esModule?e:{default:e}}var r=function(){for(var e="transform WebkitTransform MozTransform".split(" "),t=document.createElement("div"),o=0;o<e.length;o++)if(t&&void 0!==t.style[e[o]])return e[o];return!1}(),b=void 0,v=void 0,l=void 0,s=!1,c=!1;function u(e){b=i.window.innerWidth||document.documentElement.clientWidth,v=i.window.innerHeight||document.documentElement.clientHeight,"object"!==(void 0===e?"undefined":p(e))||"load"!==e.type&&"dom
52-loaded"!==e.type||(s=!0)}u(),i.window.addEventListener("resize",u),i.window.addEventListener("orientationchange",u),i.window.addEventListener("load",u),(0,o.default)(function(){u({type:"dom-loaded"})});var m=[],f=!1;function y(){if(m.length){l=void 0!==i.window.pageYOffset?i.window.pageYOffset:(document.documentElement||document.body.parentNode||document.body).scrollTop;var t=s||!f||f.width!==b||f.height!==v,o=c||t||!f||f.y!==l;c=s=!1,(t||o)&&(m.forEach(function(e){t&&e.onResize(),o&&e.onScroll()}),f={width:b,height:v,y:l}),(0,n.default)(y)}}var g=!!e.ResizeObserver&&new e.ResizeObserver(function(e){e&&e.length&&(0,n.default)(function(){e.forEach(function(e){e.target&&e.target.jarallax&&(s||e.target.jarallax.onResize(),c=!0)})})}),h=0,x=function(){function u(e,t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,u);var o=this;o.instanceID=h++,o.$item=e,o.defaults={type:"scroll",speed:.5,imgSrc:null,imgElement:".jarallax-img",imgSize:"cover",imgPosition:"50% 50%",imgRepeat:"no-repeat",keepImg:!1,elementInViewport:null,zIndex:-100,disableParallax:!1,disableVideo:!1,automaticResize:!0,videoSrc:null,videoStartTime:0,videoEndTime:0,videoVolume:0,videoPlayOnlyVisible:!0,onScroll:null,onInit:null,onDestroy:null,onCoverImage:null};var n=o.$item.getAttribute("data-jarallax"),i=JSON.parse(n||"{}");n&&console.warn("Detected usage of deprecated data-jarallax JSON options, you should use pure data-attribute options. See info here - https://github.com/nk-o/jarallax/issues/53");var a=o.$item.dataset||{},r={};if(Object.keys(a).forEach(function(e){var t=e.substr(0,1).toLowerCase()+e.substr(1);t&&void 0!==o.defaults[t]&&(r[t]=a[e])}),o.options=o.extend({},o.defaults,i,r,t),o.pureOptions=o.extend({},o.options),Object.keys(o.options).forEach(function(e){"true"===o.options[e]?o.options[e]=!0:"false"===o.options[e]&&(o.options[e]=!1)}),o.options.speed=Math.min(2,Math.max(-1,parseFloat(o.options.speed))),(o.options.noAndroid||o.options.noIos)&&(console.warn("Detected usage of deprecated noAndroid or noIos options, you should use disableParallax option. See info here - https://github.com/nk-o/jarallax/#disable-on-mobile-devices"),o.options.disableParallax||(o.options.noIos&&o.options.noAndroid?o.options.disableParallax=/iPad|iPhone|iPod|Android/:o.options.noIos?o.options.disableParallax=/iPad|iPhone|iPod/:o.options.noAndroid&&(o.options.disableParallax=/Android/))),"string"==typeof o.options.disableParallax&&(o.options.disableParallax=new RegExp(o.options.disableParallax)),o.options.disableParallax instanceof RegExp){var l=o.options.disableParallax;o.options.disableParallax=function(){return l.test(navigator.userAgent)}}if("function"!=typeof o.options.disableParallax&&(o.options.disableParallax=function(){return!1}),"string"==typeof o.options.disableVideo&&(o.options.disableVideo=new RegExp(o.options.disableVideo)),o.options.disableVideo instanceof RegExp){var s=o.options.disableVideo;o.options.disableVideo=function(){return s.test(navigator.userAgent)}}"function"!=typeof o.options.disableVideo&&(o.options.disableVideo=function(){return!1});var c=o.options.elementInViewport;c&&"object"===(void 0===c?"undefined":p(c))&&void 0!==c.length&&(c=d(c,1)[0]);c instanceof Element||(c=null),o.options.elementInViewport=c,o.image={src:o.options.imgSrc||null,$container:null,useImgTag:!1,position:/iPad|iPhone|iPod|Android/.test(navigator.userAgent)?"absolute":"fixed"},o.initImg()&&o.canInitParallax()&&o.init()}return t(u,[{key:"css",value:function(t,o){return"string"==typeof o?i.window.getComputedStyle(t).getPropertyValue(o):(o.transform&&r&&(o[r]=o.transform),Object.keys(o).forEach(function(e){t.style[e]=o[e]}),t)}},{key:"extend",value:function(o){var n=arguments;return o=o||{},Object.keys(arguments).forEach(function(t){n[t]&&Object.keys(n[t]).forEach(function(e){o[e]=n[t][e]})}),o}},{key:"getWindowData",value:function(){return{width:b,height:v,y:l}}},{key:"initImg",value:function(){var e=this,t=e.options.imgElement;return t&&"string"==typeof t&&(t=e.$item.querySelector(t)),t instanceof Element||(t=null),t&&(e.options.keepImg?e.image.$item=t.cloneNode(!0):(e.image.$item=t,e.image.$itemParent=t.parentNode),e.image.useImgTag=!0),!!e.image.$item||(null===e.image.src&&(e.image.src=e.css(e.$item,"background-image").replace(/^url\(['"]?/g,"").replace(/['"]?\)$/g,"")),!(!e.image.src||"none"===e.image.src))}},{key:"canInitParallax",value:function(){return r&&!this.options.disableParallax()}},{key:"init",value:function(){var e=this,t={position:"absolute",top:0,left:0,width:"100%",height:"100%",overflow:"hidden",pointerEvents:"none"},o={};if(!e.options.keepImg){var n=e.$item.getAttribute("style");if(n&&e.$item.setAttribute("data-jarallax-original-styles",n),e.image.useImgTag){var i=e.image.$item.getAttribute("style");i&&e.image.$item.setAttribute("data-jarallax-original-styles",i)}}if("static"===e.css(e.$item,"position")&&e.css(e.$item,{position:"relative"}),"auto"===e.css(e.$item,"z-index")&&e.css(e.$item,{zIndex:0}),e.image.$container=document.createElement("div"),e.css(e.image.$container,t),e.css(e.image.$container,{"z-index":e.options.zIndex}),e.image.$container.setAttribute("id","jarallax-container-"+e.instanceID),e.$item.appendChild(e.image.$container),e.image.useImgTag?o=e.extend({"object-fit":e.options.imgSize,"object-position":e.options.imgPosition,"font-family":"object-fit: "+e.options.imgSize+"; object-position: "+e.options.imgPosition+";","max-width":"none"},t,o):(e.image.$item=document.createElement("div"),e.image.src&&(o=e.extend({"background-position":e.options.imgPosition,"background-size":e.options.imgSize,"background-repeat":e.options.imgRepeat,"background-image":'url("'+e.image.src+'")'},t,o))),"opacity"!==e.options.type&&"scale"!==e.options.type&&"scale-opacity"!==e.options.type&&1!==e.options.speed||(e.image.position="absolute"),"fixed"===e.image.position)for(var a=0,r=e.$item;null!==r&&r!==document&&0===a;){var l=e.css(r,"-webkit-transform")||e.css(r,"-moz-transform")||e.css(r,"transform");l&&"none"!==l&&(a=1,e.image.position="absolute"),r=r.parentNode}o.position=e.image.position,e.css(e.image.$item,o),e.image.$container.appendChild(e.image.$item),e.coverImage(),e.clipContainer(),e.onScroll(!0),e.o
52ptions.automaticResize&&g&&g.observe(e.$item),e.options.onInit&&e.options.onInit.call(e),"none"!==e.css(e.$item,"background-image")&&e.css(e.$item,{"background-image":"none"}),e.addToParallaxList()}},{key:"addToParallaxList",value:function(){m.push(this),1===m.length&&y()}},{key:"removeFromParallaxList",value:function(){var o=this;m.forEach(function(e,t){e.instanceID===o.instanceID&&m.splice(t,1)})}},{key:"destroy",value:function(){var e=this;e.removeFromParallaxList();var t=e.$item.getAttribute("data-jarallax-original-styles");if(e.$item.removeAttribute("data-jarallax-original-styles"),t?e.$item.setAttribute("style",t):e.$item.removeAttribute("style"),e.image.useImgTag){var o=e.image.$item.getAttribute("data-jarallax-original-styles");e.image.$item.removeAttribute("data-jarallax-original-styles"),o?e.image.$item.setAttribute("style",t):e.image.$item.removeAttribute("style"),e.image.$itemParent&&e.image.$itemParent.appendChild(e.image.$item)}e.$clipStyles&&e.$clipStyles.parentNode.removeChild(e.$clipStyles),e.image.$container&&e.image.$container.parentNode.removeChild(e.image.$container),e.options.onDestroy&&e.options.onDestroy.call(e),delete e.$item.jarallax}},{key:"clipContainer",value:function(){if("fixed"===this.image.position){var e=this,t=e.image.$container.getBoundingClientRect(),o=t.width,n=t.height;if(!e.$clipStyles)e.$clipStyles=document.createElement("style"),e.$clipStyles.setAttribute("type","text/css"),e.$clipStyles.setAttribute("id","jarallax-clip-"+e.instanceID),(document.head||document.getElementsByTagName("head")[0]).appendChild(e.$clipStyles);var i="#jarallax-container-"+e.instanceID+" {\n clip: rect(0 "+o+"px "+n+"px 0);\n clip: rect(0, "+o+"px, "+n+"px, 0);\n }";e.$clipStyles.styleSheet?e.$clipStyles.styleSheet.cssText=i:e.$clipStyles.innerHTML=i}}},{key:"coverImage",value:function(){var e=this,t=e.image.$container.getBoundingClientRect(),o=t.height,n=e.options.speed,i="scroll"===e.options.type||"scroll-opacity"===e.options.type,a=0,r=o,l=0;return i&&(a=n<0?n*Math.max(o,v):n*(o+v),1<n?r=Math.abs(a-v):n<0?r=a/n+Math.abs(a):r+=Math.abs(v-o)*(1-n),a/=2),e.parallaxScrollDistance=a,l=i?(v-r)/2:(o-r)/2,e.css(e.image.$item,{height:r+"px",marginTop:l+"px",left:"fixed"===e.image.position?t.left+"px":"0",width:t.width+"px"}),e.options.onCoverImage&&e.options.onCoverImage.call(e),{image:{height:r,marginTop:l},container:t}}},{key:"isVisible",value:function(){return this.isElementInViewport||!1}},{key:"onScroll",value:function(e){var t=this,o=t.$item.getBoundingClientRect(),n=o.top,i=o.height,a={},r=o;if(t.options.elementInViewport&&(r=t.options.elementInViewport.getBoundingClientRect()),t.isElementInViewport=0<=r.bottom&&0<=r.right&&r.top<=v&&r.left<=b,e||t.isElementInViewport){var l=Math.max(0,n),s=Math.max(0,i+n),c=Math.max(0,-n),u=Math.max(0,n+i-v),d=Math.max(0,i-(n+i-v)),p=Math.max(0,-n+v-i),m=1-2*(v-n)/(v+i),f=1;if(i<v?f=1-(c||u)/i:s<=v?f=s/v:d<=v&&(f=d/v),"opacity"!==t.options.type&&"scale-opacity"!==t.options.type&&"scroll-opacity"!==t.options.type||(a.transform="translate3d(0,0,0)",a.opacity=f),"scale"===t.options.type||"scale-opacity"===t.options.type){var y=1;t.options.speed<0?y-=t.options.speed*f:y+=t.options.speed*(1-f),a.transform="scale("+y+") translate3d(0,0,0)"}if("scroll"===t.options.type||"scroll-opacity"===t.options.type){var g=t.parallaxScrollDistance*m;"absolute"===t.image.position&&(g-=n),a.transform="translate3d(0,"+g+"px,0)"}t.css(t.image.$item,a),t.options.onScroll&&t.options.onScroll.call(t,{section:o,beforeTop:l,beforeTopEnd:s,afterTop:c,beforeBottom:u,beforeBottomEnd:d,afterBottom:p,visiblePercent:f,fromViewportCenter:m})}}},{key:"onResize",value:function(){this.coverImage(),this.clipContainer()}}]),u}(),w=function(e){("object"===("undefined"==typeof HTMLElement?"undefined":p(HTMLElement))?e instanceof HTMLElement:e&&"object"===(void 0===e?"undefined":p(e))&&null!==e&&1===e.nodeType&&"string"==typeof e.nodeName)&&(e=[e]);for(var t=arguments[1],o=Array.prototype.slice.call(arguments,2),n=e.length,i=0,a=void 0;i<n;i++)if("object"===(void 0===t?"undefined":p(t))||void 0===t?e[i].jarallax||(e[i].jarallax=new x(e[i],t)):e[i].jarallax&&(a=e[i].jarallax[t].apply(e[i].jarallax,o)),void 0!==a)return a;return e};w.constructor=x,$.default=w}).call($,j(2))},function(e,t,o){"use strict";var n=o(0),i=n.requestAnimationFrame||n.webkitRequestAnimationFrame||n.mozRequestAnimationFrame||function(e){var t=+new Date,o=Math.max(0,16-(t-a)),n=setTimeout(e,o);return a=t,n},a=+new Date;var r=n.cancelAnimationFrame||n.webkitCancelAnimationFrame||n.mozCancelAnimationFrame||clearTimeout;Function.prototype.bind&&(i=i.bind(n),r=r.bind(n)),(e.exports=i).cancel=r}
52]); 53 54 55/*! 56 * Name : Video Background Extension for Jarallax 57 * Version : 1.0.1 58 * Author : nK <https://nkdev.info> 59 * GitHub : https://github.com/nk-o/jarallax 60 */!function(o){var i={};function n(e){if(i[e])return i[e].exports;var t=i[e]={i:e,l:!1,exports:{}};return o[e].call(t.exports,t,t.exports,n),t.l=!0,t.exports}n.m=o,n.c=i,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:o})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=7)}([function(o,e,t){"use strict";(function(e){var t;t="undefined"!=typeof window?window:void 0!==e?e:"undefined"!=typeof self?self:{},o.exports=t}).call(e,t(2))},function(e,t,o){"use strict";e.exports=function(e){"complete"===document.readyState||"interactive"===document.readyState?e.call():document.attachEvent?document.attachEvent("onreadystatechange",function(){"interactive"===document.readyState&&e.call()}):document.addEventListener&&document.addEventListener("DOMContentLoaded",e)}},function(e,t,o){"use strict";var i,n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};i=function(){return this}();try{i=i||Function("return this")()||(0,eval)("this")}catch(e){"object"===("undefined"==typeof window?"undefined":n(window))&&(i=window)}e.exports=i},function(e,t,o){"use strict";e.exports=o(9)},,,,function(e,t,o){e.exports=o(8)},function(e,t,o){"use strict";var i=l(o(3)),n=l(o(0)),a=l(o(1)),r=l(o(10));function l(e){return e&&e.__esModule?e:{default:e}}n.default.VideoWorker=n.default.VideoWorker||i.default,(0,r.default)(),(0,a.default)(function(){"undefined"!=typeof jarallax&&jarallax(document.querySelectorAll("[data-jarallax-video]"))})},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a=function(){function i(e,t){for(var o=0;o<t.length;o++){var i=t[o];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(e,t,o){return t&&i(e.prototype,t),o&&i(e,o),e}}();function i(){this._done=[],this._fail=[]}i.prototype={execute:function(e,t){var o=e.length;for(t=Array.prototype.slice.call(t);o--;)e[o].apply(null,t)},resolve:function(){this.execute(this._done,arguments)},reject:function(){this.execute(this._fail,arguments)},done:function(e){this._done.push(e)},fail:function(e){this._fail.push(e)}};var r=0,l=0,p=0,u=0,s=0,d=new i,y=new i,c=function(){function i(e,t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,i);var o=this;o.url=e,o.options_default={autoplay:!1,loop:!1,mute:!1,volume:100,showContols:!0,startTime:0,endTime:0},o.options=o.extend({},o.options_default,t),o.videoID=o.parseURL(e),o.videoID&&(o.ID=r++,o.loadAPI(),o.init())}return a(i,[{key:"extend",value:function(o){var i=arguments;return o=o||{},Object.keys(arguments).forEach(function(t){i[t]&&Object.keys(i[t]).forEach(function(e){o[e]=i[t][e]})}),o}},{key:"parseURL",value:function(e){var t,o,i,n,a,r=!(!(t=e.match(/.*(?:youtu.be\/|v\/|u\/\w\/|embed\/|watch\?v=)([^#\&\?]*).*/))||11!==t[1].length)&&t[1],l=!(!(o=e.match(/https?:\/\/(?:www\.|player\.)?vimeo.com\/(?:channels\/(?:\w+\/)?|groups\/([^\/]*)\/videos\/|album\/(\d+)\/video\/|video\/|)(\d+)(?:$|\/|\?)/))||!o[3])&&o[3],p=(i=e.split(/,(?=mp4\:|webm\:|ogv\:|ogg\:)/),n={},a=0,i.forEach(function(e){var t=e.match(/^(mp4|webm|ogv|ogg)\:(.*)/);t&&t[1]&&t[2]&&(n["ogv"===t[1]?"ogg":t[1]]=t[2],a=1)}),!!a&&n);return r?(this.type="youtube",r):l?(this.type="vimeo",l):!!p&&(this.type="local",p)}},{key:"isValid",value:function(){return!!this.videoID}},{key:"on",value:function(e,t){this.userEventsList=this.userEventsList||[],(this.userEventsList[e]||(this.userEventsList[e]=[])).push(t)}},{key:"off",value:function(o,i){var n=this;this.userEventsList&&this.userEventsList[o]&&(i?this.userEventsList[o].forEac
60h(function(e,t){e===i&&(n.userEventsList[o][t]=!1)}):delete this.userEventsList[o])}},{key:"fire",value:function(e){var t=this,o=[].slice.call(arguments,1);this.userEventsList&&void 0!==this.userEventsList[e]&&this.userEventsList[e].forEach(function(e){e&&e.apply(t,o)})}},{key:"play",value:function(e){var t=this;t.player&&("youtube"===t.type&&t.player.playVideo&&(void 0!==e&&t.player.seekTo(e||0),YT.PlayerState.PLAYING!==t.player.getPlayerState()&&t.player.playVideo()),"vimeo"===t.type&&(void 0!==e&&t.player.setCurrentTime(e),t.player.getPaused().then(function(e){e&&t.player.play()})),"local"===t.type&&(void 0!==e&&(t.player.currentTime=e),t.player.paused&&t.player.play()))}},{key:"pause",value:function(){var t=this;t.player&&("youtube"===t.type&&t.player.pauseVideo&&YT.PlayerState.PLAYING===t.player.getPlayerState()&&t.player.pauseVideo(),"vimeo"===t.type&&t.player.getPaused().then(function(e){e||t.player.pause()}),"local"===t.type&&(t.player.paused||t.player.pause()))}},{key:"mute",value:function(){var e=this;e.player&&("youtube"===e.type&&e.player.mute&&e.player.mute(),"vimeo"===e.type&&e.player.setVolume&&e.player.setVolume(0),"local"===e.type&&(e.$video.muted=!0))}},{key:"unmute",value:function(){var e=this;e.player&&("youtube"===e.type&&e.player.mute&&e.player.unMute(),"vimeo"===e.type&&e.player.setVolume&&e.player.setVolume(e.options.volume),"local"===e.type&&(e.$video.muted=!1))}},{key:"setVolume",value:function(){var e=0<arguments.length&&void 0!==arguments[0]&&arguments[0],t=this;t.player&&e&&("youtube"===t.type&&t.player.setVolume&&t.player.setVolume(e),"vimeo"===t.type&&t.player.setVolume&&t.player.setVolume(e),"local"===t.type&&(t.$video.volume=e/100))}},{key:"getVolume",value:function(t){var e=this;e.player?("youtube"===e.type&&e.player.getVolume&&t(e.player.getVolume()),"vimeo"===e.type&&e.player.getVolume&&e.player.getVolume().then(function(e){t(e)}),"local"===e.type&&t(100*e.$video.volume)):t(!1)}},{key:"getMuted",value:function(t){var e=this;e.player?("youtube"===e.type&&e.player.isMuted&&t(e.player.isMuted()),"vimeo"===e.type&&e.player.getVolume&&e.player.getVolume().then(function(e){t(!!e)}),"local"===e.type&&t(e.$video.muted)):t(null)}},{key:"getImageURL",value:function(t){var o=this;
60if(o.videoImage)t(o.videoImage);else{if("youtube"===o.type){var e=["maxresdefault","sddefault","hqdefault","0"],i=0,n=new Image;n.onload=function(){120!==(this.naturalWidth||this.width)||i===e.length-1?(o.videoImage="https://img.youtube.com/vi/"+o.videoID+"/"+e[i]+".jpg",t(o.videoImage)):(i++,this.src="https://img.youtube.com/vi/"+o.videoID+"/"+e[i]+".jpg")},n.src="https://img.youtube.com/vi/"+o.videoID+"/"+e[i]+".jpg"}if("vimeo"===o.type){var a=new XMLHttpRequest;a.open("GET","https://vimeo.com/api/v2/video/"+o.videoID+".json",!0),a.onreadystatechange=function(){if(4===this.readyState&&200<=this.status&&this.status<400){var e=JSON.parse(this.responseText);o.videoImage=e[0].thumbnail_large,t(o.videoImage)}},a.send(),a=null}}}},{key:"getIframe",value:function(e){this.getVideo(e)}},{key:"getVideo",value:function(l){var p=this;p.$video?l(p.$video):p.onAPIready(function(){var e=void 0;if(p.$video||((e=document.createElement("div")).style.display="none"),"youtube"===p.type){p.playerOptions={},p.playerOptions.videoId=p.videoID,p.playerOptions.playerVars={autohide:1,rel:0,autoplay:0,playsinline:1},p.options.showContols||(p.playerOptions.playerVars.iv_load_policy=3,p.playerOptions.playerVars.modestbranding=1,p.playerOptions.playerVars.controls=0,p.playerOptions.playerVars.showinfo=0,p.playerOptions.playerVars.disablekb=1);var t=void 0,o=void 0;p.playerOptions.events={onReady:function(t){p.options.mute?t.target.mute():p.options.volume&&t.target.setVolume(p.options.volume),p.options.autoplay&&p.play(p.options.startTime),p.fire("ready",t),setInterval(function(){p.getVolume(function(e){p.options.volume!==e&&(p.options.volume=e,p.fire("volumechange",t))})},150)},onStateChange:function(e){p.options.loop&&e.data===YT.PlayerState.ENDED&&p.play(p.options.startTime),t||e.data!==YT.PlayerState.PLAYING||(t=1,p.fire("started",e)),e.data===YT.PlayerState.PLAYING&&p.fire("play",e),e.data===YT.PlayerState.PAUSED&&p.fire("pause",e),e.data===YT.PlayerState.ENDED&&p.fire("ended",e),e.data===YT.PlayerState.PLAYING?o=setInterval(function(){p.fire("timeupdate",e),p.options.endTime&&p.player.getCurrentTime()>=p.options.endTime&&(p.options.loop?p.play(p.options.startTime):p.pause())},150):clearInterval(o)}};var i=!p.$video;if(i){var n=document.createElement("div");n.setAttribute("id",p.playerID),e.appendChild(n),document.body.appendChild(e)}p.player=p.player||new window.YT.Player(p.playerID,p.playerOptions),i&&(p.$video=document.getElementById(p.playerID),p.videoWidth=parseInt(p.$video.getAttribute("width"),10)||1280,p.videoHeight=parseInt(p.$video.getAttribute("height"),10)||720)}if("vimeo"===p.type){p.playerOptions="",p.playerOptions+="player_id="+p.playerID,p.playerOptions+="&autopause=0",p.playerOptions+="&transparent=0",p.options.showContols||(p.playerOptions+="&badge=0&byline=0&portrait=0&title=0"),p.playerOptions+="&autoplay="+(p.options.autoplay?"1":"0"),p.playerOptions+="&loop="+(p.options.loop?1:0),p.$video||(p.$video=document.createElement("iframe"),p.$video.setAttribute("id",p.playerID),p.$video.setAttribute("src","https://player.vimeo.com/video/"+p.videoID+"?"+p.playerOptions),p.$video.setAttribute("frameborder","0"),e.appendChild(p.$video),document.body.appendChild(e)),p.player=p.player||new Vimeo.Player(p.$video),p.player.getVideoWidth().then(function(e){p.videoWidth=e||1280}),p.player.getVideoHeight().then(function(e){p.videoHeight=e||720}),p.options.startTime&&p.options.autoplay&&p.player.setCurrentTime(p.options.startTime),p.options.mute?p.player.setVolume(0):p.options.volume&&p.player.setVolume(p.options.volume);var a=void 0;p.player.on("timeupdate",function(e){a||(p.fire("started",e),a=1),p.fire("timeupdate",e),p.options.endTime&&p.options.endTime&&e.seconds>=p.options.endTime&&(p.options.loop?p.play(p.options.startTime):p.pause())}),p.player.on("play",function(e){p.fire("play",e),p.options.startTime&&0===e.seconds&&p.play(p.options.startTime)}),p.player.on("pause",function(e){p.fire("pause",e)}),p.player.on("ended",function(e){p.fire("ended",e)}),p.player.on("loaded",function(e){p.fire("ready",e)}),p.player.on("volumechange",function(e){p.fire("volumechange",e)})}if("local"===p.type){p.$video||(p.$video=document.createElement("video"),p.options.mute?p.$video.muted=!0:p.$video.volume&&(p.$video.volume=p.options.volume/100),p.options.loop&&(p.$video.loop=!0),p.$video.setAttribute("playsinline",""),p.$video.setAttribute("webkit-playsinline",""),p.$video.setAttribute("id",p.playerID),e.appendChild(p.$video),document.body.appendChild(e),Object.keys(p.videoID).forEac
60h(function(e){var t,o,i,n;t=p.$video,o=p.videoID[e],i="video/"+e,(n=document.createElement("source")).src=o,n.type=i,t.appendChild(n)})),p.player=p.player||p.$video;var r=void 0;p.player.addEventListener("playing",function(e){r||p.fire("started",e),r=1}),p.player.addEventListener("timeupdate",function(e){p.fire("timeupdate",e),p.options.endTime&&p.options.endTime&&this.currentTime>=p.options.endTime&&(p.options.loop?p.play(p.options.startTime):p.pause())}),p.player.addEventListener("play",function(e){p.fire("play",e)}),p.player.addEventListener("pause",function(e){p.fire("pause",e)}),p.player.addEventListener("ended",function(e){p.fire("ended",e)}),p.player.addEventListener("loadedmetadata",function(){p.videoWidth=this.videoWidth||1280,p.videoHeight=this.videoHeight||720,p.fire("ready"),p.options.autoplay&&p.play(p.options.startTime)}),p.player.addEventListener("volumechange",function(e){p.getVolume(function(e){p.options.volume=e}),p.fire("volumechange",e)})}l(p.$video)})}},{key:"init",value:function(){this.playerID="VideoWorker-"+this.ID}},{key:"loadAPI",value:function(){if(!l||!p){var e="";if("youtube"!==this.type||l||(l=1,e="https://www.youtube.com/iframe_api"),"vimeo"!==this.type||p||(p=1,e="https://player.vimeo.com/api/player.js"),e){var t=document.createElement("script"),o=document.getElementsByTagName("head")[0];t.src=e,o.appendChild(t),t=o=null}}}},{key:"onAPIready",value:function(e){if("youtube"===this.type&&("undefined"!=typeof YT&&0!==YT.loaded||u?"object"===("undefined"==typeof YT?"undefined":n(YT))&&1===YT.loaded?e():d.done(function(){e()}):(u=1,window.onYouTubeIframeAPIReady=function(){window.onYouTubeIframeAPIReady=null,d.resolve("done"),e()})),"vimeo"===this.type)if("undefined"!=typeof Vimeo||s)"undefined"!=typeof Vimeo?e():y.done(function(){e()});else{s=1;var t=setInterval(function(){"undefined"!=typeof Vimeo&&(clearInterval(t),y.resolve("done"),e())},20)}"local"===this.type&&e()}}]),i}();t.default=c},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:p.default.jarallax;if(void 0===e)return;var t=e.constructor,i=t.prototype.init;t.prototype.init=function(){var o=this;i.apply(o),o.video&&!o.options.disableVideo()&&o.video.getVideo(function(e){var t=e.parentNode;o.css(e,{position:o.image.position,top:"0px",left:"0px",right:"0px",bottom:"0px",width:"100%",height:"100%",maxWidth:"none",maxHeight:"none",margin:0,zIndex:-1}),o.$video=e,o.image.$container.appendChild(e),t.parentNode.removeChild(t)})};var l=t.prototype.coverImage;t.prototype.coverImage=function(){var e=this,t=l.apply(e),o=!!e.image.$item&&e.image.$item.nodeName;
60if(t&&e.video&&o&&("IFRAME"===o||"VIDEO"===o)){var i=t.image.height,n=i*e.image.width/e.image.height,a=(t.container.width-n)/2,r=t.image.marginTop;t.container.width>n&&(n=t.container.width,i=n*e.image.height/e.image.width,a=0,r+=(t.image.height-i)/2),"IFRAME"===o&&(i+=400,r-=200),e.css(e.$video,{width:n+"px",marginLeft:a+"px",height:i+"px",marginTop:r+"px"})}return t};var o=t.prototype.initImg;t.prototype.initImg=function(){var e=this,t=o.apply(e);return e.options.videoSrc||(e.options.videoSrc=e.$item.getAttribute("data-jarallax-video")||null),e.options.videoSrc?(e.defaultInitImgResult=t,!0):t};var n=t.prototype.canInitParallax;t.prototype.canInitParallax=function(){var o=this,e=n.apply(o);if(!o.options.videoSrc)return e;var t=new r.default(o.options.videoSrc,{autoplay:!0,loop:!0,showContols:!1,startTime:o.options.videoStartTime||0,endTime:o.options.videoEndTime||0,mute:o.options.videoVolume?0:1,volume:o.options.videoVolume||0});if(t.isValid())if(e){if(t.on("ready",function(){if(o.options.videoPlayOnlyVisible){var e=o.onScroll;o.onScroll=function(){e.apply(o),o.isVisible()?t.play():t.pause()}}else t.play()}),t.on("started",function(){o.image.$default_item=o.image.$item,o.image.$item=o.$video,o.image.width=o.video.videoWidth||1280,o.image.height=o.video.videoHeight||720,o.options.imgWidth=o.image.width,o.options.imgHeight=o.image.height,o.coverImage(),o.clipContainer(),o.onScroll(),o.image.$default_item&&(o.image.$default_item.style.display="none")}),o.video=t,!o.defaultInitImgResult)return"local"!==t.type?(t.getImageURL(function(e){o.image.src=e,o.init()}),!1):(o.image.src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",!0)}else o.defaultInitImgResult||t.getImageURL(function(e){var t=o.$item.getAttribute("style");t&&o.$item.setAttribute("data-jarallax-original-styles",t),o.css(o.$item,{"background-image":'url("'+e+'")',"background-position":"center","background-size":"cover"})});return e};var a=t.prototype.destroy;t.prototype.destroy=function(){var e=this;e.image.$default_item&&(e.image.$item=e.image.$default_item,delete e.image.$default_item),a.apply(e)}};var r=i(o(3)),p=i(o(0));function i(e){return e&&e.__esModule?e:{default:e}}}]); 61 62 63/*! 64 * in-view 0.6.1 - Get notified when a DOM element enters or exits the viewport. 65 * Copyright (c) 2016 Cam Wiegert <[email protected]> - https://camwiegert.github.io/in-view 66 * License: MIT 67 */ 68!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.inView=e():t.inView=e()}(this,function(){return function(t){function e(r){if(n[r])return n[r].exports;var i=n[r]={exports:{},id:r,loaded:!1};return t[r].call(i.exports,i,i.exports,e),i.loaded=!0,i.exports}var n={};return e.m=t,e.c=n,e.p="",e(0)}([function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}var i=n(2),o=r(i);t.exports=o["default"]},function(t,e){function n(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}t.exports=n},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(9),o=r(i),u=n(3),f=r(u),s=n(4),c=function(){if("undefined"!=typeof window){var t=100,e=["scroll","resize","load"],n={history:[]},r={offset:{},threshold:0,test:s.inViewport}
vendor: 4,219 bytes, lines 68-73
68,i=(0,o["default"])(function(){n.history.forEach(function(t){n[t].check()})},t);e.forEach(function(t){return addEventListener(t,i)}),window.MutationObserver&&addEventListener("DOMContentLoaded",function(){new MutationObserver(i).observe(document.body,{attributes:!0,childList:!0,subtree:!0})});var u=function(t){if("string"==typeof t){var e=[].slice.call(document.querySelectorAll(t));return n.history.indexOf(t)>-1?n[t].elements=e:(n[t]=(0,f["default"])(e,r),n.history.push(t)),n[t]}};return u.offset=function(t){if(void 0===t)return r.offset;var e=function(t){return"number"==typeof t};return["top","right","bottom","left"].forEach(e(t)?function(e){return r.offset[e]=t}:function(n){return e(t[n])?r.offset[n]=t[n]:null}),r.offset},u.threshold=function(t){return"number"==typeof t&&t>=0&&t<=1?r.threshold=t:r.threshold},u.test=function(t){return"function"==typeof t?r.test=t:r.test},u.is=function(t){return r.test(t,r)},u.offset(0),u}};e["default"]=c()},function(t,e){"use strict";function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}return function(e,n,r){return n&&t(e.prototype,n),r&&t(e,r),e}}(),i=function(){function t(e,r){n(this,t),this.options=r,this.elements=e,this.current=[],this.handlers={enter:[],exit:[]},this.singles={enter:[],exit:[]}}return r(t,[{key:"check",value:function(){var t=this;return this.elements.forEach(function(e){var n=t.options.test(e,t.options),r=t.current.indexOf(e),i=r>-1,o=n&&!i,u=!n&&i;o&&(t.current.push(e),t.emit("enter",e)),u&&(t.current.splice(r,1),t.emit("exit",e))}),this}},{key:"on",value:function(t,e){return this.handlers[t].push(e),this}},{key:"once",value:function(t,e){return this.singles[t].unshift(e),this}},{key:"emit",value:function(t,e){for(;this.singles[t].length;)this.singles[t].pop()(e);for(var n=this.handlers[t].length;--n>-1;)this.handlers[t][n](e);return this}}]),t}();e["default"]=function(t,e){return new i(t,e)}},function(t,e){"use strict";function n(t,e){var n=t.getBoundingClientRect(),r=n.top,i=n.right,o=n.bottom,u=n.left,f=n.width,s=n.height,c={t:o,r:window.innerWidth-u,b:window.innerHeight-r,l:i},a={x:e.threshold*f,y:e.threshold*s};return c.t>e.offset.top+a.y&&c.r>e.offset.right+a.x&&c.b>e.offset.bottom+a.y&&c.l>e.offset.left+a.x}Object.defineProperty(e,"__esModule",{value:!0}),e.inViewport=n},function(t,e){(function(e){var n="object"==typeof e&&e&&e.Object===Object&&e;t.exports=n}).call(e,function(){return this}())},function(t,e,n){var r=n(5),i="object"==typeof self&&self&&self.Object===Object&&self,o=r||i||Function("return this")();t.exports=o},function(t,e,n){function r(t,e,n){function r(e){var n=x,r=m;return x=m=void 0,E=e,w=t.apply(r,n)}function a(t){return E=t,j=setTimeout(h,e),M?r(t):w}function l(t){var n=t-O,r=t-E,i=e-n;return _?c(i,g-r):i}function d(t){var n=t-O,r=t-E;return void 0===O||n>=e||n<0||_&&r>=g}function h(){var t=o();return d(t)?p(t):void(j=setTimeout(h,l(t)))}function p(t){return j=void 0,T&&x?r(t):(x=m=void 0,w)}function v(){void 0!==j&&clearTimeout(j),E=0,x=O=m=j=void 0}function y(){return void 0===j?w:p(o())}function b(){var t=o(),n=d(t);if(x=arguments,m=this,O=t,n){if(void 0===j)return a(O);if(_)return j=setTimeout(h,e),r(O)}return void 0===j&&(j=setTimeout(h,e)),w}var x,m,g,w,j,O,E=0,M=!1,_=!1,T=!0;if("function"!=typeof t)throw new TypeError(f);return e=u(e)||0,i(n)&&(M=!!n.leading,_="maxWait"in n,g=_?s(u(n.maxWait)||0,e):g,T="trailing"in n?!!n.trailing:T),b.cancel=v,b.flush=y,b}var i=n(1),o=n(8),u=n(10),f="Expected a function",s=Math.max,c=Math.min;t.exports=r},function(t,e,n){var r=n(6),i=function(){return r.Date.now()};t.exports=i},function(t,e,n){function r(t,e,n){var r=!0,f=!0;if("function"!=typeof t)throw new TypeError(u);return o(n)&&(r="leading"in n?!!n.leading:r,f="trailing"in n?!!n.trailing:f),i(t,e,{leading:r,maxWait:e,trailing:f})}var i=n(7),o=n(1),u="Expected a function";t.exports=r},function(t,e){function n(t){return t}t.exports=n}])}); 69customSelectElement = {}; 70 71(function (self) { 72 73 /**
74 * All needed selectors. 75 * 76 * @private 77 */ 78 let _selectors = { 79 container: '.custom-select', 80 input: '.select-value', 81 select: '.select-container', 82 selectLabel: '.select-label', 83 optionsContainer: '.select-options', 84 option: '.select-option', 85 } 86 87 /** 88 * Add a css class to a dom element. 89 * 90 * @param {HTMLElement} element The html element. 91 * @param {string} className The name of the class. 92 * @private 93 */ 94 function _addDomClass(element, className) { 95 if (className.substr(0, 1) === '.') { 96 className = className.substr(1) 97 } 98 99 if (!element.classList.contains(className)) { 100 element.classList.add(className) 101 } 102 } 103 104 /** 105 * Remove a css class from a dom element. 106 * 107 * @param {HTMLElement} element The html element. 108 * @param {string} className The name of the class. 109 * @private 110 */ 111 function _removeDomClass(element, className) { 112 if (className.substr(0, 1) === '.') { 113 className = className.substr(1) 114 } 115 116 if (element.classList.contains(className)) { 117 element.classList.remove(className) 118 } 119 } 120 121 /** 122 * Toggle a css class from a dom element. 123 * 124 * @param {HTMLElement} element The html element. 125 * @param {string} className The name of the class. 126 * @private 127 */ 128 function _toggleDomClass(element, className) { 129 if (className.substr(0, 1) === '.') { 130 className = className.substr(1) 131 } 132 133 let functionName = element.classList.contains(className) ? _removeDomClass : _addDomClass 134 functionName(element, className) 135 } 136 137 /** 138 * Get the parent element with the given class. 139 * 140 * @param {HTMLElement} element 141 * @param {string} className 142 * @returns {HTMLElement} 143 * @private 144 */ 145 function _getParentWithClass (element, className) { 146 if (className.substr(0, 1) === '.') { 147 className = className.substr(1) 148 } 149 150 while ((element = element.parentElement) && !(element.classList.contains(className))) { 151 // Nothing inside. 152 } 153 154 return element 155 } 156 157 /** 158 * Get the root element of this custom select element. 159 * 160 * @param {HTMLElement} element 161 * @returns {HTMLElement} 162 * @private 163 */ 164 function _getElementRoot (element) { 165 return _getParentWithClass(element, _selectors.container) 166 } 167 168 /** 169 * Close a select element. 170 * 171 * @param {HTMLElement|Element} element 172 * @private 173 */ 174 function _closeSelect(element) { 175 let selectElement = _getParentWithClass(element, _selectors.select), 176 root = _getElementRoot(element), 177 optionsContainer = selectElement.querySelector(_selectors.optionsContainer) 178 179 _addDomClass(optionsContainer, 'hidden') 180 root.setAttribute('data-open', '0') 181 } 182 183 /** 184 * @param {Event} event 185 * @private 186 */ 187 function _toggleSelect (event) { 188 let selectElement = _getParentWithClass(this, _selectors.select), 189 root = _getElementRoot(this), 190 optionsContainer = selectElement.querySelector(_selectors.optionsContainer), 191 closing = !optionsContainer.classList.contains('hidden'), 192 allSelectElements = document.querySelectorAll(_selectors.optionsContainer), 193 allSelectElementLength = allSelectElements.length 194 195 // if(selectElement.hasAttribute('data-disabled')){ 196 // return; 197 // } 198 199 for (let i = 0; i < allSelectElementLength; i += 1) { 200 _closeSelect(allSelectElements[i]) 201 } 202 203 if (!closing) { 204 _toggleDomClass(optionsContainer, 'hidden') 205 } 206 207 root.setAttribute('data-open', closing ? '0' : '1') 208 209 if (this.classList.contains('select-option')) { 210 _changeValue(this) 211 } 212 } 213 214 /** 215 * @param {HTMLElement} option 216 * @private 217 */ 218 function _changeValue(option) { 219 let root = _getElementRoot(option), 220 input = root.querySelector(_selectors.input), 221 labelElement = root.querySelector(_selectors.selectLabel), 222 value = option.getAttribute('data-value').trim(), 223 label = option.innerText.trim() 224 225 input.setAttribute('value', value) 226 labelElement.innerText = label 227 } 228 229 /** 230 * Initiate all event listeners. 231 * 232 * @private 233 */ 234 function _initEventListeners () { 235 let selects = document.querySelectorAll(_selectors.selectLabel), 236 options = document.querySelectorAll(_selectors.option), 237 selectLength = selects.length, 238 optionLength = options.length 239 240 for (let i = 0; i < selectLength; i += 1) { 241 selects[i].addEventListener('click', _toggleSelect) 242 } 243 244 for (let i = 0; i < optionLength; i += 1) { 245 options[i].addEventListener('click', _toggleSelect) 246 } 247 } 248 249 /** 250 * Initiate the custom select element. 251 */ 252 self.init = function () { 253 _initEventListeners() 254 } 255 256 /** 257 * @see _closeSelect 258 */ 259 self.closeSelect = _closeSelect 260 261})(customSelectElement) 262 263window.addEventListener('DOMContentLoaded', function () { 264 customSelectElement.init() 265}) 266 267/** 268 * SWE 269 */ 270var swe = ((typeof swe !== 'undefined') && (swe !== null)) ? swe : (function() { 271 272 // Private 273 var scroll, 274 mobileNav; 275 276 /** 277 * Detect breakpoint changes. 278 */ 279 let breakpoint = { 280 value: 'small', 281 refresh: function () { 282 let oldBreakpoint = this.value, 283 newBreakpoint = window.getComputedStyle(document.querySelector('body'), ':before').getPropertyValue('content').replace(/\"/g, ''); 284 285 this.value = newBreakpoint; 286 287 if (oldBreakpoint === newBreakpoint) return; 288 let details = { 289 value: newBreakpoint, 290 }, 291 event = new CustomEvent('breakpoint', { detail: details }); 292 293 document.dispatchEvent(event); 294 }, 295 }, 296 297 /** 298 * Holds all slider instances. 299 */ 300 sliderInstances = {}, 301 302 /** 303 * An object for all methods that need a timeout or something else just on the first execution. 304 */ 305 _initiated = {}, 306 307 /** 308 * An array of developing urls. 309 */ 310 _devUrls = [ 311 'prototyp.s-w-e.com', 312 'dedi1004', 313 ], 314 315 /** 316 * An object with mobile navigation settings. 317 */ 318 _mobileNavSettings = { 319 width: { 320 default: '100%', 321 small: '100%', 322 }, 323 } 324 325 326 // Public 327 return { 328 version: '1.8.12', 329 330 /** 331 * Set the mobile navigation settings. 332 * 333 * @param {string} type 334 * @param {string} breakpoint 335 * @param {string} value 336 */ 337 setMobileNavSettings: function (type, breakpoint, value) { 338 _mobileNavSettings[type][breakpoint] = value 339 }, 340 341 /** 342 * Get the mobile navigation settings. 343 * 344 * @return {object} 345 */ 346 getMobileNavSettings: function () { 347 return _mobileNavSettings 348 }, 349 350 /** 351 * Uses console.log when the url is like "prototyp.s-w-e.com" or "*.dedi1004.*". 352 */ 353 debug: function () { 354 for (let i = 0; i < _devUrls.length; i += 1) { 355 if (window.location.href.includes(_devUrls[i])) return; 356 } 357 358 // Wenn wir den IE nicht mehr unterstützen müssen, können wir auch "console.log(...arguments);" verwenden. 359 console.log.apply(this, arguments); 360 }, 361 362 /** 363 * Get the current breakpoint. 364 * 365 * @return {string} 366 */
367 getBreakpoint: function () { 368 return breakpoint.value; 369 }, 370 371 /** 372 * Get the breakpoint name of the current used device (e.g. 'desktop'). 373 */ 374 initBreakpoint: function () { 375 if (_initiated.hasOwnProperty('initBreakpoint')) return; 376 377 window.addEventListener('resize', function () { 378 breakpoint.refresh(); 379 }); 380 381 breakpoint.refresh(); 382 _initiated['initBreakpoint'] = true; 383 }, 384 385 /** 386 * Get all slider instances. 387 * 388 * @return {object} 389 */ 390 getSliders: function() { 391 return sliderInstances; 392 }, 393 394 /** 395 * Get a slider instance. 396 * 397 * @param {string} name The name of the slider. 398 * @return {null|Flickity} 399 */ 400 getSlider: function(name) { 401 return sliderInstances.hasOwnProperty(name) ? sliderInstances[name] : null; 402 }, 403 404 405 /** 406 * Merge options 407 */ 408 mergeOptions: function(customOptions, options) { 409 Object.keys(customOptions).forEach(function(key) { 410 options[key] = customOptions[key]; 411 }); 412 }, 413 414 415 /** 416 * Get cookie 417 */ 418 getCookie: function(name) { 419 let i, 420 c, 421 nameEQ = name + '=', 422 ca = document.cookie.split(';'); 423 424 for (i = 0; i < ca.length; i += 1) { 425 c = ca[i]; 426 427 while (c.charAt(0) === ' ') { 428 c = c.substring(1, c.length); 429 } 430 431 if (c.indexOf(nameEQ) === 0) { 432 return c.substring(nameEQ.length, c.length); 433 } 434 } 435 }, 436 437 438 /** 439 * Set / delete cookies 440 */
441 setCookie: function(name, value, days) { 442 let date = new Date(), 443 expires = '; expires=Thu, 01 Jan 1970 00:00:01 GMT'; 444 445 if (days) { 446 date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000)); 447 expires = '; expires=' + date.toGMTString(); 448 } 449 450 document.cookie = name + '=' + value + expires + '; path=/'; 451 }, 452 453 454 /** 455 * Responsive iframe 456 */ 457 responsiveIframe: function() { 458 if (document.querySelector('iframe') === null) return; 459 reframe('iframe'); 460 }, 461 462 463 /** 464 * Datetimepicker 465 * 466 * @ToDo: Soll das noch fertig gemacht werden oder ist es das schon?? 467 */ 468 datetimepicker: function(name, el, userDatetimepickerOptions) { 469 if (document.querySelector(el) === null) return; 470 // https://chmln.github.io/flatpickr/examples/ 471 let datetimepickerOptions = { 472 dateFormat: 'd.m.Y', 473 474 // Localization 475 locale: 'de', 476 }; 477 478 if (userDatetimepickerOptions) swe.mergeOptions(userDatetimepickerOptions, datetimepickerOptions); 479 480 name = flatpickr(el, datetimepickerOptions); 481 }, 482 483 484 /** 485 * Slider 486 */ 487 slider: function(name, el, customOptions) { 488 if (document.querySelector(el) === null) return; 489 // https://flickity.metafizzy.co/options.html 490 let options = { 491 accessibility: true, 492 adaptiveHeight: false, 493 autoPlay: false, 494 pauseAutoPlayOnHover: true, 495 cellAlign: 'left', 496 cellSelector: '.slide', 497 contain: true, 498 draggable: true, 499 freeScroll: false, 500 groupCells: true, 501 lazyLoad: false, 502 prevNextButtons: true, 503 pageDots: true, 504 wrapAround: true, 505 imagesLoaded: true, 506 }; 507 508 if (customOptions) swe.mergeOptions(customOptions, options); 509 510 /** 511 * Create slider 512 */ 513 let createSlider = function(sliderName, el) { 514 let nam = new Flickity(el, options); 515 516 // If Slider has video inside 517 if (document.querySelector(el + ' video') !== null) { 518 nam.on('select', function() { 519 let videos = this.element.querySelectorAll('video'); 520 521 if (videos.length) { 522 let video = this.element.querySelector('.is-selected video'); 523 524 if (this.element.querySelector('.is-selected video') !== null) { 525 video.play(); 526 } else { 527 [].forEach.call(videos, function(video) { 528 video.pause(); 529 }); 530 } 531 } 532 }); 533 } 534 535 536 // Content slider 537 if (document.querySelector(el).classList.contains('slider--content')) { 538 539 } 540 541// Carousel Slider Bilder 542 if (document.querySelector(el).classList.contains('carousel-main')) { 543 544 } 545 546// Carousel Slider Text 547 if (document.querySelector(el).classList.contains('carousel-nav')) { 548 549 } 550 551 552 // If Slider is full width 553 if (document.querySelector(el).classList.contains('slider--full-width')) { 554 let topOfSlider, 555 556 sliderScroll, 557 sliderResize, 558 sliderTimerScroll, 559 sliderTimerResize, 560 561 slider, 562 slides; 563 564 565 let resize = function(slider, slides) { 566 //console.log(window.pageYOffset); 567 568 // TODO 569 // Ohne Timeout beim hochscrollen keine korrekte Höhe. 570 // Problem mit Scroll-Event der fixedNav-Funktion? 571 if (window.pageYOffset !== 0) return; 572 setTimeout(function() { 573 topOfSlider = slider.element.offsetTop; 574 575 for (let i = 0; i < slides.length; i += 1) { 576 let slide = slides[i] 577 578 slide.style.height = (window.innerHeight - topOfSlider) + 'px'; 579 } 580 581 //console.log('window.innerHeight: ', window.innerHeight); 582 //console.log('topOfSlider: ', topOfSlider); 583 //console.log('result: ', window.innerHeight - topOfSlider); 584 585 slider.resize(); 586 }, 500); 587 }; 588 589 590 slider = nam; 591 slides = slider.element.querySelectorAll('.slide'); 592 593 resize(slider, slides); 594 595 sliderScroll = window; 596 sliderResize = window; 597 598 sliderScroll.addEventListener('scroll', function() { 599 cancelAnimationFrame(sliderTimerScroll); 600 sliderTimerScroll = requestAnimationFrame(function() { 601 resize(slider, slides); 602 }); 603 }); 604 605 sliderResize.addEventListener('resize', function() { 606 cancelAnimationFrame(sliderTimerResize); 607 sliderTimerResize = requestAnimationFrame(function() { 608 resize(slider, slides); 609 }); 610 }); 611 } 612 613 nam.resize(); 614 let sliderIndex = sliderName.substr(('slider-' + name).length), 615 instanceName = name + '-' + sliderIndex; 616 sliderInstances[instanceName] = nam; 617 }; 618 619 620 /** 621 * Init 622 */ 623 let sliders = document.querySelectorAll(el); 624 625 for (let i = 0; i < sliders.length; i += 1) { 626 let slider = sliders[i];
627 628 slider.setAttribute('data-' + name, 'slider-' + i); 629 createSlider('slider-' + name + i, '[data-' + name + '="slider-' + i + '"]'); 630 } 631 }, 632 633 634 /** 635 * Check form 636 */ 637 checkForm: function(btn, form) { 638 if (document.querySelector(form) === null || document.querySelector(btn) === null) return; 639 let endInputs = document.querySelectorAll('input[data-val]'), 640 endSelects = document.querySelectorAll('select[data-val]'), 641 endTextareas = document.querySelectorAll('textarea[data-val]'); 642 643 let check = function() { 644 let next = true; 645 646 if (!document.getElementById('herr').checked && !document.getElementById('frau').checked) { 647 alert('Bitte Anrede auswählen'); 648 next = false; 649 } 650 651 for (let i = 0; i < endInputs.length; i += 1) { 652 let ei = endInputs[i]; 653 654 if (ei.value.length === 0) { 655 alert(ei.getAttribute('data-val')); 656 next = false; 657 } 658 659 if (ei.value.length <= 0 || ei.type !== 'email') continue; 660 661 let patt = new RegExp('@'); 662 663 if (ei.value.length < 3) { 664 alert('E-Mail-Adresse ist zu kurz'); 665 next = false; 666 continue; 667 } 668 669 if (ei.value.length >= 3 && !patt.test(ei.value)) { 670 alert('Es fehlt ein @ in der E-Mail-Adresse'); 671 next = false; 672 continue; 673 } 674 675 if (ei.value.length >= 3 && ei.value.indexOf('.', ei.value.indexOf('@')) === -1) { 676 alert('Nach dem @ der E-Mail-Adresse muss ein Punkt folgen'); 677 next = false; 678 } 679 } 680 681 for (let i = 0; i < endSelects.length; i += 1) { 682 let select = endSelects[i] 683 if (select.selectedIndex !== 0) continue; 684 alert(select.getAttribute('data-val')); 685 next = false; 686 } 687 688 for (let i = 0; i < endTextareas.length; i += 1) { 689 let textarea = endTextareas[i] 690 if (textarea.selectedIndex !== 0) continue; 691 alert(textarea.getAttribute('data-val')); 692 next = false; 693 } 694 695 return next; 696 }; 697 698 let checkButton = document.querySelector(btn); 699 700 checkButton.addEventListener('click', function() { 701 check(); 702 }); 703 }, 704 705 /** 706 * Navigation (Mobile) 707 * 708 * @param {string} el 709 * @param {object} options 710 */ 711 mobileNav: function (el, options) { 712 if (document.querySelector(el) === null) return 713 714 let paddingHeight = document.querySelector('.nav-container').offsetHeight 715 document.querySelector(el).style.paddingTop = (paddingHeight + (paddingHeight / 2)) + 'px' 716 717 mobileNav = offside(el, options) 718 let ebene = 0 719 720 // ... 721 let navEl = document.querySelectorAll(el + ' li') 722 for (let i = 0; i < navEl.length; i += 1) { 723 let element = navEl[i] 724 if (!element.classList.contains('dropdown')) continue 725 element.insertAdjacentHTML('beforeend', '<span class="open-sesam__trigger"><i class="fa fa-angle-right" aria-hidden="true"></i></span>') 726 } 727 728 let navSubEl = document.querySelectorAll(el + ' li ul') 729 for (let i = 0; i < navSubEl.length; i += 1) { 730 let element = navSubEl[i], 731 caption = element.parentNode.querySelector('a').textContent 732 element.insertAdjacentHTML('afterbegin', '<li class="close-sesam"><span><i class="fa fa-angle-left" aria-hidden="true"></i> ' + caption + ' </span></li>') 733 } 734 735 let navSpanEl = document.querySelectorAll(el + ' span.open-sesam__trigger') 736 for (let i = 0; i < navSpanEl.length; i += 1) { 737 let element = navSpanEl[i] 738 739 element.addEventListener('click', function (event) { 740 let left = _mobileNavSettings.width[swe.getBreakpoint()] || _mobileNavSettings.width.default 741 742 if (ebene === 0) { 743 element.parentNode.parentNode.style.left = '-' + left 744 } else { 745 element.parentNode.parentNode.style.left = '0' 746 } 747 748 element.parentNode.querySelector('ul').style.left = left 749 element.parentNode.querySelector('ul').style.display = 'block' 750 ebene += 1 751 752 event.preventDefault() 753 }) 754 } 755 756 let navAEl = document.querySelectorAll(el + ' .dropdown > a') 757 for (let i = 0; i < navAEl.length; i += 1) { 758 let element = navAEl[i] 759 760 element.addEventListener('click', function (event) { 761 if (ebene < 0) ebene = 0 762
763 let left = _mobileNavSettings.width[swe.getBreakpoint()] || _mobileNavSettings.width.default 764 765 if (ebene === 0) { 766 element.parentNode.parentNode.style.left = '-' + left 767 } else { 768 element.parentNode.parentNode.style.left = '0' 769 } 770 771 element.parentNode.querySelector('ul').style.left = left 772 element.parentNode.querySelector('ul').style.display = 'block' 773 ebene += 1 774 775 event.preventDefault() 776 }) 777 } 778 779 let navCloseEl = document.querySelectorAll(el + ' .close-sesam') 780 for (let i = 0; i < navCloseEl.length; i += 1) { 781 let element = navCloseEl[i] 782 783 element.addEventListener('click', function (event) { 784 ebene -= 1 785 let left = _mobileNavSettings.width[swe.getBreakpoint()] || _mobileNavSettings.width.default 786 787 if (ebene < 0) ebene = 0 788 element.parentNode.style.left = '0' 789 element.parentNode.style.display = 'none' 790 791 if (ebene === 0) { 792 element.parentNode.parentNode.parentNode.parentNode.querySelector('ul').style.left = '0' 793 } else { 794 element.parentNode.parentNode.parentNode.parentNode.querySelector('ul').style.left = left 795 } 796 797 event.preventDefault() 798 }) 799 } 800 801 document.querySelector(el).style.display = 'block' 802 803 // Hier wird die aktuelle Ebene geladen, sodass bei einer Unterseite das Menü in der richtigen Ebene geöffnet wird. 804 let activeEbene = 0, 805 activeElements = document.querySelectorAll(el + ' .active') 806 807 if (activeElements.length > 1) { 808 activeEbene = activeElements.length - 1 809 810 let navSpanEl = document.querySelectorAll(el + ' span.open-sesam__trigger') 811 for (let i = 0; i < navSpanEl.length; i += 1) { 812 let element = navSpanEl[i], 813 left = _mobileNavSettings.width[swe.getBreakpoint()] || _mobileNavSettings.width.default 814 815 if (!element.parentElement.classList.contains('active')) continue 816 817 if (activeEbene === 0) { 818 element.parentNode.parentNode.style.left = '0' 819 } else { 820 element.parentNode.parentNode.style.left = '-' + left 821 } 822 823 element.parentNode.querySelector('ul').style.left = left 824 element.parentNode.querySelector('ul').style.display = 'block' 825 } 826 } 827 }, 828 829 830 /** 831 * Navigation (Mobile) 832 */ 833 oldMobileNav: function(el, options) { 834 if (document.querySelector(el) === null) return; 835 document.querySelector(el).style.display = 'block'; 836 837 let paddingHeight = document.querySelector('.nav-container').offsetHeight; 838 839 document.querySelector(el).style.paddingTop = (paddingHeight + (paddingHeight / 2)) + 'px'; 840 841 mobileNav = offside(el, options); 842 let ebene = 0, 843 844 navEl = document.querySelectorAll(el + ' li'); 845 for (let i = 0; i < navEl.length; i += 1) { 846 let el = navEl[i] 847 if (!el.classList.contains('dropdown')) continue; 848 el.insertAdjacentHTML('beforeend', '<span class="open-sesam__trigger"><i class="fa fa-angle-right" aria-hidden="true"></i></span>'); 849 } 850 851 let navSubEl = document.querySelectorAll(el + " li ul"); 852 for (let i = 0; i < navSubEl.length; i += 1) { 853 let el = navSubEl[i], 854 caption = el.parentNode.querySelector("a").textContent; 855 el.insertAdjacentHTML('afterbegin', '<li class="close-sesam"><span><i class="fa fa-angle-left" aria-hidden="true"></i> ' + caption + '</span></li>'); 856 } 857 858 let navSpanEl = document.querySelectorAll(el + ' span.open-sesam__trigger'); 859 for (let i = 0; i < navSpanEl.length; i += 1) { 860 let el = navSpanEl[i], 861 spanElSizing = function (size) { 862 let currentSize = size || swe.getBreakpoint(), 863 left = '-17em' 864 865 if (ebene !== 0) left = '0' 866 867 el.parentNode.parentNode.style.left = left; 868 el.parentNode.querySelector('ul').style.left = '17em'; 869 el.parentNode.querySelector('ul').style.display = 'block'; 870 } 871 872 el.addEventListener('click', function () { 873 spanElSizing() 874 ebene += 1; 875 }) 876 877 document.addEventListener('breakpoint', function (event) { 878 spanElSizing(event.detail.value) 879 }) 880 } 881 882 let navCloseEl = document.querySelectorAll(el + ' .close-sesam'); 883 for (let i = 0; i < navCloseEl.length; i += 1) { 884 let el = navCloseEl[i], 885 closeElSizing = function (size) {
886 let currentSize = size || swe.getBreakpoint(), 887 left = '17em' 888 889 if (ebene !== 0) left = '0' 890 891 el.parentNode.style.left = '0'; 892 el.parentNode.style.display = 'none'; 893 894 el.parentNode.parentNode.parentNode.parentNode.querySelector('ul').style.left = left; 895 } 896 897 el.addEventListener('click', function() { 898 ebene -= 1; 899 closeElSizing() 900 }) 901 902 document.addEventListener('breakpoint', function (event) { 903 closeElSizing(event.detail.value) 904 }) 905 } 906 907 /** 908 * TODO: Ist das Kunst oder kann das weg? 909 var navCloseButton = document.querySelectorAll(el + ' .close-nav'); 910 [].forEach.call(navCloseButton, function(el, i) { 911 el.addEventListener('click', function() { 912 mobileNav.close(); 913 }); 914 }); 915 */ 916 }, 917 918 919 /** 920 * Anker navigation 921 */ 922 ankerNav: function() { 923 if (document.querySelector('.dce-anker') === null) return; 924 let ankerNav = document.querySelector('nav.anker ul'), 925 ankerEls = document.querySelectorAll('.dce-anker'), 926 ankerOuter = [], 927 ankerInner = []; 928 929 for (let i = 0; i < ankerEls.length; i += 1) { 930 let ankerEl = ankerEls[i] 931 ankerOuter[i] = document.createElement('li'); 932 ankerInner[i] = document.createElement('a'); 933 934 ankerInner[i].classList.add('scroll'); 935 ankerInner[i].setAttribute('href', window.location.href + '#' + ankerEl.id); 936 ankerInner[i].textContent = ankerEl.getAttribute('data-title'); 937 938 ankerOuter[i].appendChild(ankerInner[i]); 939 ankerNav.appendChild(ankerOuter[i]); 940 } 941 }, 942 943 944 /** 945 * Smooth scroll 946 */ 947 smoothScroll: function(nav) { 948 scroll = new SmoothScroll('a[href*="#"]', { 949 ignore: '[data-scroll-ignore]', // Selector for links to ignore (must be a valid CSS selector) 950 header: nav, // Selector for fixed headers (must be a valid CSS selector) 951 topOnEmptyHash: true, // Scroll to the top of the page for links with href="#" 952 speed: 500, // Integer. How fast to complete the scroll in milliseconds 953 offset: 0, // Integer or Function returning an integer. How far to offset the scrolling anchor location in pixels 954 easing: 'easeInOutCubic', // Easing pattern to use 955 956 // History 957 updateURL: false, // Update the URL on scroll 958 popstate: true, // Animate scrolling with the forward/backward browser buttons (requires updateURL to be true) 959 960 // Custom Events 961 emitEvents: true // Emit custom events 962 }); 963 964 let logScrollStart = function () { 965 mobileNav.close(); 966 }; 967 968 let logScrollStop = function (event) { 969 //console.log('scroll: ' + event.detail.anchor.id); 970 if (!event.detail.anchor || !event.detail.anchor.id) return; 971 let anchor = document.querySelector('#' + event.detail.anchor.id); // Get the anchor 972 973 if (!anchor.classList.contains('accordion') && anchor.querySelector('.accordion') === null) return; 974 anchor.querySelector(".accordion__content").style.display = "block"; 975 anchor.querySelector(".accordion__title").classList.add("accopen"); 976 anchor.querySelector(".accordion__title").classList.remove("accclose"); 977 }; 978 979 document.addEventListener('scrollStop', logScrollStop, false); 980 document.addEventListener('scrollStart', logScrollStart, false); 981 982 983 // # From another page 984 if (window.location.hash) { 985 // Check if all images loaded 986 imagesLoaded('.wrapper', function(imagesLoaded) { 987 let anchor = document.querySelector(window.location.hash); // Get the anchor 988 989 scroll.animateScroll(anchor); 990 991 //console.log('new'); 992 993 if (!anchor.classList.contains('accordion') && anchor.querySelector('.accordion') === null) return; 994 anchor.querySelector(".accordion__content").style.display = "block"; 995 anchor.querySelector(".accordion__title").classList.add("accopen"); 996 anchor.querySelector(".accordion__title").classList.remove("accclose"); 997 }); 998 } 999 }, 1000 1001 1002 /** 1003 * Google Analytics 1004 */ 1005 googleAnalytics: function(id) { 1006 if (id !== 'UA-00000000-0') { 1007 window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments);};ga.l=+new Date(); 1008 1009 ga('create', id, 'auto'); 1010 ga('set', 'anonymizeIp', true); 1011 ga('send', 'pageview'); 1012 1013 var gaProperty = id, 1014 disableStr = 'ga-disable-' + gaProperty; 1015 1016 if (document.cookie.indexOf(disableStr + '=true') > -1) { 1017 window[disableStr] = true; 1018 } 1019 1020 function gaOptout() { 1021 document.cookie = disableStr + '=true; expires=Thu, 31 Dec 2099 23:59:59 UTC; path=/'; 1022 window[disableStr] = true; 1023 } 1024 1025 var script = document.createElement('script'); 1026 script.src = 'https://google-analytics.com/analytics.js'; 1027 document.body.appendChild(script); 1028 1029 if (document.getElementById('GAOptOut') !== null) { 1030 var el = document.getElementById('GAOptOut'); 1031 1032 el.addEventListener('click', function() { 1033 if(window[disableStr] !== true){ 1034 gaOptout(); 1035 var stand = el.innerHTML; 1036 el.innerHTML = stand + ' <span id="GAOptOutFeedback" style="color:#FF0000"> (Opt-Out-Cookie ist für ' + window.location.origin + ' gesetzt)</span>'; 1037 } 1038 }); 1039 1040 if (document.cookie.indexOf(disableStr + '=true') > -1) { 1041 var stand = el.innerHTML; 1042 el.innerHTML = stand + ' <span id="GAOptOutFeedback" style="color:#FF0000"> (Opt-Out-Cookie ist für ' + window.location.origin + ' gesetzt)</span>'; 1043 } 1044 } 1045 1046 // Tracking for PDF-Links 1047 /* 1048 [].filter.call(document.querySelectorAll('a'), function(a) { 1049 if (a.href.match('\\.pdf$')) { 1050 1051 if (googleAnalyticsID != 'UA-00000000-0') { 1052 a.setAttribute('onclick', "ga('send', 'event', 'PDF', 'Download', '" + a.getAttribute("href").substring(a.getAttribute("href").lastIndexOf("/")+1) + " - PDF Download')"); 1053 } 1054 } 1055 }); 1056 */ 1057 } 1058 }, 1059 1060 /** 1061 * HubSpot 1062 */ 1063 hubSpot: function() { 1064 let script = document.createElement('script'); 1065 script.id = "hs-script-loader" 1066 script.src = 'https://js.hs-scripts.com/9176951.js'; 1067 script.async = true 1068 document.body.appendChild(script); 1069 }, 1070 1071 /** 1072 * Matomo 1073 */ 1074 matomo: function(baseUrl, matomoSiteID) { 1075 if (baseUrl !== 'https://www.domain.de/matomo/') { 1076 var _paq = _paq || []; 1077 _paq.push(["trackPageView"]);
1078 _paq.push(["enableLinkTracking"]); 1079 1080 var u=baseUrl; 1081 _paq.push(["setTrackerUrl", u+"piwik.php"]); 1082 _paq.push(["setSiteId", matomoSiteID]); 1083 1084 var d=document, g=d.createElement("script"), s=d.getElementsByTagName("script")[0]; g.type="text/javascript"; 1085 g.defer=true; g.async=true; g.src=u+"piwik.js"; s.parentNode.insertBefore(g,s); 1086 } 1087 }, 1088 1089 1090 /** 1091 * Load iframes 1092 */ 1093 loadIframes: function() { 1094 if (document.querySelector('.load-iframe') === null) return; 1095 let tmps = document.querySelectorAll('.load-iframe'); 1096 1097 for (let i = 0; i < tmps.length; i += 1) { 1098 let tmp = tmps[i], 1099 iframe = document.createElement('iframe'); 1100 1101 iframe.src = tmp.getAttribute('data-src'); 1102 tmp.appendChild(iframe); 1103 1104 tmp.classList.add('privacy-policy-accepted'); 1105 } 1106 }, 1107 1108 1109 /** 1110 * Google maps 1111 */ 1112 loadMap: function(key) { 1113 if (document.querySelector('.google-maps') === null) return; 1114 if (key === '') return; 1115 let script = document.createElement('script'); 1116 1117 script.type = 'text/javascript'; 1118 document.getElementsByTagName('body')[0].appendChild(script); 1119 script.src = 'https://maps.googleapis.com/maps/api/js?key='+key+'&language=de®ion=de&callback=swe.setMap'; 1120 }, 1121 1122 /** 1123 * Set the map. 1124 */ 1125 setMap: function() { 1126 var map, 1127 marker = []; 1128 1129 1130 var googleMapsEl = document.querySelector('.google-maps'), 1131 Lat = parseFloat(googleMapsEl.getAttribute('data-lat-center')), 1132 Lng = parseFloat(googleMapsEl.getAttribute('data-lng-center')), 1133 customControl = googleMapsEl.getAttribute('data-customControl'), 1134 zoom = parseInt(googleMapsEl.getAttribute('data-zoom')) || 17; 1135 1136 1137 googleMapsEl.classList.add('privacy-policy-accepted'); 1138 1139 1140 var data = []; 1141 var newData = {}; 1142 1143 1144 var elements = document.querySelectorAll('.google-maps-data'); 1145 1146 [].forEach.call(elements, function(element) { 1147 if (element.getAttribute('data-iconImage') == '') { 1148 newData = { 1149 infoWindow: element.getAttribute('data-infoWindow'), 1150 title: element.getAttribute('data-title'), 1151 lat: parseFloat(element.getAttribute('data-lat')), 1152 lng: parseFloat(element.getAttribute('data-lng')), 1153 icon: { 1154 path: 'M0-48c-9.8 0-17.7 7.8-17.7 17.4 0 15.5 17.7 30.6 17.7 30.6s17.7-15.4 17.7-30.6c0-9.6-7.9-17.4-17.7-17.4z', 1155 fillColor: element.getAttribute('data-iconColor') || '#111', 1156 fillOpacity: 1, 1157 strokeColor: '', 1158 strokeWeight: 0 1159 }, 1160 description: element.querySelector('.des').innerHTML, 1161 }; 1162 } else { 1163 newData = { 1164 infoWindow: element.getAttribute('data-infoWindow'), 1165 title: element.getAttribute('data-title'), 1166 lat: parseFloat(element.getAttribute('data-lat')), 1167 lng: parseFloat(element.getAttribute('data-lng')), 1168 icon: element.getAttribute('data-iconImage'), 1169 description: element.querySelector('.des').innerHTML, 1170 }; 1171 } 1172 1173 data.push(newData); 1174 }); 1175 1176 1177 var infoWindows = []; 1178 var options = { 1179 zoom: zoom, 1180 minZoom: 3, 1181 disableDefaultUI: true, 1182 scrollwheel: false, 1183 gestureHandling: 'cooperative', 1184 //draggable: window.innerWidth > 1024 ? true : false, 1185 styles: [ 1186 { 1187 'featureType': 'all', 1188 'elementType': 'all', 1189 'stylers': [ 1190 { 1191 'saturation': '-100' 1192 }, 1193 { 1194 'gamma': '1.50' 1195 } 1196 ] 1197 } 1198 ], 1199 mapTypeId: 'roadmap', 1200 center: {lat: Lat, lng: Lng} 1201 }; 1202 1203 map = new google.maps.Map(googleMapsEl, options); 1204 1205 1206 Object.keys(data).forEach(function(i) { 1207 marker[i] = new google.maps.Marker({ 1208 position: new google.maps.LatLng( data[i].lat, data[i].lng ), 1209 icon: data[i].icon, 1210 optimized: false, 1211 map: map, 1212 title: data[i].title 1213 }); 1214 1215 var infowindow = new google.maps.InfoWindow({ 1216 content: data[i].description 1217 }); 1218 1219 infoWindows.push(infowindow); 1220 1221 1222 marker[i].addListener('click', function() { 1223 if (infowindow) { 1224 for (var x = 0; x < infoWindows.length; x++) { 1225 infoWindows[x].close(); 1226 } 1227 } 1228 infoWindows[i].open(map, marker[i]); 1229 }); 1230 1231 if (data[i].infoWindow == 1) { 1232 infoWindows[i].open(map, marker[i]); 1233 } 1234 }); 1235 1236 1237 // Custom zoom control 1238 if (customControl == 1) { 1239 var zoomControlDiv = document.createElement('div'), 1240 controlUIzoomIn = document.createElement('div'), 1241 controlUIzoomOut = document.createElement('div'), 1242 zoomControl = new CustomZoomControl(zoomControlDiv, map); 1243 1244 function CustomZoomControl (controlDiv, map) { 1245 if (controlUIzoomIn.classList && controlUIzoomOut.classList) { 1246 controlUIzoomIn.classList.add('zoom-in'); 1247 controlUIzoomOut.classList.add('zoom-out'); 1248 } 1249 1250 controlUIzoomIn.innerHTML = '<i class="fa fa-plus"></i>'; 1251 controlUIzoomOut.innerHTML = '<i class="fa fa-minus"></i>'; 1252 1253 controlDiv.appendChild(controlUIzoomIn); 1254 controlDiv.appendChild(controlUIzoomOut); 1255 1256 google.maps.event.addDomListener(controlUIzoomIn, 'click', function() { 1257 map.setZoom(map.getZoom()+1); 1258 }); 1259 1260 google.maps.event.addDomListener(controlUIzoomOut, 'click', function() { 1261 map.setZoom(map.getZoom()-1); 1262 }); 1263 }; 1264 1265 map.controls[google.maps.ControlPosition.RIGHT_BOTTOM].push(zoomControlDiv); 1266 } 1267 1268 1269 google.maps.event.addDomListener(window, 'resize', function() { 1270 var center = map.getCenter(); 1271 google.maps.event.trigger(map, 'resize'); 1272 map.setCenter(center); 1273 map.set('draggable', window.innerWidth > 1024); 1274 }); 1275 }, 1276 1277 1278 /** 1279 * Images loaded 1280 */ 1281 imagesLoaded: function(el, func) { 1282 if (document.querySelector(el) === null) return; 1283 imagesLoaded(document.querySelector(el), func); 1284 }, 1285 1286 1287 /** 1288 * Counter 1289 */ 1290 counter: function(animation) { 1291 if (document.querySelector(".counter") === null) return; 1292 let counterEls = document.querySelectorAll(".counter"), 1293 counter = [], 1294 options; 1295 1296 // set 1 second timeout for having all fonts loaded 1297 setTimeout(function () { 1298 for (let i = 0; i < counterEls.length; i += 1) { 1299 let counterEl = counterEls[i] 1300 counterEl.setAttribute("id", "count" + i); 1301 1302 options = { 1303 useEasing: true, 1304 useGrouping: true, 1305 separator: '.',
1306 decimal: ',', 1307 }; 1308 1309 counter[i] = new CountUp(counterEl.querySelector(".counter__num"), counterEl.getAttribute("data-start"), counterEl.getAttribute("data-end"), 0, 2.5, options); 1310 1311 if (counterEl.querySelector(".counter__info") !== null) { 1312 tippy(counterEl.querySelector(".counter__info")); 1313 } 1314 1315 inView("#count" + i).on("enter", function() { 1316 if (counter[i].error) { 1317 console.error(counter[i].error); 1318 return; 1319 } 1320 1321 if (animation) { 1322 counterEl.querySelector(".counter__num").classList.add("animated"); 1323 counterEl.querySelector(".counter__num").classList.add("bounceIn"); 1324 } 1325 1326 counter[i].start(); 1327 }); 1328 } 1329 }, 1000); 1330 }, 1331 1332 1333 /** 1334 * Accordion 1335 */ 1336 accordion: function() { 1337 if (document.querySelector('.accordion') === null) return; 1338 let elements = document.querySelectorAll('.accordion'); 1339 1340 for (let i = 0; i < elements.length; i += 1) { 1341 let element = elements[i] 1342 1343 if (element.querySelector('.accordion__title').classList.contains('accclose')) { 1344 element.querySelector('.accordion__content').style.display = 'none'; 1345 } 1346 1347 element.querySelector('.accordion__title').addEventListener('click', function() { 1348 let temps = document.querySelectorAll('.accopen'); 1349 1350 if (element.querySelector('.accordion__title').classList.contains('accopen')) { 1351 for (let j = 0; j < temps.length; j += 1) { 1352 let temp = temps[j] 1353 temp.parentNode.querySelector('.accordion__content').style.display = 'none'; 1354 temp.classList.remove('accopen'); 1355 temp.classList.add('accclose'); 1356 } 1357 1358 return; 1359 } 1360 1361 for (let j = 0; j < temps.length; j += 1) { 1362 let temp = temps[j] 1363 temp.parentNode.querySelector('.accordion__content').style.display = 'none'; 1364 temp.classList.remove('accopen'); 1365 temp.classList.add('accclose'); 1366 } 1367 1368 element.querySelector('.accordion__content').style.display = 'block'; 1369 element.querySelector('.accordion__title').classList.add('accopen'); 1370 element.querySelector('.accordion__title').classList.remove('accclose'); 1371 1372 for (let sliderName in sliderInstances) { 1373 if (!sliderInstances.hasOwnProperty(sliderName)) continue; 1374 sliderInstances[sliderName].resize(); 1375 } 1376 }); 1377 } 1378 }, 1379 1380 1381 /** 1382 * Up! 1383 */ 1384 up: function(id, el) { 1385 if (document.querySelector(el) === null) return; 1386 let rafTimer, 1387 upScroll = window, 1388 upLink = document.querySelector(el), 1389 anchor = document.querySelector(id); 1390 1391 upLink.addEventListener('click', function(event) { 1392 scroll.animateScroll(anchor); 1393 1394 event.preventDefault(); 1395 }); 1396 1397 let toggleUp = function() { 1398 if (window.pageYOffset > window.innerHeight / 2 && window.innerWidth > 1024) { 1399 upLink.style.display = 'block'; 1400 return; 1401 } 1402 1403 upLink.style.display = 'none'; 1404 }; 1405 1406 1407 upScroll.addEventListener('scroll', function(event) { 1408 cancelAnimationFrame(rafTimer); 1409 rafTimer = requestAnimationFrame(toggleUp); 1410 }); 1411 1412 toggleUp(); 1413 }, 1414 1415 1416 /** 1417 * Fixed nav 1418 */ 1419 fixedNav: function() { 1420 if (document.querySelector('nav.desktop') === null) return; 1421 let sfn, 1422 sfnScroll = window, 1423 sfnTimer, 1424 content = document.querySelector('.content'), 1425 nav = document.querySelector('.fixed-nav'), 1426 topOfNav = nav.offsetTop; 1427 1428 sfn = function() { 1429 if (window.pageYOffset > topOfNav) { 1430 document.body.classList.add('nav-fixed'); 1431 content.style.paddingTop = nav.offsetHeight + 'px'; 1432 return; 1433 } 1434 1435 document.body.classList.remove('nav-fixed'); 1436 content.style.paddingTop = 0; 1437 }; 1438 1439 1440 if (document.querySelector('.big-header') !== null) return; 1441 1442 imagesLoaded(nav, function() { 1443 if (window.pageYOffset > topOfNav) { 1444 document.body.classList.add('nav-fixed');
1445 content.style.paddingTop = nav.offsetHeight + 'px'; 1446 return; 1447 } 1448 1449 document.body.classList.remove('nav-fixed'); 1450 content.style.paddingTop = 0; 1451 }); 1452 1453 sfnScroll.addEventListener('scroll', function(event) { 1454 cancelAnimationFrame(sfnTimer); 1455 sfnTimer = requestAnimationFrame(sfn); 1456 }); 1457 }, 1458 1459 /** 1460 * Same height 1461 */ 1462 sameHeight: function(el) { 1463 if (document.querySelector(el) === null) return; 1464 1465 let timer; 1466 1467 let resize = function () { 1468 let elements = document.querySelectorAll(el); 1469 1470 if (!elements || elements.length < 1) return; 1471 1472 let groups = {}; 1473 1474 // Get all same-height-groups and their max height. 1475 for (let i = 0; i < elements.length; i += 1) { 1476 elements[i].style.height = ''; 1477 1478 let name = elements[i].getAttribute('data-group-name'), 1479 boundingHeight = elements[i].getBoundingClientRect().height, 1480 group = { 1481 height: 0, 1482 elements: [], 1483 }; 1484 1485 name = name === null ? 'default' : name; 1486 1487 if (typeof groups[name] === 'undefined') groups[name] = group; 1488 1489 if (boundingHeight > groups[name].height) groups[name].height = boundingHeight; 1490 groups[name].elements.push(elements[i]); 1491 } 1492 1493 // Set max height for each group. 1494 for (let name in groups) { 1495 if (!groups.hasOwnProperty(name)) continue; 1496 1497 let elements = groups[name].elements, 1498 height = groups[name].height + 'px'; 1499 1500 // On small devices we use the automatic height. 1501 if (swe.getBreakpoint() === 'small') height = 'auto'; 1502 1503 for (let i = 0; i < elements.length; i += 1) { 1504 elements[i].style.height = height; 1505 } 1506 } 1507 }; 1508 1509 window.addEventListener('resize', function () { 1510 cancelAnimationFrame(timer); 1511 timer = requestAnimationFrame(resize); 1512 }); 1513 1514 if (!_initiated.hasOwnProperty('sameHeight')) { 1515 // set 1 second timeout for having all fonts loaded 1516 setTimeout(function () { 1517 resize(); 1518 _initiated['sameHeight'] = true; 1519 }, 1000); 1520 } else { 1521 resize(); 1522 } 1523 }, 1524 1525 1526 /** 1527 * Same width 1528 */ 1529 sameWidth: function(el) { 1530 if (document.querySelector(el) === null) return; 1531 let sW, 1532 sWTimer; 1533 1534 sW = function() { 1535 let elements = document.querySelectorAll(el), 1536 max_width = 0; 1537 1538 if (!elements || elements.length <= 0) return; 1539 let len = elements.length; 1540 1541 // get max width 1542 for (let i = 0; i < len; i += 1) { 1543 // reset width attr 1544 elements[i].style.width = ''; 1545 1546 // reset max-width attr 1547 elements[i].style.maxWidth = ''; 1548 1549 if (elements[i].getBoundingClientRect().width > max_width) { 1550 max_width = elements[i].getBoundingClientRect().width; 1551 } 1552 } 1553 1554 // set max width to all elements 1555 if (window.innerWidth > max_width) { 1556 for (let i = 0; i < len; i += 1) { 1557 elements[i].style.width = '100%'; 1558 elements[i].style.maxWidth = max_width + 'px'; 1559 } 1560 1561 return; 1562 } 1563 1564 for (let i = 0; i < len; i += 1) { 1565 elements[i].style.width = max_width + 'px'; 1566 } 1567 }; 1568 1569 document.querySelector(el).addEventListener('resize', function(event) { 1570 cancelAnimationFrame(sWTimer); 1571 sWTimer = requestAnimationFrame(sW); 1572 }); 1573 1574 if (!_initiated.hasOwnProperty('sameWidth')) { 1575 // set 1 second timeout for having all fonts loaded 1576 setTimeout(function () { 1577 sW(); 1578 _initiated['sameWidth'] = true; 1579 }, 1000); 1580 } else { 1581 sW(); 1582 } 1583 }, 1584 1585 }; 1586})(); 1587 1588 1589/** 1590 * Add '_blank' to PDF-Links 1591 */ 1592let links = document.querySelectorAll('a'); 1593for (let i = 0; i < links.length; i += 1) { 1594 let a = links[i] 1595 if (!a.hasAttribute('href')) continue; 1596 if (!a.getAttribute('href').match('\\.pdf$')) continue; 1597 a.setAttribute('target', '_blank'); 1598} 1599 1600 1601/** 1602 * Column slider 1603 */ 1604swe.slider('column', '.slider--column', { 1605 cellAlign: 'left', 1606 cellSelector: '[class*="flex__"]', 1607 groupCells: true,
1608 prevNextButtons: false, 1609 wrapAround: false, 1610 contain: true, 1611}); 1612 1613 1614/** 1615 * Touch 1616 */ 1617if ('ontouchstart' in window) { 1618 document.body.classList.add('touch'); 1619} 1620 1621 1622 1623/** 1624 * Parallax 1625 */ 1626if (document.querySelector('.jarallax') !== null) { 1627 jarallax(document.querySelectorAll('.jarallax'), { 1628 speed: 0.8, 1629 imgSize: 'cover' 1630 }); 1631} 1632 1633/** 1634 * Config 1635 */ 1636var googleAnalyticsID = 'UA-34931210-1', 1637 matomoBaseUrl = 'https://www.domain.de/matomo/', 1638 matomoSiteID = 1, 1639 googleMapsAPIKey = ''; 1640 1641/** 1642 * Initiates breakpoint detection. 1643 */ 1644swe.initBreakpoint(); 1645 1646/** 1647 * Do something if the breakpoint was changed. 1648 */ 1649document.addEventListener('breakpoint', function (e) { 1650 // Do something awesome ... 1651}); 1652 1653/** 1654 * Datetimepicker 1655 * @param {String} name - Just a name 1656 * @param {String} selector - ID 1657 * @param {Object} options - Optional options object 1658 */ 1659swe.datetimepicker('contactForm', '#date', { 1660 // Options ... 1661}); 1662 1663/** 1664 * Slider 1665 * @param {String} name - Just a name 1666 * @param {String} selector - Class 1667 * @param {Object} options - Optional options object 1668 */ 1669swe.slider('headerSlider', '.slider--header', { 1670 // Options ... 1671 pageDots: false, 1672}); 1673 1674swe.slider('contentSlider', '.slider--content', { 1675 // Options ... 1676 pageDots: false, 1677}); 1678 1679swe.slider('newsSlider', '.newsStartseiteSlider', { 1680 // Options ... 1681}); 1682 1683/* Slider für Bild im Header */ 1684swe.slider('carouselSlider', '.carousel-main', { 1685 accessibility: true, 1686 adaptiveHeight: false, 1687 autoPlay: 6000, 1688 pauseAutoPlayOnHover: false, 1689 cellAlign: 'left', 1690 cellSelector: '.carousel-cell', 1691 contain: true, 1692 draggable: false, 1693 freeScroll: false, 1694 groupCells: true, 1695 lazyLoad: false, 1696 prevNextButtons: true, 1697 pageDots: false, 1698 wrapAround: true, 1699 imagesLoaded: true, 1700}); 1701 1702/* Slider für Text im Header */ 1703swe.slider('carouselNav', '.carousel-nav', { 1704accessibility: true, 1705 adaptiveHeight: false, 1706 autoPlay: false, 1707 pauseAutoPlayOnHover: true, 1708 cellAlign: 'left', 1709 cellSelector: '.carousel-cell', 1710 contain: true, 1711 draggable: false, 1712 freeScroll: false, 1713 groupCells: true, 1714 lazyLoad: false, 1715 prevNextButtons: false, 1716 pageDots: false, 1717 wrapAround: true, 1718 imagesLoaded: true, 1719 asNavFor: ".carousel-main", 1720}); 1721 1722/* Header Slider 2025 */ 1723swe.slider('headerSlider2025', '.slider--header-2025', { 1724 // Options ... 1725 pageDots: true 1726}); 1727 1728/* Blog Slider */ 1729swe.slider('blogSlider', '.slider--blog', { 1730 // Options ... 1731 pageDots: true 1732}); 1733 1734/** 1735 * Form validation 1736 * @param {String} selector - ID of the submit button 1737 * @param {String} selector - ID of the form 1738 */ 1739swe.checkForm('#demoCheck', '#kontakt-form'); 1740 1741/** 1742 * Move Mobile Lang 1743 */ 1744(function MoveMobileLang() { 1745 let langMenu = document.querySelector('.menu-lang') 1746 let mobileMenu = document.querySelector('.mobile') 1747 1748 if (langMenu && mobileMenu) { 1749 let dropdown = langMenu.querySelector('.dropdown') 1750 dropdown.classList.add('lang-menu-mobile') 1751 1752 if (dropdown) { 1753 let target = mobileMenu.querySelector('.menu-outer') 1754 let secondMenu = mobileMenu.querySelector('.second-menu') 1755 target.firstElementChild.insertBefore(dropdown, secondMenu) 1756 langMenu.remove() 1757 } 1758 } 1759})(); 1760 1761/** 1762 * Mobile navigation 1763 * @param {String} selector - Class 1764 * @param {Object} options - Optional options object 1765 */ 1766swe.mobileNav('.mobile', { 1767 buttonsSelector: 'nav.desktop button.open-nav', 1768 slidingSide: 'right', 1769}); 1770 1771/** 1772 * Tobii 1773 * @param {Object} options - Optional options object 1774 * @see https://github.com/rqrauhvmra/Tobi/blob/v1.9.0/README.md 1775 */ 1776var tobi = Tobii({ 1777 navText: ['‹', '›'], 1778 closeText: '×', 1779 zoomText: '<i class="fa fa-expand" aria-hidden="true"></i>', 1780}); 1781 1782swe.ankerNav(); 1783swe.smoothScroll('.nav-container'); 1784swe.accordion(); 1785swe.counter('bounceIn'); 1786swe.up('#top', '.top'); 1787swe.fixedNav(); 1788 1789swe.sameHeight('.equal-height'); 1790swe.sameWidth('.equal-width'); 1791 1792/* 1793 * Datenschutzhinweis 1794 */ 1795if (document.querySelector(".dce-privacy") !== null) { 1796 let privacyContainer = document.querySelector(".dce-privacy"), 1797 noteTriggerAllCookies = document.querySelector(".note button.allcookies"), 1798 noteTriggerSaveCookies = document.querySelector(".note button.savecookies"), 1799 noteTriggerEditCookies = document.querySelector(".editCookies"), 1800 noteContainer = document.querySelector(".note"),
1801 checkboxElements = noteContainer.querySelectorAll("input"), 1802 infoButtons = noteContainer.querySelectorAll(".privacy-info"), 1803 bodyContainer = document.querySelector("body"); 1804 1805 [].forEach.call(infoButtons, function(button) { 1806 button.addEventListener("click", function () { 1807 if (this.classList.contains("open")) { 1808 this.classList.remove("open"); 1809 } else { 1810 this.classList.add("open"); 1811 } 1812 }); 1813 1814 }); 1815 1816 if (noteTriggerEditCookies) { 1817 noteTriggerEditCookies.addEventListener("click", function () { 1818 let cookie = swe.getCookie('cookieBanner2019'); 1819 1820 if (cookie === 'Set') { 1821 [].forEach.call(checkboxElements, function(element) { 1822 switch (element.name) { 1823 case "googleanalytics": 1824 if (swe.getCookie('cookieGoogleanaltytics') === 'Set') { 1825 element.checked = true; 1826 } 1827 break; 1828 case "matomo": 1829 if (swe.getCookie('cookieMatomo') === 'Set') { 1830 element.checked = true; 1831 } 1832 break; 1833 case "googlemaps": 1834 if (swe.getCookie('cookieGooglemaps') === 'Set') { 1835 element.checked = true; 1836 } 1837 break; 1838 case "youtube": 1839 if (swe.getCookie('cookieYoutube') === 'Set') { 1840 element.checked = true; 1841 } 1842 break; 1843 case "hubspot": 1844 if (swe.getCookie('cookieHubspot') === 'Set') { 1845 element.checked = true; 1846 } 1847 break; 1848 default: 1849 console.log("Element "+element.name+ " unbekannt"); 1850 } 1851 }); 1852 privacyContainer.style.display = "block"; 1853 } else { 1854 privacyContainer.style.display = "block"; 1855 } 1856 }); 1857 } 1858 1859 noteTriggerAllCookies.addEventListener("click", function () { 1860 1861 [].forEach.call(checkboxElements, function(element) { 1862 switch (element.name) { 1863 case "googleanalytics": 1864 swe.setCookie('cookieGoogleanaltytics', 'Set', 365); 1865 swe.googleAnalytics(googleAnalyticsID); 1866 break; 1867 case "matomo": 1868 swe.setCookie('cookieMatomo', 'Set', 365); 1869 swe.matomo(matomoBaseUrl, matomoSiteID); 1870 break; 1871 case "googlemaps": 1872 swe.setCookie('cookieGooglemaps', 'Set', 365); 1873 swe.loadMap(googleMapsAPIKey); 1874 break; 1875 case "youtube": 1876 swe.setCookie('cookieYoutube', 'Set', 365); 1877 swe.loadIframes(); 1878 swe.responsiveIframe(); 1879 case "hubspot": 1880 swe.setCookie('cookieHubspot', 'Set', 365); 1881 swe.hubSpot(); 1882 break; 1883 default: 1884 console.log("Element "+element.name+ " unbekannt"); 1885 } 1886 }); 1887 1888 swe.setCookie('cookieBanner2019', 'Set', 365); 1889 privacyContainer.style.display = "none"; 1890 }); 1891 1892 noteTriggerSaveCookies.addEventListener("click", function () { 1893 [].forEach.call(checkboxElements, function(element) { 1894 if (element.checked) { 1895 switch (element.name) { 1896 case "googleanalytics": 1897 swe.setCookie('cookieGoogleanaltytics', 'Set', 365); 1898 swe.googleAnalytics(googleAnalyticsID); 1899 break; 1900 case "matomo": 1901 swe.setCookie('cookieMatomo', 'Set', 365); 1902 swe.matomo(matomoBaseUrl, matomoSiteID); 1903 break; 1904 case "googlemaps": 1905 swe.setCookie('cookieGooglemaps', 'Set', 365); 1906 swe.loadMap(googleMapsAPIKey); 1907 break; 1908 case "youtube": 1909 swe.setCookie('cookieYoutube', 'Set', 365); 1910 swe.loadIframes(); 1911 swe.responsiveIframe(); 1912 break; 1913 case "hubspot": 1914 swe.setCookie('cookieHubspot', 'Set', 365); 1915 swe.hubSpot(); 1916 break; 1917 default: 1918 console.log("Element "+element.name+ " unbekannt"); 1919 } 1920 } else { 1921 switch (element.name) { 1922 case "googleanalytics": 1923 swe.setCookie('cookieGoogleanaltytics', ''); 1924 document.cookie = '_gid=; Path=/; Domain=.domain.tld; Expires=Thu, 01 Jan 1970 00:00:01 GMT;'; 1925 document.cookie = '_gat=; Path=/; Domain=.domain.tld; Expires=Thu, 01 Jan 1970 00:00:01 GMT;'; 1926 document.cookie = '_ga=; Path=/; Domain=.domain.tld; Expires=Thu, 01 Jan 1970 00:00:01 GMT;'; 1927 break; 1928 case "matomo": 1929 swe.setCookie('cookieMatomo', ''); 1930 break; 1931 case "googlemaps": 1932 swe.setCookie('cookieGooglemaps', ''); 1933 break; 1934 case "youtube": 1935 swe.setCookie('cookieYoutube', ''); 1936 break; 1937 case "hubspot": 1938 swe.setCookie('cookieHubspot', ''); 1939 break; 1940 default: 1941 console.log("Element "+element.name+ " unbekannt"); 1942 } 1943 } 1944 1945 });
1946 1947 swe.setCookie('cookieBanner2019', 'Set', 365); 1948 privacyContainer.style.display = "none"; 1949 }); 1950 1951 1952 let cookie = swe.getCookie('cookieBanner2019'); 1953 1954 if (cookie === 'Set') { 1955 if (swe.getCookie('cookieGoogleanaltytics') === 'Set') { 1956 swe.googleAnalytics(googleAnalyticsID); 1957 } 1958 if (swe.getCookie('cookieMatomo') === 'Set') { 1959 swe.matomo(matomoBaseUrl, matomoSiteID); 1960 } 1961 if (swe.getCookie('cookieGooglemaps') === 'Set') { 1962 swe.loadMap(googleMapsAPIKey); 1963 } 1964 if (swe.getCookie('cookieHubspot') === 'Set') { 1965 swe.hubSpot(); 1966 } 1967 1968 // Iframes 1969 if (swe.getCookie('cookieYoutube') === 'Set') { 1970 swe.loadIframes(); 1971 swe.responsiveIframe(); 1972 } 1973 } else { 1974 if (bodyContainer.classList.contains("nobanner")) { 1975 privacyContainer.style.display = "none"; 1976 } else { 1977 privacyContainer.style.display = "block"; 1978 } 1979 } 1980} 1981 1982/** 1983 * Scroll event 1984 */ 1985var scrollTicking = false; 1986 1987window.addEventListener('scroll', function () { 1988 if (!scrollTicking) { 1989 window.requestAnimationFrame(function () { 1990 // ... 1991 let timelineContainer = document.querySelector('.dce-timeline-slide-container'); 1992 1993 if (timelineContainer) { 1994 let yearContainer = document.querySelector('.years-outer-container'); 1995 1996 if (window.scrollY >= timelineContainer.offsetTop - 200 && window.scrollY <= timelineContainer.offsetTop + timelineContainer.clientHeight - 100) { 1997 yearContainer.classList.add('years-outer-container-active'); 1998 } else { 1999 yearContainer.classList.remove('years-outer-container-active'); 2000 } 2001 } 2002 scrollTicking = false; 2003 }); 2004 } 2005 scrollTicking = true; 2006}); 2007 2008/** 2009 * Resize event 2010 */ 2011var resizeTicking = false; 2012 2013window.addEventListener('resize', function () { 2014 if (!resizeTicking) { 2015 window.requestAnimationFrame(function () { 2016 // ... 2017 if (window.timeline) window.timeline.setElementWidth(); 2018 resizeTicking = false; 2019 }); 2020 } 2021 resizeTicking = true; 2022}); 2023 2024if (document.querySelector(".swe-hotspots") !== null && window.innerWidth > 500) { 2025 var elements = document.querySelectorAll(".swe-hotspots ol li a.hotspot"); 2026 2027 for (i = 0; i < elements.length; i++) { 2028 elements[i].addEventListener("click", function (event) { 2029 event.preventDefault(); 2030 event.stopPropagation(); 2031 if (this.classList.contains("active")) { 2032 var activeHotspots = document.querySelectorAll(".swe-hotspots ol li a.hotspot.active"); 2033 for (j=0; j < activeHotspots.length; j++) { 2034 activeHotspots[j].classList.remove("active"); 2035 } 2036 } else { 2037 var activeHotspots = document.querySelectorAll(".swe-hotspots ol li a.hotspot.active"); 2038 for (j=0; j < activeHotspots.length; j++) { 2039 activeHotspots[j].classList.remove("active"); 2040 } 2041 this.classList.add("active"); 2042 } 2043 }); 2044 } 2045} 2046 2047/** 2048 * Timeline 2049 */ 2050(function Timeline() { 2051 2052 let exists = document.querySelector('.dce-timeline-slide-container') 2053 2054 let yearClass = 'dce-timeline-slide-year' 2055 let elementClass = 'dce-timeline-slide-element' 2056 let locationClass = 'dce-timeline-slide-container' 2057 let buttonClass = 'dce-timeline-slide-control' 2058 2059 let yearClassActive 2060 let lineClass 2061 let lineClassActive 2062 let elementClassActive 2063 2064 let timelineContainer 2065 let lineBarOuterContainer 2066 let lineBarInnerContainer 2067 let years 2068 let yearsOuter 2069 let elementContainer 2070 let element 2071 let year 2072 let line 2073 let lineBarOuterContainerHeight 2074 2075 let buttonCount = 0; 2076 let _lineHeight = 21.6; 2077 let _elementWidth = 236; 2078 2079 let setObjects = function(i) { 2080 for (let j = 0; j < element.length; j++) { 2081 if (year[0] != null) { 2082 year[j].classList.remove(yearClassActive); 2083 } 2084 line[j].classList.remove(lineClassActive); 2085 element[j].classList.remove(elementClassActive); 2086 2087 line[j].innerHTML = ''; 2088 } 2089 if (year[0] != null) { 2090 year[i].classList.add(yearClassActive); 2091 } 2092 line[i].classList.add(lineClassActive); 2093 element[i].classList.add(elementClassActive); 2094 2095 years.style.left = _elementWidth - (i * _elementWidth) + 'px'; 2096 lineBarInnerContainer.style.top = lineBarOuterContainerHeight + _lineHeight - 2097 (i * _lineHeight) + 'px'; 2098 2099 line[i].innerHTML = year[i].innerHTML; 2100 2101 buttonCount = i; 2102 }; 2103 2104 let setOnclickEventListener = function(domObject, i) { 2105 domObject[i].addEventListener('click', function() { 2106 setObjects(i); 2107 }); 2108 }; 2109 2110 let initClickEvents = function() { 2111 line = document.getElementsByClassName(lineClass); 2112 2113 lineBarOuterContainerHeight = lineBarOuterContainer.clientHeight / 2; 2114 lineBarInnerContainer.style.top = lineBarOuterContainerHeight + _lineHeight + 'px'; 2115 2116 for (let i = 0; i < element.length; i++) { 2117 if (year[0] != null) { 2118 setOnclickEventListener(year, i); 2119 } 2120 setOnclickEventListener(line, i); 2121 } 2122 2123 setObjects(0); 2124 }; 2125 2126 if (exists) { 2127 yearClass = yearClass.toString(); 2128 yearClassActive = yearClass.toString() + '-active'; 2129 lineClass = 'line'; 2130 lineClassActive = lineClass.toString() + '-active'; 2131 elementClass = elementClass.toString(); 2132 elementClassActive = elementClass.toString() + '-active'; 2133 2134 timelineContainer = document.createElement('div'); 2135 lineBarOuterContainer = document.createElement('div'); 2136 lineBarInnerContainer = document.createElement('div'); 2137 years = document.createElement('div'); 2138 yearsOuter = document.createElement('div'); 2139 elementContainer = document.createElement('div'); 2140 2141 timelineContainer.className = 'timeline-container'; 2142 lineBarOuterContainer.className = 'linebar-outer-container'; 2143 lineBarInnerContainer.className = 'linebar-inner-container'; 2144 years.className = 'years-container'; 2145 yearsOuter.className = 'years-outer-container'; 2146 elementContainer.className = 'element-container'; 2147 2148 lineBarOuterContainer.appendChild(lineBarInnerContainer); 2149 timelineContainer.appendChild(lineBarOuterContainer); 2150 yearsOuter.appendChild(years); 2151 timelineContainer.appendChild(yearsOuter); 2152 timelineContainer.appendChild(elementContainer); 2153 2154 element = document.getElementsByClassName(elementClass); 2155 year = document.getElementsByClassName(yearClass); 2156 2157 for (let i = 0; i < element.length; i++) { 2158 let line = document.createElement('div'); 2159 line.className = lineClass; 2160 lineBarInnerContainer.appendChild(line); 2161 } 2162 2163 while (element.length > 0) { 2164 if (year[0] != null) { 2165 years.appendChild(year[0]); 2166 } 2167 elementContainer.appendChild(element[0]); 2168 } 2169 2170 years.style.left = _elementWidth + 'px'; 2171 lineBarInnerContainer.style.top = _lineHeight + 'px'; 2172 2173 let objectLocation = document.querySelector('.' + locationClass.toString()); 2174 objectLocation.appendChild(timelineContainer); 2175 2176 initClickEvents(); 2177 } 2178 2179 let setLineHeight = function(height) { 2180 _lineHeight = height; 2181 } 2182 2183 let setElementWidth = function() { 2184 let yearWidth = document.getElementsByClassName(yearClass); 2185 if (yearWidth[0] !== undefined) { 2186 _elementWidth = yearWidth[0].clientWidth; 2187 years.style.left = _elementWidth + 'px'; 2188 } 2189 2190 } 2191 2192 let setButton = function() { 2193 let button = document.querySelector('.' + buttonClass); 2194 2195 if (button !== undefined) { 2196 button.addEventListener('click', function() { 2197 if (buttonCount < element.length - 1) { 2198 setObjects(buttonCount + 1); 2199 } else { 2200 setObjects(buttonCount); 2201 } 2202 }); 2203 } 2204 2205 } 2206 2207 setElementWidth() 2208})(); 2209 2210/* Formulare */ 2211if (document.querySelector(".powermail_form_2") !== null) { 2212 const checkbox = document.getElementById('powermail_field_lieferadressecheckbox_1') 2213 2214 checkbox.addEventListener('change', (event) => { 2215 if (event.target.checked) { 2216 document.querySelector('.powermail_fieldset_4').style.display = 'block'; 2217 } else { 2218 document.querySelector('.powermail_fieldset_4').style.display = 'none'; 2219 } 2220 }) 2221} 2222if (document.querySelector(".powermail_form_3") !== null) { 2223 const checkbox = document.getElementById('powermail_field_abweichendelieferadresse_1') 2224 2225 checkbox.addEventListener('change', (event) => { 2226 if (event.target.checked) { 2227 document.querySelector('.powermail_fieldset_8').style.display = 'block'; 2228 } else { 2229 document.querySelector('.powermail_fieldset_8').style.display = 'none'; 2230 } 2231 }) 2232} 2233 2234// Responsive Tabellen 2235if (document.querySelector("table") !== null && window.innerWidth < 600) { 2236 var elements = document.querySelectorAll("table"); 2237 2238 for (i = 0; i < elements.length; i++) { 2239 var wrapper = document.createElement('div') 2240 wrapper.classList.add('table-scrollable') 2241 elements[i].parentNode.insertBefore(wrapper, elements[i]) 2242 wrapper.appendChild(elements[i]) 2243 } 2244} 2245 2246if (document.querySelector("#language_menu")) { 2247 document.querySelector("#language_menu").addEventListener('click', function() { 2248 document.querySelector(".meta-languages").classList.toggle('active'); 2249 }); 2250} 2251 2252(function MoveSliderButtons() { 2253 let mainContainer = document.querySelector('.carousel-main') 2254 let navContainer = document.querySelector('.carousel-nav') 2255 2256 if (mainContainer && navContainer) { 2257 let prevBtn = mainContainer.querySelector('.previous') 2258 let nextBtn = mainContainer.querySelector('.next') 2259 2260 if (prevBtn && nextBtn) { 2261 navContainer.appendChild(prevBtn) 2262 navContainer.appendChild(nextBtn) 2263 } 2264 } 2265})(); 2266 2267(function ScrollDown() { 2268 let scrollDown = document.querySelector('.scroll-down-text') 2269 2270 if (scrollDown) { 2271 scrollDown.addEventListener('click', function() { 2272 window.scrollBy(0, window.innerHeight - 200) 2273 }); 2274 } 2275})(); 2276 2277(function SikaProductsForm() { 2278 let txPowermail = document.querySelector('.powermail-container') 2279 2280 let param = 'itemno' 2281 let article 2282 2283 /** 2284 * Get Article No. 2285 */ 2286 let setParam = function() { 2287 if (window.location.href.indexOf(param) >= 0) { 2288 let href = window.location.href.split('?') 2289 2290 if (href.length > 1) { 2291 let paramArray = href[1].split('&') 2292 2293 paramArray.forEach(function(p) { 2294 let result = p.split('=') 2295 2296 if (result[0] === param) { 2297 article = result[1] 2298 window.scrollTo({top: txPowermail.offsetTop - 100, behavior: 'smooth'}) 2299 } 2300 }); 2301 } 2302 } 2303 } 2304 2305 if (txPowermail) { 2306 let articleField = txPowermail.querySelector('#powermail_field_artikel_nr') 2307 2308 if (articleField) { 2309 setParam() 2310 2311 if (article) { 2312 articleField.setAttribute('value', article) 2313 //articleField.disabled = true 2314 } else { 2315 txPowermail.classList.add('hidden') 2316 } 2317 } 2318 } 2319})(); 2320 2321 2322// DCE Popup 2323if (document.querySelector('.dce-popup') !== null) { 2324 var callButtonClose = document.querySelector('#close-popup'); 2325 2326 callButtonClose.addEventListener('click', function(event) { 2327 document.querySelector('.dce-popup').style.display = "none"; 2328 }); 2329
2330 let darkSiteCookie = swe.getCookie('cookiePopup'); 2331 2332 if (darkSiteCookie === 'Set') { 2333 document.querySelector('.dce-popup').style.display = "none"; 2334 } else { 2335 document.cookie = 'cookiePopup=Set; expires=; path=/'; 2336 document.querySelector('.dce-popup').style.display = "block"; 2337 } 2338} 2339 2340(function ReadingTime() { 2341 let readingNotes = document.querySelector('.news-list-notes') 2342 let paragraphs = document.querySelectorAll('p') 2343 2344 if (!readingNotes || !paragraphs) return 2345 2346 let wordCount = 0 2347 let readingTime = 0 2348 let result = '' 2349 2350 paragraphs.forEach(function(paragraph) { 2351 wordCount += paragraph.innerText.split(' ').length 2352 }) 2353 2354 readingTime = Math.ceil(wordCount / 200) 2355 2356 /*if (readingTime === 1) { 2357 result = readingTime + ' Minute' 2358 } else { 2359 result = readingTime + ' Minuten' 2360 }*/ 2361 result = readingTime 2362 2363 readingNotes.innerText = result 2364})(); 2365 2366const viewport = document.querySelector('.slider--header-2025'); 2367if (viewport) { 2368 const prevBtn = viewport.querySelector('.flickity-prev-next-button.previous');
2369 const nextBtn = viewport.querySelector('.flickity-prev-next-button.next'); 2370 const dotsOl = viewport.querySelector('.flickity-page-dots'); 2371 if (prevBtn && nextBtn && dotsOl) { 2372 const wrapper = document.createElement('div'); 2373 wrapper.className = 'flickity-controls-wrapper container'; 2374 // Insert wrapper before the first button 2375 viewport.insertBefore(wrapper, prevBtn); 2376 // Move the controls into the wrapper 2377 wrapper.appendChild(prevBtn); 2378 wrapper.appendChild(nextBtn); 2379 wrapper.appendChild(dotsOl); 2380 } 2381} else { 2382 console.log('Viewport not found'); 2383} 2384const viewports = document.querySelectorAll('.slider--blog'); 2385viewports.forEach(function(viewport2) { 2386 if (viewport2) { 2387 const prevBtn = viewport2.querySelector('.flickity-prev-next-button.previous'); 2388 const nextBtn = viewport2.querySelector('.flickity-prev-next-button.next'); 2389 const dotsOl = viewport2.querySelector('.flickity-page-dots'); 2390 if (prevBtn && nextBtn && dotsOl) { 2391 const wrapper = document.createElement('div'); 2392 wrapper.className = 'flickity-controls-wrapper'; 2393 // Insert wrapper before the first button 2394 viewport2.insertBefore(wrapper, prevBtn); 2395 // Move the controls into the wrapper 2396 wrapper.appendChild(prevBtn); 2397 wrapper.appendChild(nextBtn); 2398 wrapper.appendChild(dotsOl); 2399 } 2400 } else { 2401 console.log('Viewport not found'); 2402 } 2403}) 2404 2405 2406/** 2407 * Such Button 2408 */ 2409if (document.getElementById('search-icon')) { 2410 document.getElementById('search-icon').addEventListener('click', function () { 2411 document.getElementById('searchbox').classList.toggle('active'); 2412 document.querySelector('#searchbox #tx-solr-search-form-pi-results .tx-solr-q').focus(); 2413 }); 2414} 2415 2416if (document.getElementById('search-close')) { 2417 document.getElementById('search-close').addEventListener('click', function () { 2418 document.getElementById('searchbox').classList.toggle('active'); 2419 }); 2420}
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.