/** * AKSRT Dropdown Menus — post-meta only. * Header user box uses CSS hover (.navbar-top .sub-menu) per zibll contract. */ (function () { "use strict"; function initPostDropMeta() { document.querySelectorAll('.post-drop-meta').forEach(function (wrap) { if (!wrap || wrap.dataset.aksrtDropMetaBound === '1') return; var trigger = wrap.querySelector('.post-drop-meta__toggle'); var menu = wrap.querySelector('.post-drop-meta__menu'); if (!trigger || !menu) return; wrap.dataset.aksrtDropMetaBound = '1'; function close() { wrap.classList.remove('is-open'); trigger.setAttribute('aria-expanded', 'false'); menu.setAttribute('aria-hidden', 'true'); } trigger.addEventListener('click', function (e) { e.stopPropagation(); var open = !wrap.classList.contains('is-open'); document.querySelectorAll('.post-drop-meta.is-open').forEach(function (other) { if (other !== wrap) { other.classList.remove('is-open'); var t = other.querySelector('.post-drop-meta__toggle'); var m = other.querySelector('.post-drop-meta__menu'); if (t) t.setAttribute('aria-expanded', 'false'); if (m) m.setAttribute('aria-hidden', 'true'); } }); wrap.classList.toggle('is-open', open); trigger.setAttribute('aria-expanded', open ? 'true' : 'false'); menu.setAttribute('aria-hidden', open ? 'false' : 'true'); }); document.addEventListener('click', function (e) { if (!wrap.contains(e.target)) close(); }); document.addEventListener('keydown', function (e) { if (e.key === 'Escape') close(); }); }); } if (window.AksrtFrontend && typeof window.AksrtFrontend.register === 'function') { window.AksrtFrontend.register('aksrt-post-drop-meta', function () { initPostDropMeta(); }); } else if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', initPostDropMeta); } else { initPostDropMeta(); } })();