Add options & state around expand/collapse

This commit is contained in:
2026-01-23 22:03:08 -06:00
parent c16a1e6d7e
commit b08a8520f1
3 changed files with 53 additions and 3 deletions

22
js/archive_tree.js Normal file
View File

@@ -0,0 +1,22 @@
(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');
});
});
});
})();