Viewing File: /usr/local/cpanel/whostmgr/docroot/templates/menu/header_and_navigation.cmb.min.js

(function(){"use strict";if(typeof window.CustomEvent==="function"){return false}function CustomEvent(event,params){params=params||{bubbles:false,cancelable:false,detail:undefined};var evt=document.createEvent("CustomEvent");evt.initCustomEvent(event,params.bubbles,params.cancelable,params.detail);return evt}CustomEvent.prototype=window.Event.prototype;window.CustomEvent=CustomEvent})();(function(){"use strict";window.addEventListener("load",(function(){dispatchInitEvent("load event")}));var observer=new MutationObserver((function(){var contentContainer=document.getElementById("contentContainer");if(contentContainer!==null&&contentContainer.firstElementChild){observer.disconnect();dispatchInitEvent("MutationObserver")}}));observer.observe(window.document.documentElement,{childList:true,subtree:true});var eventDispatched;function dispatchInitEvent(triggerName){if(eventDispatched){return}eventDispatched=true;if(window.location.href.indexOf("debug=1")!==-1){console.log("content-container-init triggered via "+triggerName)}var event=new CustomEvent("content-container-init");window.dispatchEvent(event)}})();(function(){"use strict";var LOADAVG_TIMEOUT=5*1e3*60;var documentHidden=void 0;var isPageVisible=function(){return documentHidden===void 0||!document[documentHidden]};var checkRecentActivity=function(){return isPageVisible()&&(!top._LAST_ACTIVITY||new Date-top._LAST_ACTIVITY<LOADAVG_TIMEOUT)};var loadLiveEl;var loadLiveOne;var loadLiveFive;var loadLiveFifteen;var updateLoad=function(event){if(loadLiveEl){var loadavgs=JSON.parse(event.target.responseText);loadLiveOne.textContent=loadavgs.one;loadLiveFive.textContent=loadavgs.five;loadLiveFifteen.textContent=loadavgs.fifteen;if(loadLiveEl.classList.contains("hidden")){loadLiveEl.classList.remove("hidden")}if(checkRecentActivity()){if(loadavgs["one"]<.5){setTimeout(getLoadAverage,15e3)}else if(loadavgs["one"]<1){setTimeout(getLoadAverage,3e4)}else{setTimeout(getLoadAverage,45e3)}}else{setTimeout((function checkActivity(){if(checkRecentActivity()){getLoadAverage()}else{setTimeout(checkActivity,2e4)}}),2e4)}return}setTimeout((function(){updateLoad(event)}),1e3)};var getLoadAverage=function(){var request=new XMLHttpRequest;request.addEventListener("load",(function(event){if(request.status===0||request.status>=200&&request.status<300||request.status===304){updateLoad(event)}}));var url="";if(window.COMMON.securityToken){url=window.COMMON.securityToken+"/json-api/loadavg"}else{url="/json-api/loadavg"}if(url){request.open("GET",url,true);request.send()}};var setLastActivity=function(){top._LAST_ACTIVITY=new Date};var handleVisibilityChange=function(event){if(isPageVisible()){setLastActivity()}};var attachLoadAvg=function(){var frames=top.document.getElementsByTagName("frame");var initializeEventHandler=function(frame){frame.document.body.addEventListener("click",setLastActivity);frame.document.body.addEventListener("keyup",setLastActivity)};if(frames){for(var len=frames.length-1;len>-1;len--){var frame=frames[len];frame.contentWindow.addEventListener("load",initializeEventHandler(this))}}};var checkUpdateAvailability=function(){var getUpdateAvailabilityEl=document.getElementById("getUpdateAvailability");if(getUpdateAvailabilityEl){var request=new XMLHttpRequest;request.addEventListener("load",(function(event){if(request.status===0||request.status>=200&&request.status<300||request.status===304){if(event&&event.target&&event.target.responseText){var response=JSON.parse(event.target.responseText);if(response&&response.data&&response.data.update_available){var updateNewestVersionEl=document.getElementById("lblUpdateNewestVersion");if(updateNewestVersionEl){updateNewestVersionEl.textContent=updateNewestVersionEl.textContent.replace("[PLACEHOLDER_VALUE_UPDATE_VERSION]",response.data.newest_version)}if(getUpdateAvailabilityEl.classList.contains("hidden")){getUpdateAvailabilityEl.classList.remove("hidden")}}}}}));var url="";if(window.COMMON.securityToken){url=window.COMMON.securityToken+"/json-api/get_update_availability?api.version=1"}else{url="/json-api/get_update_availability?api.version=1"}if(url){request.open("GET",url,true);request.send()}}};var logoutWHM=function(){if(typeof sessionStorage.searchTerm!=="undefined"){delete sessionStorage.searchTerm;delete sessionStorage.userName}};var addVisibilityListener=function(){var visibilityChange=void 0;if(typeof document.hidden!=="undefined"){documentHidden="hidden";visibilityChange="visibilitychange"}else if(typeof document.msHidden!=="undefined"){documentHidden="msHidden";visibilityChange="msvisibilitychange"}else if(typeof document.webkitHidden!=="undefined"){documentHidden="webkitHidden";visibilityChange="webkitvisibilitychange"}if(documentHidden!==void 0){document.addEventListener(visibilityChange,handleVisibilityChange)}};function updateUIForQuota(data){if(data&&parseInt(data.quota_enabled)!==1){var quotaWarnings=document.querySelectorAll(".quota_sensitive");for(var quotaWarning in quotaWarnings){if(quotaWarnings[quotaWarning].style){quotaWarnings[quotaWarning].style.display=""}}var quotaValues=document.querySelectorAll(".quota_insensitive");for(var quotaValue in quotaValues){if(quotaValues[quotaValue].style){quotaValues[quotaValue].style.display="none"}}}}function checkQuota(){if(typeof window.COMMON.isDnsOnly!=="undefined"&&window.COMMON.isDnsOnly){return}var pageURL=window.location.toString();var needsRebootReasonIsQuota=typeof window.serverNeedsReboot==="object"&&window.serverNeedsReboot!==null?parseInt(window.serverNeedsReboot.quota,10):parseInt(window.serverNeedsReboot,10)===1;var noCache=pageURL.match(/newquota/)||pageURL.match(/graceful_reboot_landing/)||pageURL.match(/forcereboot/)||needsRebootReasonIsQuota;if(noCache){window.localStorage.removeItem("cPQuotaStatus")}var cached=window.localStorage.getItem("cPQuotaStatus");if(cached){cached=JSON.parse(cached);if(typeof cached==="object"&&cached.hasOwnProperty("lastChecked")&&Date.now()-cached.lastChecked<36e5){updateUIForQuota(cached);return false}}var xmlhttp=new XMLHttpRequest;xmlhttp.onreadystatechange=function(){if(xmlhttp.readyState===XMLHttpRequest.DONE){if(xmlhttp.status===200){var response=JSON.parse(xmlhttp.responseText);updateUIForQuota(response.data);response.data.lastChecked=Date.now();if(!noCache){window.localStorage.setItem("cPQuotaStatus",JSON.stringify(response.data))}}}};var uri="/json-api/quota_enabled?api.version=1";if(window.COMMON.securityToken){uri=window.COMMON.securityToken+uri}xmlhttp.open("GET",uri,true);xmlhttp.send()}var init=function(){var logoutLink=document.getElementById("lnkLogout");loadLiveEl=document.getElementById("loadlive");if(!logoutLink&&!loadLiveEl){return}logoutLink.addEventListener("click",logoutWHM);loadLiveOne=loadLiveEl.querySelector("#lavg_one");loadLiveFive=loadLiveEl.querySelector("#lavg_five");loadLiveFifteen=loadLiveEl.querySelector("#lavg_fifteen");setLastActivity();getLoadAverage();checkQuota();addVisibilityListener();attachLoadAvg();if(window.COMMON.hasRootPrivileges){checkUpdateAvailability()}};window.addEventListener("content-container-init",init)})();(function(window){"use strict";var SlideMenu=function(containerId){this.supportContainer=document.getElementById(containerId);this.slideToggleClass="show";this.slideIcon=null;this.slideIconLink=null;this.slidePanel=null};SlideMenu.prototype={init:function(){if(this.supportContainer!==null){this.slideContainer=this.supportContainer.querySelector(".slideContainer");this.slideIcon=this.supportContainer.querySelector(".slideTab");this.slideIconLink=this.supportContainer.querySelector(".slideTab a");this.slidePanel=this.slideContainer.querySelector(".slidePanel");this._attachEvents();this.initializeGlobalListeners()}},_attachEvents:function(){var slideMenu=this;this.slideIcon.addEventListener("click",(function(){slideMenu.handleIconClick()}),false)},initializeGlobalListeners:function(){var frames=this.getAllFrames();var slideObj=this;var handleKeyDown=function(keyEvent){if(keyEvent.keyCode===113&&keyEvent.altKey){slideObj.handleSupportKey(keyEvent,slideObj)}};for(var i=0,len=frames.length;i<len;i++){try{frames[i].document.addEventListener("keydown",handleKeyDown,false)}catch(e){}}},hasClass:function(element,classToCheck){return element.className.indexOf(classToCheck)>-1},addClass:function(element,classToAdd){var classNames=element.className.split(" ");if(classNames.indexOf(classToAdd)===-1){classNames.push(classToAdd);element.className=classNames.join(" ")}},removeClass:function(element,classToRemove){var classNames=element.className.split(" ");var stylePosition=classNames.indexOf(classToRemove);if(stylePosition>-1){classNames=classNames.splice(stylePosition-1,1);element.className=classNames.join(" ")}},handleSlideTabFocus:function(){this.addClass(this.slideIcon,"active")},handleSlideTabBlur:function(){this.removeClass(this.slideIcon,"active")},handleIconClick:function(){this._toggleSlide()},handleSupportKey:function(e,slideObj){if(slideObj){slideObj._toggleSlide()}},hideSlider:function(){this._setSupportLinksTabIndex("-1");this.removeClass(this.slideContainer,this.slideToggleClass);this.removeClass(this.slideIcon,"active");this.slideIconLink.setAttribute("aria-expanded","false")},showSlider:function(){this._setSupportLinksTabIndex("0");this.addClass(this.slideContainer,this.slideToggleClass);this.addClass(this.slideIcon,"active");this.slideIconLink.setAttribute("aria-expanded","true")},_setSupportLinksTabIndex:function(indexVal){var links=this.slidePanel.querySelectorAll("a");for(var i=0;i<links.length;i++){links[i].tabIndex=indexVal}},_toggleSlide:function(){if(this.hasClass(this.slideContainer,this.slideToggleClass)){this.hideSlider()}else{this.showSlider()}},getAllFrames:function(){var frames=[];var windowParentFrames=window.parent.frames;for(var i=0,len=windowParentFrames.length;i<len;i++){frames.push(windowParentFrames[i])}if(frames.length===0&&window.frames.length===0){frames[0]=window;return frames}return frames}};var supportMenu=null;function initializeSlideMenus(){supportMenu=new SlideMenu("supportContainer");supportMenu.init()}window.addEventListener("content-container-init",initializeSlideMenus)})(window);(function(){"use strict";var PAGE_DIRECTION=document.getElementsByTagName("html")[0].getAttribute("dir");var HTML_DIRECTIONS={LTR:"ltr",RTL:"rtl"};window.COMMON=window.COMMON||{};var NVData=window.COMMON.leftNavNVData||{};var securityToken=window.COMMON.securityToken||"";(function(ELEMENT){ELEMENT.matches=ELEMENT.matches||ELEMENT.mozMatchesSelector||ELEMENT.msMatchesSelector||ELEMENT.oMatchesSelector||ELEMENT.webkitMatchesSelector;ELEMENT.closest=ELEMENT.closest||function closest(selector){var element=this;while(element){if(element.matches(selector)){break}element=element.parentElement}return element}})(Element.prototype);RegExp.escape=function(text){text=text.replace("'","");return text.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")};var commander=function(){var preventSelectFromBreadcrumb=false;var elements={};function isEmptyObject(o){return!Object.keys(o).length}function elementInViewport(el){var rect=el.getBoundingClientRect(),windowWidth=window.innerWidth||document.documentElement.clientWidth,windowHeight=window.innerHeight||document.documentElement.clientHeight;return rect.top>=0&&rect.left>=0&&rect.bottom<=windowHeight&&rect.right<=windowWidth}function getCharCode(event){return event.keyCode||event.charCode||0}function addClass(els,newClass){var currentClasses,newClasses,el;if(els&&!(Array.isArray(els)||els.hasOwnProperty("callee"))){els=[els]}else if(els===void 0){els=[]}for(var i=0,len=els.length;i<len;i++){el=els[i];el=el.tagName!==void 0?el:document.getElementById(el);currentClasses=el.className||"";newClasses=currentClasses;if(newClasses.indexOf(newClass)===-1){newClasses+=" "+newClass}newClasses=newClasses.trim();if(el!==null&&newClasses!==currentClasses){el.className=newClasses}}}function removeClass(els,oldClass){var currentClasses,newClasses,el;if(els&&!(Array.isArray(els)||els.hasOwnProperty("callee"))){els=[els]}else if(els===void 0){els=[]}for(var i=0,len=els.length;i<len;i++){el=els[i];el=el.tagName!==void 0?el:document.getElementById(el);currentClasses=el.className||"";newClasses=currentClasses;while(newClasses.indexOf(oldClass)!==-1){newClasses=newClasses.replace(oldClass,"")}newClasses=newClasses.trim();if(el!==null&&newClasses!==currentClasses){el.className=newClasses}}}function hasClass(el,className){return el&&el.nodeType===1&&el.className.indexOf(className)>-1}function getY(el){var scrollTop,clientTop,box,y=0;if(!el){return y}var body=document.body;var docElem=document.documentElement;var haystack=el.ownerDocument.documentElement;var needle=el;var isInDocument=false;if(haystack&&needle&&(haystack.nodeType&&needle.nodeType)){if(haystack.contains&&haystack!==needle){isInDocument=haystack.contains(needle)}else if(haystack.compareDocumentPosition){isInDocument=!!(haystack.compareDocumentPosition(needle)&16)}}if(el.style.display!=="none"&&isInDocument){scrollTop=window.pageYOffset||docElem.scrollTop||body.scrollTop;clientTop=docElem.clientTop||body.clientTop||0;box=el.getBoundingClientRect();y=box.top+scrollTop-clientTop;y=Math.round(y)}return y}function getAncestorByClassName(el,className){if(!el){return null}var node=el.tagName!==void 0?el:document.getElementById(el);while(node=node.parentNode){if(hasClass(node,className)){return node}}return null}function getAncestorByTagName(el,tagName){if(!el){return null}var node=el.tagName!==void 0?el:document.getElementById(el);while(node=node.parentNode){if(node.tagName&&node.tagName.toUpperCase()===tagName.toUpperCase()){return node}}return null}function delegate(element,type,selector,callback){element.addEventListener(type,(function(event){if(event.target.closest(selector)){callback.call(element,event)}}))}var util={selectActivePageFromBreadcrumb:function(){var breadcrumb=document.getElementById("breadcrumbs_list");var listItem=breadcrumb.lastElementChild;var link=listItem.firstElementChild;var activeLink;if(commander.preventSelectFromBreadcrumb){commander.preventSelectFromBreadcrumb=false;return}do{if(link!==null){if(link.href.split("=")[1]==="main"){clearActivePageStyle();return}var breadCrumbUniqueKey=link.getAttribute("uniquekey"),pageLinks=elements.pageLinks;for(var i=0,len=pageLinks.length;i<len;i++){if(breadCrumbUniqueKey===pageLinks[i].getAttribute("uniquekey")){activeLink=pageLinks[i];break}}if(typeof activeLink==="undefined"){listItem=listItem.previousElementSibling;if(listItem){link=listItem.firstElementChild}}}}while(listItem&&typeof activeLink==="undefined");if(activeLink){selectActivePage(activeLink.parentNode)}else{clearActivePageStyle()}},selectActivePageFromPageIcons:function(link){var activeLink;if(link!==null){var pageIconUniqueKey=link.getAttribute("uniquekey");for(var i=0,len=elements.pageLinks.length;i<len;i++){if(pageIconUniqueKey===elements.pageLinks[i].getAttribute("uniquekey")){activeLink=elements.pageLinks[i];break}}}if(activeLink){selectActivePage(activeLink.parentNode);commander.preventSelectFromBreadcrumb=true}else{clearActivePageStyle()}},getAllFrames:function(){var frames=[],parentFrames=window.parent.frames;for(var i=0;i<parentFrames.length;i++){frames.push(parentFrames[i])}if(frames.length===0&&window.frames.length===0){frames[0]=window;return frames}return frames}};var searchIndexCache={};var keys={backspace:8,escape:27,up:38,down:40,right:39,left:37,home:36,macHome:115,end:35,macEnd:119,shiftAsterisk:56,asterisk:106,forwardslash:191,tab:9,grave:192};var NVDATA_ELEMENT_EXPANDED="1",NVDATA_ELEMENT_COLLAPSED="0",NVDATA_NAVIGATION_COLLAPSED="1",NVDATA_NAVIGATION_EXPANDED="0",HIGHLIGHTED_ITEM_CSS_CLASS="highlighted";var keyHandle={down:function(){var menuItems=elements.menuItems,highlightedItem=elements.highlightedItem,pageIndex=menuItems.indexOf(highlightedItem),nextValidNode;if(typeof pageIndex!=="undefined"&&pageIndex+1===menuItems.length){return}else if(pageIndex===-1||pageIndex+1>=menuItems.length){if(typeof pageIndex!=="undefined"){removeClass(menuItems[pageIndex],HIGHLIGHTED_ITEM_CSS_CLASS)}nextValidNode=keyHandle.util.verifyNextNode(menuItems[0],0);addClass(nextValidNode,HIGHLIGHTED_ITEM_CSS_CLASS);highlightedItem=nextValidNode;keyHandle.util.scrollDownIntoView(nextValidNode)}else{nextValidNode=keyHandle.util.verifyNextNode(menuItems[pageIndex+1],pageIndex+1);removeClass(menuItems[pageIndex],HIGHLIGHTED_ITEM_CSS_CLASS);addClass(nextValidNode,HIGHLIGHTED_ITEM_CSS_CLASS);highlightedItem=nextValidNode;keyHandle.util.scrollDownIntoView(nextValidNode)}elements.highlightedItem=highlightedItem;setFocusOnHighlightedItem(highlightedItem)},up:function(){var menuItems=elements.menuItems,highlightedItem=elements.highlightedItem,pageIndex=menuItems.indexOf(highlightedItem),previousValidNode;if(pageIndex<=0||typeof pageIndex==="undefined"){if(typeof pageIndex!=="undefined"){removeClass(menuItems[pageIndex],HIGHLIGHTED_ITEM_CSS_CLASS)}addClass(menuItems[0],HIGHLIGHTED_ITEM_CSS_CLASS);highlightedItem=menuItems[0]}else{previousValidNode=keyHandle.util.verifyPreviousNode(menuItems[pageIndex-1],pageIndex-1);removeClass(menuItems[pageIndex],HIGHLIGHTED_ITEM_CSS_CLASS);addClass(previousValidNode,HIGHLIGHTED_ITEM_CSS_CLASS);highlightedItem=previousValidNode;keyHandle.util.scrollUpIntoView(previousValidNode)}elements.highlightedItem=highlightedItem;setFocusOnHighlightedItem(highlightedItem)},shiftTab:function(){if(!keyHandle.util.isSearchBoxInFocus()){if(elements.highlightedItem){keyHandle.util.scrollUpIntoView(elements.highlightedItem)}}},tab:function(){if(!keyHandle.util.isSearchBoxInFocus()){if(elements.highlightedItem){keyHandle.util.scrollDownIntoView(elements.highlightedItem)}}},left:function(){if(!keyHandle.util.isSearchBoxInFocus()){var parentCategory=getAncestorByTagName(elements.highlightedItem,"li");if(parentCategory===null){return}if(PAGE_DIRECTION===HTML_DIRECTIONS.LTR){collapseCategory(parentCategory,true);keyHandle.util.highlightCategory(parentCategory)}else if(PAGE_DIRECTION===HTML_DIRECTIONS.RTL){expandCategory(parentCategory,true)}}},right:function(){if(!keyHandle.util.isSearchBoxInFocus()){var parentCategory=getAncestorByTagName(elements.highlightedItem,"li");if(parentCategory===null){return}if(PAGE_DIRECTION===HTML_DIRECTIONS.LTR){expandCategory(parentCategory,true)}else if(PAGE_DIRECTION===HTML_DIRECTIONS.RTL){collapseCategory(parentCategory,true);keyHandle.util.highlightCategory(parentCategory)}}},escape:function(){clearSearch()},home:function(){if(!keyHandle.util.isSearchBoxInFocus()){var menuItems=elements.menuItems,nextValidNode;clearHighlightedItem();var commanderHasActiveEl=getAncestorByClassName(document.activeElement,"mainCommandWrapper"),jumpUpHasActiveEl=getAncestorByClassName(document.activeElement,"jumpUp");if(commanderHasActiveEl!==null||jumpUpHasActiveEl!==null){nextValidNode=keyHandle.util.verifyNextNode(menuItems[0],0);addClass(nextValidNode,HIGHLIGHTED_ITEM_CSS_CLASS);elements.highlightedItem=nextValidNode;setFocusOnHighlightedItem(elements.highlightedItem)}}},end:function(){if(!keyHandle.util.isSearchBoxInFocus()){var menuItems=elements.menuItems,previousValidNode;clearHighlightedItem();var commanderHasActiveEl=getAncestorByClassName(document.activeElement,"mainCommandWrapper"),jumpUpHasActiveEl=getAncestorByClassName(document.activeElement,"jumpUp");if(commanderHasActiveEl!==null||jumpUpHasActiveEl!==null){if(menuItems.length>2){previousValidNode=keyHandle.util.verifyPreviousNode(menuItems[menuItems.length-2],menuItems.length-2);addClass(previousValidNode,HIGHLIGHTED_ITEM_CSS_CLASS);elements.highlightedItem=previousValidNode;setFocusOnHighlightedItem(elements.highlightedItem)}}}},asterisk:function(){if(!keyHandle.util.isSearchBoxInFocus()){var currState=getExpandedState();if(currState){var parentCategory=getAncestorByTagName(elements.highlightedItem,"li");collapseAll();if(parentCategory!==null){keyHandle.util.highlightCategory(parentCategory)}}else{expandAll()}}},grave:function(e){if(e){e.stopPropagation();e.preventDefault()}doNavExpandCollapse(e)},forwardslash:function(e){var modifier=e.ctrlKey;if(/Mac|iPod|iPhone|iPad/i.test(window.navigator.platform)){modifier=e.metaKey}if(modifier){var key=getCharCode(e);if(key===keys.forwardslash){expandNavigation();searchFocus();e.stopPropagation();e.preventDefault()}}},util:{scrollDownIntoView:function(menuItem){var frameHeight=document.documentElement.clientHeight-elements.searchContainerOffsetHeight,menuItemY=getY(menuItem)-elements.searchContainerOffsetHeight,menuItemHeight=menuItem.offsetHeight,frameScrollRatio=Math.floor(frameHeight*.75);if(menuItemY>frameScrollRatio){elements.mainCommandWrapper.scrollTop+=menuItemHeight}},scrollUpIntoView:function(menuItem){var frameHeight=document.documentElement.clientHeight-elements.searchContainerOffsetHeight,menuItemY=getY(menuItem)-elements.searchContainerOffsetHeight,menuItemHeight=menuItem.offsetHeight,frameScrollRatio=Math.floor(frameHeight*.25);if(Math.abs(menuItemY)<frameScrollRatio){elements.mainCommandWrapper.scrollTop-=menuItemHeight}},verifyNextNode:function(nextNode,nextNodeIndex){var menuItems=elements.menuItems,pageHidden=hasClass(nextNode,"hide"),subHidden=hasClass(nextNode.parentNode,"hide"),catHidden=hasClass(nextNode.parentNode.parentNode,"collapsed");if(typeof nextNode==="undefined"){return menuItems[0]}else if(pageHidden||subHidden||catHidden){return this.verifyNextNode(menuItems[nextNodeIndex+1],nextNodeIndex+1)}else{return menuItems[nextNodeIndex]}},verifyPreviousNode:function(previousNode,previousNodeIndex){var menuItems=elements.menuItems,pageHidden=hasClass(previousNode,"hide"),subHidden=hasClass(previousNode.parentNode,"hide"),catHidden=hasClass(previousNode.parentNode.parentNode,"collapsed");if(typeof previousNode==="undefined"){return menuItems[0]}else if(pageHidden||subHidden||catHidden){return this.verifyPreviousNode(menuItems[previousNodeIndex-1],previousNodeIndex-1)}else{return menuItems[previousNodeIndex]}},preventArrowDefault:function(e){if(getCharCode(e)===keys.down||getCharCode(e)===keys.up){e.stopPropagation();e.preventDefault()}},highlightCategory:function(category){var menuItems=elements.menuItems,pageIndex=menuItems.indexOf(elements.highlightedItem);removeClass(menuItems[pageIndex],HIGHLIGHTED_ITEM_CSS_CLASS);setFocusOnHighlightedItem(category);var catHeader=category.querySelector("[data-page-type]");elements.highlightedItem=catHeader;addClass(catHeader,HIGHLIGHTED_ITEM_CSS_CLASS)},isSearchBoxInFocus:function(){var activeElement=document.activeElement;if(activeElement&&activeElement===elements.quickJump){return true}return false}}};var keyDownListeners=[{key:keys.down,callback:keyHandle.down},{key:keys.up,callback:keyHandle.up},{key:keys.left,callback:keyHandle.left},{key:keys.right,callback:keyHandle.right},{key:keys.home,callback:keyHandle.home},{key:keys.macHome,callback:keyHandle.home},{key:keys.end,callback:keyHandle.end},{key:keys.macEnd,callback:keyHandle.end},{key:keys.tab,callback:keyHandle.shiftTab,shift:true},{key:keys.tab,callback:keyHandle.tab}];var keyUpListeners=[{key:keys.escape,callback:keyHandle.escape}];function triggerOnKeyDownMatch(event){var iterator;var code=getCharCode(event);for(var i=0,len=keyDownListeners.length;i<len;i++){iterator=keyDownListeners[i];if(iterator.shift===void 0){iterator.shift=false}if(code===iterator.key&&event.shiftKey===iterator.shift){iterator.callback.apply(event);break}}}function triggerOnKeyUpMatch(event){var iterator=keyUpListeners[0];var code=getCharCode(event);if(code===iterator.key){iterator.callback.apply(event)}}function initialize(){elements={quickJump:document.getElementById("quickJump"),searchAction:document.getElementById("searchAction"),toggleAllControl:document.getElementById("toggleAll"),list:document.getElementById("mainCommand"),jumpUpLink:document.getElementById("jumpUpLink"),highlightedItem:null,body:document.body,collapseNavLink:document.getElementById("mobileMenuCollapseLink"),pageLinks:[]};elements.topFrameWrapper=document.querySelector(".topFrameWrapper");elements.topFrameWrapperOffsetHeight=elements.topFrameWrapper&&elements.topFrameWrapper.offsetHeight||0;elements.commandWrapper=document.querySelector(".commandContainer");elements.mainCommandWrapper=document.querySelector(".mainCommandWrapper");elements.menuItems=Array.prototype.slice.call(elements.list.querySelectorAll("[data-page-type]"));elements.menuItems.push(elements.jumpUpLink.parentNode);elements.categories=Array.prototype.slice.call(elements.list.querySelectorAll(".category"));elements.categoryHeaders=elements.menuItems.filter((function(item){return item.getAttribute("data-page-type")==="category"}));elements.categoryHeaderLinks=Array.prototype.slice.call(elements.list.querySelectorAll("[data-page-type='category'] > a"));elements.pages=Array.prototype.slice.call(elements.list.querySelectorAll("ul.sub li[data-page-type='feature']"));elements.categoryPageLinks=Array.prototype.slice.call(elements.list.querySelectorAll("ul.sub > li[data-page-type='feature'] > a"));elements.expandAll=elements.toggleAllControl.querySelector("a.expand");elements.collapseAll=elements.toggleAllControl.querySelector("a.collapse");elements.searchContainer=document.querySelector(".commandContainer > div.searchContainer");elements.searchContainerOffsetHeight=elements.searchContainer.offsetHeight;elements.pageLinks.push.apply(elements.pageLinks,elements.categoryHeaderLinks);elements.pageLinks.push.apply(elements.pageLinks,elements.categoryPageLinks);elements.menuOffsetHeightDeductions=elements.searchContainerOffsetHeight+elements.topFrameWrapperOffsetHeight;elements.activePage=null;if(elements.quickJump.value){elements.quickJump.value=""}delegate(elements.list,"click","li.category .categoryHeader .actionIconContainer",doExpandCollapse);elements.expandAll.addEventListener("click",expandAll);elements.collapseAll.addEventListener("click",collapseAll);elements.expandAll.addEventListener("focus",blurHandler);elements.categoryPageLinks.forEach((function(category){category.addEventListener("click",pageLinkClickHandler);category.addEventListener("focus",focusHandler)}));elements.categoryHeaderLinks.forEach((function(categoryHeader){categoryHeader.addEventListener("focus",focusHandler)}));elements.jumpUpLink.addEventListener("focus",focusHandler);elements.jumpUpLink.addEventListener("blur",blurHandler);elements.jumpUpLink.addEventListener("click",jumpToTop);elements.searchAction.addEventListener("click",clearSearch);elements.quickJump.addEventListener("focus",clearHighlightedItem);elements.commandWrapper.addEventListener("keydown",keyHandle.util.preventArrowDefault);elements.quickJump.addEventListener("keyup",searchTextHandler);elements.commandWrapper.addEventListener("keyup",triggerOnKeyUpMatch);elements.commandWrapper.addEventListener("keydown",triggerOnKeyDownMatch);document.addEventListener("keydown",keyHandle.forwardslash);if(elements.collapseNavLink){elements.collapseNavLink.addEventListener("click",doNavExpandCollapse)}document.addEventListener("keydown",(function(event){var tag=event.target.tagName.toLowerCase();if(tag==="input"||tag==="select"||tag==="textarea"){return}var code=getCharCode(event);if(code===keys.asterisk||code===keys.shiftAsterisk){keyHandle.asterisk.apply(this,event);return false}}));document.addEventListener("keyup",(function(event){var tag=event.target.tagName.toLowerCase();if(tag==="input"||tag==="select"||tag==="textarea"){return}var code=getCharCode(event);if(code===keys.grave){keyHandle.grave.apply(this,event);return false}}));if(screen.width<=768){collapseNavigation()}else{collapseNavigationByNVData()}collapseCommand();searchFocus();buildIndex(elements.pages,"idgen");if(storedSearchTermExists()){if(storedUserNameExists()){if(typeof window.COMMON.userName!=="undefined"){if(sessionStorage.userName===window.COMMON.userName){elements.quickJump.value=sessionStorage.searchTerm;var result=searchMenu(elements.quickJump.value);searchResults(result)}else{delete sessionStorage.userName;delete sessionStorage.searchTerm}}}}if(elements.collapseNavLink){util.selectActivePageFromBreadcrumb()}}function storedSearchTermExists(){if(typeof sessionStorage.searchTerm!=="undefined"){if(sessionStorage.searchTerm!==""){return true}}return false}function storedUserNameExists(){if(typeof sessionStorage.userName!=="undefined"){if(sessionStorage.userName!==""){return true}}return false}function searchFocus(){elements.quickJump.focus();if(elements.quickJump.value!==""){elements.quickJump.value=elements.quickJump.value}}function pageLinkClickHandler(){var uniqueKey=this.getAttribute("uniquekey");var isInPlugin=/^plugins_/.test(uniqueKey);if(isInPlugin){var parentCategory=getAncestorByClassName(this,"category");if(parentCategory&&parentCategory.id==="Plugins"){commander.preventSelectFromBreadcrumb=true}else{commander.preventSelectFromBreadcrumb=false}}selectActivePage(this.parentNode)}function focusHandler(){var menuItems=elements.menuItems,highlightedItem=this.parentNode,pageIndex=menuItems.indexOf(highlightedItem);if(highlightedItem===elements.highlightedItem){return}clearHighlightedItem();if(pageIndex!==-1&&pageIndex+1<=menuItems.length){addClass(highlightedItem,HIGHLIGHTED_ITEM_CSS_CLASS);elements.highlightedItem=highlightedItem}}function blurHandler(){clearHighlightedItem()}function selectActivePage(activeEl){if(activeEl===elements.activePage){return true}var menuItems=elements.menuItems,highlightedItem=activeEl,pageIndex=menuItems.indexOf(activeEl);if(typeof pageIndex!=="undefined"&&pageIndex>=0){_setActivePageStyle(activeEl);clearHighlightedItem();addClass(highlightedItem,HIGHLIGHTED_ITEM_CSS_CLASS);setFocusOnHighlightedItem(highlightedItem);elements.highlightedItem=highlightedItem;elements.activePage=activeEl}}function _setActivePageStyle(activeLinkEl){if(typeof activeLinkEl!=="undefined"&&activeLinkEl.tagName!=="A"){activeLinkEl=activeLinkEl.querySelector("a")}if(activeLinkEl&&activeLinkEl.target===""){if(activeLinkEl.parentNode.getAttribute("data-page-type")==="feature"){var parentCategory=getAncestorByClassName(activeLinkEl,"category");if(parentCategory&&hasClass(parentCategory,"collapsed")){removeClass(parentCategory,"collapsed");addClass(parentCategory,"expanded")}}clearActivePageStyle();window.setTimeout((function(){addClass(activeLinkEl.parentNode,"activePage")}),1);if(!elementInViewport(activeLinkEl)){var menuItemY=Math.abs(getY(activeLinkEl))-elements.menuOffsetHeightDeductions;elements.mainCommandWrapper.scrollTop=Math.abs(menuItemY)}}}function clearActivePageStyle(){var activePage=elements.list.querySelector(".activePage");if(activePage!==null){removeClass(activePage,"activePage")}clearHighlightedItem()}function getExpandedState(){var searchIsActive=elements.quickJump.value===""?false:true;var nVDataIsEmpty=isEmptyObject(NVData);var match;if(searchIsActive||nVDataIsEmpty){var categoryList=elements.categories.filter((function(item){return!hasClass(item,"hide")}));for(var i=0;i<categoryList.length;i++){if(hasClass(categoryList[i],"expanded")){return true}}}else{for(var nvd in NVData){if(NVData.hasOwnProperty(nvd)){match=nvd.match(/^whmcommand:(.*)/);if(match.length>0){if(NVData[nvd]===NVDATA_ELEMENT_EXPANDED&&document.getElementById(match[1])!==null){return true}}}}}return false}function toggleTitle(category){var actionIconContainer;var categoryID=typeof category==="string"?category:category.id;var categoryEl=document.getElementById(categoryID+"Header");if(categoryEl){actionIconContainer=categoryEl.querySelectorAll("div.actionIconContainer");for(var i=0,len=actionIconContainer.length;i<len;i++){actionIconContainer[i].title=actionIconContainer[i].title==="Expand"?"Collapse":"Expand"}}return actionIconContainer}function collapseCategory(category,report){if(hasClass(category,"expanded")){removeClass(category,"expanded");addClass(category,"collapsed");toggleTitle(category);if(report){setnvdata("whmcommand:"+category.id,NVDATA_ELEMENT_COLLAPSED)}return true}return false}function expandCategory(category,report){if(hasClass(category,"collapsed")){removeClass(category,"collapsed");addClass(category,"expanded");toggleTitle(category);if(report){setnvdata("whmcommand:"+category.id,NVDATA_ELEMENT_EXPANDED)}return true}return false}function hideCategory(category){addClass(category,"hide")}function showCategory(category){removeClass(category,"hide")}function doExpandCollapse(event){var parentCategory=event.target.closest("li");if(hasClass(parentCategory,"expanded")){collapseCategory(parentCategory,true)}else{expandCategory(parentCategory,true)}}function collapseCommand(){var nvset={};for(var nvd in NVData){if(nvd.match(/^whmcommand:/)){if(NVData[nvd]===NVDATA_ELEMENT_COLLAPSED){var categoryID=nvd.split(":")[1];collapseCategory(document.getElementById(categoryID),false)}}}}function doNavExpandCollapse(){if(hasClass(elements.body,"nav-collapsed")){expandNavigation();window.dispatchEvent(new CustomEvent("toggle-navigation",{detail:"expand"}))}else{collapseNavigation();window.dispatchEvent(new CustomEvent("toggle-navigation",{detail:"collapse"}))}}function _mobileCategoryHeaderClicked(e){e.stopPropagation();e.preventDefault();expandNavigation();var parentCategory=getAncestorByTagName(e.target,"li");if(parentCategory===null){return}expandCategory(parentCategory,true);var menuItemY=Math.abs(getY(parentCategory))-elements.menuOffsetHeightDeductions;elements.mainCommandWrapper.scrollTop=Math.abs(menuItemY)}function expandNavigation(){if(hasClass(elements.body,"nav-collapsed")){removeClass(elements.body,"nav-collapsed");elements.categoryHeaderLinks.forEach((function(element){element.removeEventListener("click",_mobileCategoryHeaderClicked)}));searchFocus();setnvdata("whmcommand:navigation",NVDATA_NAVIGATION_EXPANDED);return true}return false}function collapseNavigation(){if(!hasClass(elements.body,"nav-collapsed")){addClass(elements.body,"nav-collapsed");elements.categoryHeaderLinks.forEach((function(element){element.addEventListener("click",_mobileCategoryHeaderClicked)}));setnvdata("whmcommand:navigation",NVDATA_NAVIGATION_COLLAPSED);return true}return false}function collapseNavigationByNVData(){for(var nvd in NVData){if(nvd==="whmcommand:navigation"){if(NVData[nvd]===NVDATA_NAVIGATION_COLLAPSED){collapseNavigation()}}}}function expandAll(){var categories=elements.categories,nvset={};for(var i=0,len=categories.length;i<len;i++){if(expandCategory(categories[i],false)){nvset["whmcommand:"+categories[i].id]=NVDATA_ELEMENT_EXPANDED}}if(!isEmptyObject(nvset)){multisetnvdata(nvset)}}function collapseAll(){var categories=elements.categories,nvset={};for(var i=0,len=categories.length;i<len;i++){if(collapseCategory(categories[i],false)){nvset["whmcommand:"+categories[i].id]=NVDATA_ELEMENT_COLLAPSED}}if(!isEmptyObject(nvset)){multisetnvdata(nvset)}}function multisetnvdata(keypairs){var postdata="";for(var nvkey in keypairs){if(keypairs.hasOwnProperty(nvkey)){NVData[nvkey]=keypairs[nvkey];postdata+="key="+encodeURIComponent(nvkey)+"&value="+encodeURIComponent(keypairs[nvkey])+"&"}}var request=new XMLHttpRequest;request.open("POST",securityToken+"/json-api/nvset",true);request.send(postdata)}function setnvdata(key,value){NVData[key]=value;var request=new XMLHttpRequest;request.open("GET",securityToken+"/json-api/nvset?key="+encodeURIComponent(key)+"&value="+encodeURIComponent(value),true);request.send()}function clearHighlightedItem(){if(elements.hightlightedItem!==null){var menuItems=elements.menuItems,pageIndex=menuItems.indexOf(elements.highlightedItem);removeClass(menuItems[pageIndex],HIGHLIGHTED_ITEM_CSS_CLASS);elements.highlightedItem=null}}function setFocusOnHighlightedItem(highlightedItem){if(highlightedItem!==null){var highlightedLink=highlightedItem.querySelector("a");if(highlightedLink){highlightedLink.focus()}}}function searchTextHandler(e){clearHighlightedItem();if(getCharCode(e)===keys.down||getCharCode(e)===keys.escape){return}var results=searchMenu(elements.quickJump.value);searchResults(results)}function searchMenu(searchTerm){var emptySpace=/^\s+$/g.test(searchTerm),results=[];if(!emptySpace){sessionStorage.searchTerm=searchTerm||"";sessionStorage.userName=window.COMMON.userName||"";var term=RegExp.escape(searchTerm),matchCount=0;if(term.length){removeClass(elements.searchAction,"search");addClass(elements.searchAction,"cancel");for(var pageID in searchIndexCache){if(searchIndexCache.hasOwnProperty(pageID)){var re=new RegExp(term,"ig");if(searchIndexCache[pageID].match(re)){results.push(pageID);matchCount++}else{addClass(pageID,"hide")}}}if(matchCount<=0){addClass(elements.list,"hideMainCommand")}else{removeClass(elements.list,"hideMainCommand")}}else{clearSearch()}}return results}function searchResults(termArr){if(termArr.length){for(var i=0,len=elements.categories.length;i<len;i++){hideCategory(elements.categories[i])}removeClass(termArr,"hide");for(i=0,len=termArr.length;i<len;i++){var matchedCategory=getAncestorByTagName(termArr[i],"li");if(matchedCategory){showCategory(matchedCategory);expandCategory(matchedCategory,false)}}}}function clearSearch(){var categories=elements.categories,activePage=elements.activePage;clearHighlightedItem();removeClass(elements.searchAction,"cancel");addClass(elements.searchAction,"search");removeClass(elements.pages,"hide");removeClass(elements.pages,"even");removeClass(elements.list,"hideMainCommand");for(var i=0,len=categories.length;i<len;i++){showCategory(categories[i])}collapseCommand();elements.quickJump.value="";searchFocus();if(activePage!==null&&activePage.parentNode.getAttribute("data-page-type")==="feature"){var parentCategory=getAncestorByClassName(activePage,"category");if(parentCategory&&hasClass(parentCategory,"collapsed")){removeClass(parentCategory,"collapsed");addClass(parentCategory,"expanded")}}if(storedSearchTermExists()){delete sessionStorage.searchTerm}}function buildIndex(pages,prefix){for(var i=0,len=pages.length;i<len;i++){pages[i].id=prefix+i;searchIndexCache[pages[i].id]=pages[i].getAttribute("searchtext").replace("’","")}}function jumpToTop(){clearHighlightedItem();elements.highlightedItem=elements.menuItems[elements.menuItems.length];keyHandle.down()}return{initialize:initialize,elements:elements,keyHandle:keyHandle,clearSearch:clearSearch,searchIndexCache:searchIndexCache,searchMenu:searchMenu,util:util,preventSelectFromBreadcrumb:preventSelectFromBreadcrumb,elementInViewport:elementInViewport,getY:getY,doNavExpandCollapse:doNavExpandCollapse}}();window.addEventListener("content-container-init",commander.initialize);window.commander=commander})();
Back to Directory File Manager