MediaWiki:Common.js: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
| Zeile 1: | Zeile 1: | ||
/* Das folgende JavaScript wird für alle Benutzer geladen. */ | /* Das folgende JavaScript wird für alle Benutzer geladen. */ | ||
// | // Neueste Beiträge (3 neue Seiten) in die linke Sidebar einfügen – skin-sicher | ||
mw.loader.using(['mediawiki. | $.when( mw.loader.using( [ 'mediawiki.util', 'mediawiki.api' ] ), $.ready ).then( function () { | ||
var api = new mw.Api(); | // 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' ); | |||
} ); | |||
}); | }); | ||
Version vom 7. November 2025, 18:42 Uhr
/* Das folgende JavaScript wird für alle Benutzer 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' );
} );
});