MediaWiki:Common.js
Version vom 7. November 2025, 18:45 Uhr von Rettungsdienstblog.eu (Diskussion | Beiträge)
Hinweis: Leere nach dem Veröffentlichen den Browser-Cache, um die Änderungen sehen zu können.
- Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
- Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
- Internet Explorer/Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
- Opera: Strg+F5
/* Das folgende JavaScript wird für alle Benutzer geladen. */
console.log('[Common.js] geladen');
mw.loader.using('mediawiki.util').then(() => mw.util.addPortletLink('p-tb', mw.util.getUrl('Special:RecentChanges'), 'Test-Link geladen'));
// Neueste Beiträge (3 neue Seiten) in die linke Sidebar einfügen – skin-sicher
$.when( mw.loader.using( [ 'mediawiki.util', 'mediawiki.api' ] ), $.ready ).then( function () {
// Wohin einhängen? 'p-tb' (Werkzeuge) gibt es in Vector/Timeless/MonoBook fast immer.
var anchorId = document.getElementById('p-tb') ? '#p-tb' : '#p-navigation';
// Eigene Portlet-Box anlegen (Skin entscheidet über genaue Darstellung)
var portletId = 'p-newpages';
var portletEl = mw.util.addPortlet( portletId, 'Neueste Beiträge', anchorId );
if ( !portletEl ) {
// Notfall: Wenn auch das nicht geht, gar nicht weitermachen
return;
}
var api = new mw.Api();
api.get({
action: 'query',
list: 'recentchanges',
rctype: 'new',
rcprop: 'title|timestamp',
rcnamespace: 0, // Hauptnamensraum (Artikel)
rcshow: '!bot', // Bots ausblenden
rclimit: 3,
format: 'json'
}).done( function (data) {
var items = (data.query && data.query.recentchanges) || [];
if ( items.length === 0 ) {
mw.util.addPortletLink( portletId, '#', 'Keine neuen Seiten' );
return;
}
items.forEach( function (rc) {
var href = mw.util.getUrl( rc.title );
var tip = new Date( rc.timestamp ).toLocaleString();
mw.util.addPortletLink( portletId, href, rc.title, null, tip );
} );
}).fail( function () {
mw.util.addPortletLink( portletId, '#', 'Fehler beim Laden' );
} );
});