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. */
(function () {
console.log("Running common.js code");
function slugifyCategory(cat) {
// Turn category names into a safe CSS class suffix
return String(cat)
.trim()
.toLowerCase()
.replace(/_/g, '-')
.replace(/\s+/g, '-')
.replace(/[^a-z0-9-]/g, '');
}
function addCategoryClasses() {
console.log("Running addCategoryClasses from wikipage.content hook");
// MediaWiki provides categories in config on most page views
const cats = mw.config.get('wgCategories');
console.log("addCategoryClasses, got categories:", cats);
if (!Array.isArray(cats) || !cats.length) return;
cats.forEach(function (cat) {
var slug = slugifyCategory(cat);
if (slug) document.body.classList.add('cat-' + slug);
});
}
// Run on initial load and after partial page updates
mw.hook('wikipage.content').add(addCategoryClasses);
})();