23 lines
765 B
JavaScript
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');
|
|
});
|
|
});
|
|
});
|
|
})();
|