MediaWiki:Common.js
Appearance
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)
- Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5.
/* Any JavaScript here will be loaded for all users on every page load. */
mw.loader.using(['mediawiki.util']).then(function () {
function applyFormatting() {
const container = document.querySelector("#ns-tree");
if (!container) return;
const items = container.querySelectorAll("li");
// If nothing found, try again
if (items.length === 0) {
setTimeout(applyFormatting, 300);
return;
}
items.forEach(function (li) {
const link = li.querySelector("a");
if (!link) return;
const full = link.textContent;
// Remove namespace
let clean = full.replace(/^Drupal:/, "");
// Count depth
const depth = (clean.match(/\//g) || []).length;
// Get last part
const label = clean.split("/").pop();
// Apply label
link.textContent = label;
// Apply indentation
li.style.marginLeft = (depth * 20) + "px";
// Style top level
if (depth === 0) {
link.style.fontWeight = "bold";
li.style.marginTop = "8px";
}
});
}
// Start after page load
$(applyFormatting);
});
$(function() {
mw.hook('wikipage.content').add(function() {
var pageId = mw.config.get('wgArticleId');
// Skip if there's no valid page ID or if it's already added
if (!pageId || pageId <= 0 || $('#mw-print-pageid').length > 0) {
return;
}
// 1. Add it to the live webpage layout (next to last edited date)
var $lastMod = $('#footer-info-lastmod');
if ($lastMod.length) {
var $screenId = $('<span>')
.attr('id', 'mw-print-pageid')
.text(' (Page ID: ' + pageId + ')');
$lastMod.append($screenId);
}
// 2. Add it to the printable layout (next to the oldid footer text)
var $printFooter = $('.printfooter');
if ($printFooter.length) {
var $printId = $('<div>')
.addClass('mw-print-only-pageid')
.css('margin-top', '5px')
.text('Page ID: ' + pageId);
$printFooter.append($printId);
}
});
});