File: D:/HostingSpaces/SBogers10/ste.komma.pro/resources/js/components/toggleHandler.js
/* ==========================================================================
Navigation handler
- Handles the showing and hiding of the overlay-menu component which has the proper classes.
========================================================================== */
const ToggleHandler = {
init: function () {
const toggleTriggers = document.querySelectorAll('.js-toggle-trigger');
const toggleTriggersCount = toggleTriggers.length;
if(isset(toggleTriggers) && toggleTriggersCount > 0){
for(let i = 0; i < toggleTriggersCount; i++){
const toggleTrigger = toggleTriggers[i];
ToggleHandler.initToggle(toggleTrigger);
}
}
},
initToggle: function (toggleTrigger) {
toggleTrigger.addEventListener('click', ToggleHandler.adjustToggle, false);
},
adjustToggle: function (event) {
const id = event.currentTarget.getAttribute('data-toggle-id');
const targetArray = [].slice.call(document.querySelectorAll('.js-toggle-target'));
let target = null;
for (var i = 0; i < targetArray.length; i++) {
if(id === targetArray[i].getAttribute('data-toggle-id')){
target = targetArray[i];
}
}
// Bail if toggle doesn't exist
if (!target) return;
// If the toggle is already active, collapse it and quit
event.currentTarget.classList.toggle('is-active');
}
};
ToggleHandler.init();