Files
drupal-module-archive-tree/js/archive_tree.js

23 lines
765 B
JavaScript

(function () {
// Wait for DOM ready
document.addEventListener('DOMContentLoaded', function () {
document.querySelectorAll('.archive-tree-year').forEach(function (summary) {
var details = summary.parentElement;
var year = summary.querySelector('a')?.textContent?.trim();
if (!year) return;
var key = 'archive_tree_year_' + year;
// Restore state
var open = localStorage.getItem(key);
if (open === 'true') {
details.setAttribute('open', '');
} else if (open === 'false') {
details.removeAttribute('open');
}
// Listen for toggle
details.addEventListener('toggle', function () {
localStorage.setItem(key, details.open ? 'true' : 'false');
});
});
});
})();