MediaWiki:Common.js
Version vom 7. November 2025, 18:56 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
/* global mw, $ */
(function () {
'use strict';
$.when( mw.loader.using( [ 'mediawiki.util', 'mediawiki.api' ] ), $.ready ).then( function () {
// 1) Eigenes Portlet (Sidebar-Block) anlegen – vor "Werkzeuge" (p-tb), sonst an "Navigation"
var nextTo = document.getElementById('p-tb') ? '#p-tb' :
( document.getElementById('p-navigation') ? '#p-navigation' : null );
var portletId = 'p-newpages';
var portletNode = mw.util.addPortlet( portletId, 'Neueste Beiträge', nextTo );
if ( !portletNode ) {
console.warn('[NewPages] Konnte Portlet nicht erstellen.');
return;
}
var api = new mw.Api();
api.get({
action: 'query',
list: 'recentchanges',
rctype: 'new',
rcprop: 'title|timestamp',
rcnamespace: 0, // nur Artikelnamensraum
rcshow: '!bot|!redirect', // Bots & Weiterleitungen ausblenden
rclimit: 3,
format: 'json'
}).done(function (data) {
var items = (data.query && data.query.recentchanges) || [];
if (!items.length) {
mw.util.addPortletLink(portletId, mw.util.getUrl('Special:NewPages'), 'Keine neuen Seiten');
return;
}
// 2) Einträge hinzufügen
for (var i = 0; i < items.length; i++) {
var rc = items[i];
var href = mw.util.getUrl(rc.title);
var tip = new Date(rc.timestamp).toLocaleString('de-DE', { dateStyle: 'medium', timeStyle: 'short' });
mw.util.addPortletLink(portletId, href, rc.title, null, tip);
}
// 3) Abschluss-Link: alle neuen Seiten
mw.util.addPortletLink(
portletId,
mw.util.getUrl('Special:NewPages'),
'Alle neuen Seiten →',
'newpages-more',
'Zur vollständigen Liste'
);
}).fail(function (err) {
console.error('[NewPages] API-Fehler:', err);
mw.util.addPortletLink(portletId, '#', 'Fehler beim Laden');
});
});
})();