parent
475411bb4a
commit
73500274ec
@ -9,7 +9,7 @@
|
||||
<p .alert .alert-danger>Das System ist noch nicht produktiv einsetzbar
|
||||
|
||||
<hr>
|
||||
<div .js-show-hide>
|
||||
<div>
|
||||
<h2 .js-show-hide__toggle>Teilweise funktionierende Abschnitte
|
||||
|
||||
<ul>
|
||||
@ -27,8 +27,8 @@
|
||||
<a href=@{SubmissionListR}>Dateien hochladen und abrufen
|
||||
|
||||
<hr>
|
||||
<div .js-show-hide data-collapsed=true>
|
||||
<h2 .js-show-hide__toggle>Tabellen
|
||||
<div>
|
||||
<h2 .js-show-hide__toggle data-collapsed=true>Tabellen
|
||||
<table .js-sortable>
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
@ -9,7 +9,9 @@
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
|
||||
var elements = Array.from(document.querySelectorAll('.js-show-hide__toggle')),
|
||||
toggles = [];
|
||||
toggles = [],
|
||||
path = new URL(window.location.href).pathname;
|
||||
|
||||
|
||||
function addEventHandler(el) {
|
||||
el.addEventListener('click', function elClickListener() {
|
||||
@ -21,23 +23,28 @@ document.addEventListener('DOMContentLoaded', function() {
|
||||
}
|
||||
|
||||
function updateLocalStorage(id) {
|
||||
let jsonToggles = JSON.stringify(toggles.map(t => {
|
||||
var lsData = getStateFromLocalStorage();
|
||||
lsData[path] = toggles.map(t => {
|
||||
return {id: t.index, collapsed: t.collapsed};
|
||||
}));
|
||||
window.localStorage.setItem('showHidesToggles', jsonToggles);
|
||||
});
|
||||
window.localStorage.setItem('showHidesToggles', JSON.stringify(lsData));
|
||||
}
|
||||
|
||||
function collapsedStateInLocalStorage(id, fallBack) {
|
||||
let lsData = JSON.parse(window.localStorage.getItem('showHidesToggles'));
|
||||
if (lsData[id]) {
|
||||
return lsData[id].collapsed;
|
||||
var lsData = getStateFromLocalStorage();
|
||||
if (lsData[path] && lsData[path][id] && lsData[path][id].id === id) {
|
||||
return lsData[path][id].collapsed;
|
||||
}
|
||||
return fallBack;
|
||||
}
|
||||
|
||||
function getStateFromLocalStorage() {
|
||||
return JSON.parse(window.localStorage.getItem('showHidesToggles')) || {};
|
||||
}
|
||||
|
||||
elements.forEach(function(el, i) {
|
||||
el.dataset.index = i;
|
||||
var coll = collapsedStateInLocalStorage(i, el.parentElement.dataset.collapsed === 'true');
|
||||
var coll = collapsedStateInLocalStorage(i, el.dataset.collapsed === 'true');
|
||||
if (coll) {
|
||||
el.parentElement.classList.add('js-show-hide--collapsed')
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user