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-table');
  if (!$target.length) return;

  $.getJSON(mw.util.wikiScript('api'), {
    action: 'query',
    list: 'recentchanges',
    rcprop: 'title|comment|redirect',
    rclimit: 30,
    rcshow: 'new|!redirect',
    rcnamespace: 0,
    format: 'json'
  })
  .done(function(data) {
    var table = '<table class="wikitable"><tr><th>Seite</th><th>Letzte Änderung</th></tr>';
    var count = 0;
    if (data.query && data.query.recentchanges && data.query.recentchanges.length > 0) {
      $.each(data.query.recentchanges, function(i, rc) {
        // Im Hauptnamensraum sollten keine Doppelpunkte vorkommen, aber zur Sicherheit filtern
        if (rc.title.indexOf(':') !== -1) return;
        if (count >= 10) return false; // Schleife abbrechen
        // Fallback für mw.html.escape (falls nicht verfügbar)
        var escape = window.mw && mw.html && mw.html.escape ? mw.html.escape : function(s) {
          return $('<div>').text(s).html();
        };
        table += '<tr><td>' + escape(rc.title) + '</td><td>' + escape(rc.comment || '') + '</td></tr>';
        count++;
      });
      if (count === 0) {
        table += '<tr><td colspan="2">Keine neuen Inhaltsseiten gefunden.</td></tr>';
      }
    } else {
      table += '<tr><td colspan="2">Keine neuen Inhaltsseiten gefunden.</td></tr>';
    }
    table += '</table>';
    $target.html(table);
  })
  .fail(function() {
    $target.html('Fehler beim Laden der neuesten Seiten.');
  });
});