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() {
  const $target = $('#seo-pages-table');
  if (!$target.length) return;

  // Debugging: Konsolenausgabe
  console.log("Starte Skript...");

  // API-Abfrage für neue Seiten im Hauptnamensraum
  new mw.Api().get({
    action: 'query',
    list: 'recentchanges',
    rcprop: 'title|timestamp|user',
    rcshow: 'new',
    rcnamespace: 0,
    rclimit: 10,
    format: 'json'
  }).done(function(data) {
    console.log("API-Daten:", data);
    
    const pages = data.query?.recentchanges || [];
    if (!pages.length) {
      $target.html("Keine neuen Seiten im Hauptnamensraum gefunden.");
      return;
    }

    // Tabelle generieren
    let table = `
      <table class="wikitable">
        <tr><th>Seitenname</th><th>Erstellt am</th><th>Autor:in</th></tr>
    `;
    
    pages.forEach(page => {
      const link = `<a href="${mw.util.getUrl(page.title)}">${mw.html.escape(page.title)}</a>`;
      const date = new Date(page.timestamp).toLocaleDateString('de-DE');
      table += `
        <tr>
          <td>${link}</td>
          <td>${date}</td>
          <td>${mw.html.escape(page.user)}</td>
        </tr>
      `;
    });

    table += "</table>";
    $target.html(table);
  }).fail(function(err) {
    $target.html(`Fehler: ${err}`);
  });
});