PageSourceSearch

https://www.feg-karlsruhe.de/build/head-c8z1Nou0.js

js feg-karlsruhe.de collected 2026-10-06 13:06:59 UTC 6,401 bytes, 1 lines download raw bytes

1function D(o){const h={drawer:null,viewState:"",classOpen:"is-open",classClosed:"is-closed",classExpanded:"wf-drawer--is-expanded",classContainer:"wf-drawer__container",classLinkRoot:"wf-drawer__l1",classSubnav:"wf-drawer__subnav",classSubnavContainer:"wf-drawer__subnav-container",classMegaMenu:"wf-drawer__megamenu",classMegaMenuNav:"wf-drawer__l2",classLink:"wf-drawer__link",classLinkCopy:"wf-drawer__link--copy",classInit:"is-ready",calculateHeight:!0,megaMenu:!0,megaMenuThreshold:10,megaMenuColumns:3,forcedBreakpoint:768};let t={...h,...o||{}},e={activeNavs:[],linkClones:[],drawer:t.drawer,container:document.getElementsByClassName(t.classContainer)[0],containerSpace:document.getElementById(t.drawer.dataset.container),toggleButton:document.getElementById(t.drawer.dataset.toggle),linkRoot:t.drawer.getElementsByClassName(t.classLinkRoot)[0],subNavs:t.drawer.getElementsByClassName(t.classSubnav),padLeft:document.getElementById(t.drawer.dataset.padleft),padRight:document.getElementById(t.drawer.dataset.padright)};e.subNavsByDepth=C(e.subNavs),e.depthTotal=e.subNavsByDepth.length-1,e.logo=null,t.padLeft=0,t.padRight=0,t.spaceRequired=0,this.watch=function(a){if(v(a),e.padLeft){let n=e.padLeft.querySelectorAll("img");for(const s of n)s.offsetParent&&(e.logo=s)}e.logo&&!e.logo.complete?(e.logo.addEventListener("load",function(){r()}),e.logo.addEventListener("error",function(){r()})):r()},this.init=function(a){d(a)},this.destroy=function(){e.drawer.classList.remove(t.classInit),N()};function g(){let a=e.containerSpace.clientWidth-t.padLeft-t.padRight,n=window.innerWidth<t.forcedBreakpoint?0:a-t.spaceRequired;n<=0&&t.viewState!=="collapsed"?(document.documentElement.classList.remove(t.classExpanded),e.container.style.removeProperty("padding-left"),e.container.style.removeProperty("padding-right"),d({viewState:"collapsed",megaMenu:!1,calculateHeight:!0})):n>0&&t.viewState!=="expanded"&&(document.documentElement.classList.add(t.classExpanded),t.padLeft>0&&(e.container.style.paddingLeft=t.padLeft+"px"),t.padRight>0&&(e.container.style.paddingRight=t.padRight+"px"),d({viewState:"expanded",megaMenu:!0,calculateHeight:!1}))}function S(){let a=document.documentElement.classList.contains(t.classExpanded);a||document.documentElement.classList.add(t.classExpanded);let n=getComputedStyle(e.containerSpace);if(t.padLeft=e.padLeft?e.padLeft.offsetWidth+parseFloat(n.paddingLeft):0,t.padRight=e.padRight?e.padRight.offsetWidth:0,e.padLeft&&e.logo){let s=getComputedStyle(e.padLeft);t.padLeft=Math.max(t.padLeft,e.logo.offsetWidth+parseFloat(s.paddingRight)+parseFloat(n.paddingLeft))}t.spaceRequired=0;for(let s of e.linkRoot.children)t.spaceRequired+=s.offsetWidth;a||document.documentElement.classList.remove(t.classExpanded)}function r(){S(),g(),window.addEventListener("resize",g)}function d(a){N(),v(a),_(),k(),setTimeout(()=>e.drawer.classList.add(t.classInit),500)}function v(a){t={...h,...t,...a||{}}}function k(){for(let a=e.depthTotal;a>0;a--)if(e.subNavsByDepth[a]){e.activeNavs[a]=null;for(let n of e.subNavsByDepth[a]){let s=n.querySelector("a");if(s.href.split("#").length===1&&!(a>1&&t.megaMenu)&&B(n),t.calculateHeight){let l=n.querySelector("."+t.classSubnavContainer);l.dataset.height=l.offsetHeight+"px",l.style.height=0}a>1&&t.megaMenu||(n.classList.add(t.classClosed),s.addEventListener("click",y))}}}function b(){x();for(let a of e.subNavs){let n=a.children[0],s=a.children[1];s.dataset.height=null,s.style.height=null,a.classList.remove(t.classClosed),a.classList.remove(t.classOpen),n.removeEventListener("click",y)}}function m(a,n){for(let s of a.children){s.dataset.depth=n,n===1&&(s.querySelectorAll("."+t.classLink).length>t.megaMenuThreshold||s.querySelectorAll("."+t.classSubnav).length>0)&&s.classList.add(t.classMegaMenu);let l=s.querySelector("ul");l!==null&&m(l,n+1)}}function C(a){m(e.linkRoot,1);let n=1,s=Array.from(a).filter(i=>parseInt(i.dataset.depth)===n),l=[];for(;s.length>0;)l[n]=s,n++,s=Array.from(a).filter(i=>parseInt(i.dataset.depth)===n);return l}function B(a){let n=a.children[0],l=a.children[1].children[0],i=R(n);l.insertBefore(i,l.children[0]),e.linkClones.push(i)}
1function x(){e.linkClones.forEach(a=>a.remove()),e.linkClones=[]}function R(a){let n=document.createElement("li");return n.classList.add(t.classLink),n.classList.add(t.classLinkCopy),n.appendChild(a.cloneNode(!0)),n}function L(){e.activeNavs[0]?u():I()}function I(){e.activeNavs[0]=e.drawer,e.drawer.classList.add(t.classOpen),e.toggleButton.classList.add(t.classOpen),document.documentElement.classList.add("wf-drawer--"+t.classOpen)}function u(){e.activeNavs[0]=null,e.drawer.classList.remove(t.classOpen),e.toggleButton.classList.remove(t.classOpen),document.documentElement.classList.remove("wf-drawer--"+t.classOpen)}function w(a){!e.drawer.contains(a.target)&&!e.toggleButton.contains(a.target)&&(c(),u())}function y(a){a.preventDefault(),a.stopPropagation();let n=a.currentTarget.parentElement;e.activeNavs[parseInt(n.dataset.depth)]!==n?M(n):c(n)}function M(a){let n=parseInt(a.dataset.depth);if(e.activeNavs[n]&&e.activeNavs[n]!==a&&c(e.activeNavs[n]),e.activeNavs[n]=a,e.activeNavs[n].classList.remove(t.classClosed),e.activeNavs[n].classList.add(t.classOpen),t.calculateHeight){let s=0;for(let l=n;l>0;l--){let i=e.activeNavs[l].children[1];s+=parseInt(i.dataset.height.replace("px","")),i.style.height=s+"px"}}}function c(a){let n=a?parseInt(a.dataset.depth):1;for(let s=e.depthTotal;s>=n;s--){if(e.activeNavs[s]&&(e.activeNavs[s].classList.remove(t.classOpen),e.activeNavs[s].classList.add(t.classClosed),t.calculateHeight)){let l=e.activeNavs[s].children[1],i=parseInt(l.style.height.replace("px",""));l.style.height=0;for(let p=s-1;p>0;p--){let f=e.activeNavs[p].querySelector("."+t.classSubnavContainer);f.style.height=parseInt(f.style.height.replace("px",""))-i+"px",i+=parseInt(f.dataset.height.replace("px",""))}}e.activeNavs[s]=null}}function _(){e.toggleButton.addEventListener("click",L),document.addEventListener("click",w)}function O(){e.toggleButton.removeEventListener("click",L),document.removeEventListener("click",w)}function N(){O(),u(),c(),b()}}const E={create:function(o){return new D(o)}};window.addEventListener("DOMContentLoaded",function(){document.fonts!==void 0?document.fonts.ready.then(function(){E.create({drawer:document.getElementById("drawer")}).watch()}):E.create({drawer:document.getElementById("drawer")}).watch()});

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.