Jake Vanderwerf
7 days ago 46d681c6b825d21b3f698d793c4e630c687d90ad
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
window.details = document.querySelectorAll('details');
window.toggles = document.querySelectorAll('.toggle-details');
 
document.addEventListener('click', (e) => {
    if (e.target.classList.contains('toggle-details')) {
        e.target.classList.toggle('open');
        let on = e.target.classList.contains('open');
        let section = e.target.dataset.toggle;
        if (section === 'all') {
            toggleToggles(on);
        }
 
        let span = e.target.querySelector('span');
        span.textContent = (on) ? 'Close': 'Open';
        toggleDetails(section, on);
    }
});
 
 
console.log(window.details);
function toggleDetails(name, toggle) {
    if (name === 'all') {
        console.log('Toggling all!');
        window.details.forEach(detail => {
            console.log(detail);
            detail.open = toggle;
        });
    } else {
        for (let detail of window.details) {
            if (detail.dataset.section === name) {
                detail.open = toggle;
            }
        }
    }
}
 
function toggleToggles(on) {
    window.toggles.forEach(toggle => {
        if (toggle.dataset.toggle !== 'all') {
            toggle.querySelector('span').textContent = (on) ? 'Close' : 'Open';
        }
    });
}