HEX
Server: Microsoft-IIS/8.5
System: Windows NT YDAWBH120 6.3 build 9600 (Windows Server 2012 R2 Standard Edition) AMD64
User: tentjecom_web (0)
PHP: 7.4.14
Disabled: NONE
Upload Files
File: D:/HostingSpaces/pietvanmierlo/stempelbv.nl/resources/js/kms/sidebarMenuActivator.js
document.addEventListener('DOMContentLoaded', function() {
    let activeListItem = document.querySelector('#sidebar .navigation li.active');

    //Make parent menu items (li with class has-sub-items) also active
    function makeParentListItemsActiveIfHasClassHasSubItems(liElement)
    {
        let parent = liElement.parentElement ? liElement.parentElement : liElement.parentNode; // Stupid IE11
        if(parent.classList.contains('has-sub-items') && parent.tagName === "LI") {
            parent.classList.add('active');
            makeParentListItemsActiveIfHasClassHasSubItems(parent);
        }
    }

    if(activeListItem) {
        makeParentListItemsActiveIfHasClassHasSubItems(activeListItem);
    }

    //Make site list items openable by toggling a class tot them when clicked
    let siteListItems = document.querySelectorAll('#sidebar .navigation .has-sub-items');
    let siteListItemsLength = siteListItems.length;
    for(let i = 0; i < siteListItemsLength; i++){
        let siteListItem = siteListItems[i];

        siteListItem.addEventListener('click', function (ev) {
            this.classList.toggle('active');
            makeParentListItemsActiveIfHasClassHasSubItems(this);
            ev.stopImmediatePropagation();
        });
    }
});