MediaWiki:Common.js: Difference between revisions

From Hazeron Wiki
Jump to navigation Jump to search
mNo edit summary
(Removed temporary dark mode fix)
 
(17 intermediate revisions by the same user not shown)
Line 26: Line 26:
   t.classList.toggle('collapsed-icon');
   t.classList.toggle('collapsed-icon');
}
}
;(function () {
    $('#pt-darkmode a').on('click', function (e) {
        e.preventDefault();
        let darkmode = /\bdarkmode=1\b/.test(document.cookie);
        if (darkmode) {
            document.body.classList.remove('darkmode');
            document.cookie = `darkmode=; Path=/; Max-Age=0;`
        } else {
            document.body.classList.add('darkmode');
            document.cookie = 'darkmode=1; Path=/;'
        }
    })
})()

Latest revision as of 15:08, 16 April 2024

/* Any JavaScript here will be loaded for all users on every page load. */

/* Implements section-collapse and stop-section-collapse */
var collapsing = document.querySelectorAll(".section-collapse");
if (collapsing.length>0) {
    for (var i = 0; i < collapsing.length ; i++) {
        collapsing.item(i).addEventListener('click',collapseHandler,false);
        if (collapsing.item(i).classList.contains("collapsed"))
            collapseHandlerThis(collapsing.item(i));
    }
}

function collapseHandler() {
   collapseHandlerThis(this);
}
function collapseHandlerThis(t) {
   var c = t.parentNode.parentNode.nextSibling;
   while (c) {
      if (c.classList) {
        if (c.classList.contains("section-collapse") || c.classList.contains("stop-section-collapse"))
           break;
        c.classList.toggle('section-collapsed');
      }
      c = c.nextSibling;
   }
   t.classList.toggle('collapsed-icon');
}