Template:ETH Zurich/template.min.js

function expand(e){var n=e.parentNode;n.className="info open-info"==n.className?"info":"info open-info"}function adjustWidth(){window.outerWidth>480?(console.log("desktop mode"),jPM.off(),hasMenu&&(setSidemenuMidWidth(),maxTop=$("#footerContainer").offset().top-menu.offsetHeight-yOffset,window.addEventListener("scroll",setSidemenuState),setSidemenuState())):(console.log("mobile mode"),jPM.isOpen()||jPM.on(),$(".hideMenu li.sub").unbind("mouseenter mouseleave"),$(".hideMenu li.sub").on("touchend",function(e){e.preventDefault(),$(e.target).find("ul").toggle()}).on("touchend","ul",function(e){e.stopPropagation()}))}function setSidemenuMidWidth(){console.log("set sidemenu width");var e=document.getElementById("sidemenuContainer").offsetWidth;sidemenu.style.width=(.77*e).toString()+"px",sidemenu.style.padding=(.11*e).toString()+"px"}function setSidemenuState(){var e=menu.getBoundingClientRect().top,n=document.documentElement&&document.documentElement.scrollTop||document.body.scrollTop;e>=n+yOffset?(midStyle.disabled=!0,botStyle.disabled=!0):maxTop>=n?(midStyle.disabled=!1,botStyle.disabled=!0):(midStyle.disabled=!0,botStyle.disabled=!1),menuHeaders.removeClass("current");for(var t=0;t<menuHeaders.length-1;t++){if(menuHeaderTargets[0].offsetTop>n){menuHeaders[0].className="current";break}if(menuHeaderTargets[t].offsetTop<=n&&menuHeaderTargets[t+1].offsetTop>n){menuHeaders[t].className="current";break}}t==menuHeaders.length-1&&(menuHeaders[menuHeaders.length-1].className="current")}var expContainers,menu,menuGenerated=!1,yOffset=50,maxTop,menuHeaders,menuHeaderTargetNames=[],menuHeaderTargets,jPM,hasMenu=!1,noSidemenu;$(function(){var e=document.createElement("meta");if(e.id="viewport",e.name="viewport",e.content="width=device-width, initial-scale=1,maximum-scale=1.0",expContainers=$(".expContainer"),menu=document.getElementById("sidemenu"),midStyle=document.getElementById("sidemenuMid"),botStyle=document.getElementById("sidemenuBot"),noSidemenu=document.getElementById("noMenu"),midStyle.disabled=!0,botStyle.disabled=!0,jPM=$.jPanelMenu({menu:"#mobileMenu",trigger:"#menuButtonLink",direction:"right",clone:"false",openPosition:"80%"}),!menuGenerated){console.log("generate menu");for(var n=expContainers.find("h1,h2,h3,h4"),t=0,d="",i="",o=0,a=0,s=0,u=new RegExp("</?a ?[^>]*>","g"),m=0;m<n.length;m++){i=n[m].innerHTML.replace(u,""),""==n[m].id?(itemId=(n[m].textContent||n[m].innerText).replace(/\W/g,"_"),n[m].id=itemId):itemId=n[m].id;var r=parseInt(n[m].tagName.substring(1,2));(2>=r||"inMenu"==n[m].className)&&(t+=1,a=r,a>o&&(d+="
    ",s+=1),o>a&&(d+="
",s-=1),o=a,d+='
  • <a class="" href="#'+itemId+'">'+i+"</a>
  • ")}for(;s--;)d+="</ul>";if(t>1&&""!=d){menu.innerHTML=d,hasMenu=!0,menuHeaders=$(menu).find('li a[href^="#"]');for(var m=0;m<menuHeaders.length;m++)menuHeaderTargetNames.push(menuHeaders[m].getAttribute("href"));menuHeaderTargets=expContainers.find(menuHeaderTargetNames.join(",")),menuHeaderTargets[0].className="current",noSidemenu.disabled=!0}menuGenerated=!0}window.outerWidth>480||jPM.on()}),$(window).load(function(){adjustWidth(),window.addEventListener("orientationchange",adjustWidth)});