MediaWiki:Common.js: Unterschied zwischen den Versionen
Aus ISMS-Ratgeber WiKi
Zur Navigation springenZur Suche springen
Dirk (Diskussion | Beiträge) KKeine Bearbeitungszusammenfassung |
Dirk (Diskussion | Beiträge) KKeine Bearbeitungszusammenfassung |
||
Zeile 2: | Zeile 2: | ||
// Top 10 zuletzt geänderte Seiten: | // Top 10 zuletzt geänderte Seiten: | ||
$(function() { | $(function() { | ||
var $target = $('#recentpages-unique-table'); | var $target = $('#recentpages-unique-table'); | ||
Zeile 12: | Zeile 13: | ||
list: 'recentchanges', | list: 'recentchanges', | ||
rcprop: 'title|comment|timestamp|user', | rcprop: 'title|comment|timestamp|user', | ||
rcshow: 'new', | rcshow: 'new', | ||
rclimit: 50, | rclimit: 50, | ||
rcnamespace: 0, | rcnamespace: 0, | ||
Zeile 19: | Zeile 20: | ||
.done(function(data) { | .done(function(data) { | ||
console.log("API-Daten:", data); | console.log("API-Daten:", data); | ||
if (!data.query?.recentchanges?.length) { | |||
$target.html("Keine neuen Seiten im Hauptnamensraum."); | |||
return; | |||
} | |||
var table = '<table class="wikitable"><tr><th>Titel</th><th>Erstellt am</th><th>Autor:in</th></tr>'; | var table = '<table class="wikitable"><tr><th>Titel</th><th>Erstellt am</th><th>Autor:in</th></tr>'; | ||
var uniquePages = {}; | var uniquePages = {}; | ||
data.query.recentchanges.forEach(function(rc) { | |||
if (!rc.title || rc.title.includes(':') || uniquePages[rc.title]) return; | |||
uniquePages[rc.title] = true; | |||
var pageLink = '<a href="' + mw.util.getUrl(rc.title) + '">' + mw.html.escape(rc.title) + '</a>'; | |||
var date = new Date(rc.timestamp).toLocaleDateString('de-DE'); | |||
table += `<tr><td>${pageLink}</td><td>${date}</td><td>${mw.html.escape(rc.user)}</td></tr>`; | |||
}); | |||
$target.html( | $target.html(table); | ||
}) | }) | ||
.fail(function(jqXHR | .fail(function(jqXHR) { | ||
$target.html('Fehler: ' + jqXHR.statusText); | |||
$target.html('Fehler: ' + | |||
}); | }); | ||
}); | }); |
Version vom 12. Mai 2025, 19:03 Uhr
/* Das folgende JavaScript wird für alle Benutzer geladen. */ // Top 10 zuletzt geänderte Seiten: $(function() { var $target = $('#recentpages-unique-table'); if (!$target.length) return; console.log("Starte API-Abfrage..."); $.getJSON(mw.util.wikiScript('api'), { action: 'query', list: 'recentchanges', rcprop: 'title|comment|timestamp|user', rcshow: 'new', rclimit: 50, rcnamespace: 0, format: 'json' }) .done(function(data) { console.log("API-Daten:", data); if (!data.query?.recentchanges?.length) { $target.html("Keine neuen Seiten im Hauptnamensraum."); return; } var table = '<table class="wikitable"><tr><th>Titel</th><th>Erstellt am</th><th>Autor:in</th></tr>'; var uniquePages = {}; data.query.recentchanges.forEach(function(rc) { if (!rc.title || rc.title.includes(':') || uniquePages[rc.title]) return; uniquePages[rc.title] = true; var pageLink = '<a href="' + mw.util.getUrl(rc.title) + '">' + mw.html.escape(rc.title) + '</a>'; var date = new Date(rc.timestamp).toLocaleDateString('de-DE'); table += `<tr><td>${pageLink}</td><td>${date}</td><td>${mw.html.escape(rc.user)}</td></tr>`; }); $target.html(table); }) .fail(function(jqXHR) { $target.html('Fehler: ' + jqXHR.statusText); }); });