MediaWiki:Common.js

Aus ISMS-Ratgeber WiKi
Zur Navigation springenZur Suche springen

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. */

// 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|timestamp|user',
    rctype: 'new', // ← Korrektur: rctype statt rcshow
    rclimit: 50,
    rcnamespace: 0,
    format: 'json'
  })
  .done(function(data) {
    console.log("API-Daten:", data);
    var table = '<table class="wikitable"><tr><th>Titel</th><th>Erstellt am</th><th>Autor:in</th></tr>';
    var uniquePages = {};
    
    if (data.query?.recentchanges?.length > 0) {
      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 || '<tr><td colspan="3">Keine neuen Seiten.</td></tr>');
  })
  .fail(function(jqXHR) {
    $target.html('Fehler: ' + jqXHR.statusText);
  });
});