MediaWiki:Common.js
From Dreams Knowledge Platform
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
/* Any JavaScript here will be loaded for all users on every page load. */
const KEY = 'dreams-progress';
const done = new Set(JSON.parse(localStorage.getItem(KEY) || '[]'));
document.querySelectorAll('.sump-prereq__item').forEach(item => {
const a = item.querySelector('a[href]');
const slug = a && new URL(a.href, location.href).pathname.split('/').pop();
if (slug && done.has(slug)) item.classList.add('sump-prereq__item--done');
item.querySelector('.sump-prereq__box').addEventListener('click', () => {
item.classList.toggle('sump-prereq__item--done');
done.has(slug) ? done.delete(slug) : done.add(slug);
localStorage.setItem(KEY, JSON.stringify([...done]));
});
});