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 3: | Zeile 3: | ||
// Top 10 zuletzt geänderte Seiten: | // Top 10 zuletzt geänderte Seiten: | ||
$(function() { | $(function() { | ||
var $target = $('#recentpages-table'); | var $target = $('#recentpages-unique-table'); | ||
if (!$target.length) return; | if (!$target.length) return; | ||
Zeile 9: | Zeile 9: | ||
action: 'query', | action: 'query', | ||
list: 'recentchanges', | list: 'recentchanges', | ||
rcprop: 'title|comment|redirect', | rcprop: 'title|comment|redirect|timestamp', | ||
rclimit: 30, | rclimit: 30, | ||
rcshow: 'new|!redirect', | rcshow: 'new|!redirect', // Nur neue Seiten (Erstellerstellung) | ||
rcnamespace: 0, | rcnamespace: 0, | ||
format: 'json' | format: 'json' | ||
}) | }) | ||
.done(function(data) { | .done(function(data) { | ||
var table = '<table class="wikitable"><tr><th> | var table = '<table class="wikitable"><tr><th>Titel</th><th>Erstellt am</th><th>Zusammenfassung</th></tr>'; | ||
var uniqueTitles = {}; // Objekt zur Duplikatserkennung | |||
var count = 0; | var count = 0; | ||
if (data.query | |||
if (data.query?.recentchanges) { | |||
// | data.query.recentchanges.forEach(function(rc) { | ||
if (rc.title.indexOf(':') !== -1) return; | // Filtere Titel mit Doppelpunkt und bereits verarbeitete Titel | ||
if (count >= 10) return | if (rc.title.indexOf(':') !== -1 || uniqueTitles[rc.title]) return; | ||
// | |||
var | uniqueTitles[rc.title] = true; // Markiere Titel als verarbeitet | ||
if (count >= 10) return; | |||
table += '<tr><td>' + escape(rc.title) + '</td><td>' + escape(rc.comment || '') + '</td></tr>'; | // Datum formatieren (z. B. "12.05.2024") | ||
var date = new Date(rc.timestamp).toLocaleDateString('de-DE'); | |||
table += '<tr><td>' + mw.html.escape(rc.title) + '</td>' + | |||
'<td>' + date + '</td>' + | |||
'<td>' + mw.html.escape(rc.comment || '') + '</td></tr>'; | |||
count++; | count++; | ||
}); | }); | ||
} | |||
if (count === 0) { | |||
table += '<tr><td colspan="3">Keine neuen Inhaltsseiten gefunden.</td></tr>'; | |||
table += '<tr><td colspan=" | |||
} | } | ||
table += '</table>'; | table += '</table>'; |
Version vom 12. Mai 2025, 18:10 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; $.getJSON(mw.util.wikiScript('api'), { action: 'query', list: 'recentchanges', rcprop: 'title|comment|redirect|timestamp', rclimit: 30, rcshow: 'new|!redirect', // Nur neue Seiten (Erstellerstellung) rcnamespace: 0, format: 'json' }) .done(function(data) { var table = '<table class="wikitable"><tr><th>Titel</th><th>Erstellt am</th><th>Zusammenfassung</th></tr>'; var uniqueTitles = {}; // Objekt zur Duplikatserkennung var count = 0; if (data.query?.recentchanges) { data.query.recentchanges.forEach(function(rc) { // Filtere Titel mit Doppelpunkt und bereits verarbeitete Titel if (rc.title.indexOf(':') !== -1 || uniqueTitles[rc.title]) return; uniqueTitles[rc.title] = true; // Markiere Titel als verarbeitet if (count >= 10) return; // Datum formatieren (z. B. "12.05.2024") var date = new Date(rc.timestamp).toLocaleDateString('de-DE'); table += '<tr><td>' + mw.html.escape(rc.title) + '</td>' + '<td>' + date + '</td>' + '<td>' + mw.html.escape(rc.comment || '') + '</td></tr>'; count++; }); } if (count === 0) { table += '<tr><td colspan="3">Keine neuen Inhaltsseiten gefunden.</td></tr>'; } table += '</table>'; $target.html(table); }) .fail(function() { $target.html('Fehler beim Laden der neuesten Seiten.'); }); });