Wikonia:WatchlistMessage


Kurzbeschreibung: Fügt in der Spezialseite Spezial:Beobachtungsliste (bei aktivierter erweiterter Ansicht) ein ✖-Symbol hinter der Uhrzeit ein, mit dem einzelne Änderungen temporär ausgeblendet werden können. Die Auswahl wird per Cookie gespeichert und gilt für 3 Wochen.

Funktionen Bearbeiten

  • ✖ erscheint direkt hinter der Uhrzeit eines Listeneintrags.
  • Beim Klick wird der zugehörige Eintrag sofort ausgeblendet.
  • Die Information wird als Cookie abgelegt (`wikonia-hidewatchlistmessage-*`).
  • Auch gruppierte Änderungen (mehrere identische Änderungen) können so ausgeblendet werden.
  • Funktioniert ohne AJAX, JSON oder externe Datenquellen.

Hintergrund Bearbeiten

Das ursprüngliche Gadget watchlistMessage wurde in mehreren Wikimedia-Projekten verwendet, war aber:

  • nicht kompatibel mit dem modernen Watchlist-Interface (MediaWiki 1.39+),
  • abhängig von der „klassischen“ Beobachtungsliste (veraltet),
  • an das Skin Vector 2010 angepasst,
  • schlecht wartbar in neuen DOM-Strukturen.

Daher wurde das gesamte Skript für Wikonia vollständig neu geschrieben.

Der neue Ansatz:

  • kein DOM-Cheating über `#bodyContent` oder manuelle Cookiestrukturen,
  • direkte Manipulation des `innerHTML` gezielt nach dem Uhrzeit-Muster (`hh:mm`),
  • maximale Robustheit gegenüber Gruppierungen und DOM-Umbauten,
  • vollständige Skin-Kompatibilität mit Vector 2022.

Technische Details Bearbeiten

  • Selektor: `td.mw-enhanced-rc[colspan="2"]`
  • Uhrzeiterkennung per RegEx (Format: `hh:mm`)
  • Kein Einsatz von `.mw-enhanced-rc-time` oder ähnlichen Klassen, da oft nicht vorhanden
  • Cookie-ID wird aus dem Zielseiten-Titel erzeugt (`btoa(...)` mit ASCII-Filter)

Kommentar aus dem Quelltext Bearbeiten

/*
 * watchlistMessage-2025
 * Funktion: Fügt ein "✖"-Symbol hinter der Uhrzeit ein, um Einträge auszublenden (per Cookie).
 * Inspiriert vom gleichnamigen Gadget der Wikimedia-User, aber komplett neu geschrieben, um 
 * + den Anforderungen der neuen Watchlist (MediaWiki > 1.39) gerecht zu werden (ohne Cheatcode "alte Watchlist")
 * + im Skin Vector 2022 zu funktionieren
 * + Wikonia-eigenen Stil durchzusetzen
 * Ansatz: Direktes Manipulieren des innerHTML, da DOM-Elemente in der neuen Watchlist schwerer zu fassen sind als Luft mit einer Gabel.
 * Autor: [[Benutzer:Muke86]]
 * Version: 1.0 (2025-06-15)
 */

Autoren Bearbeiten

Status Bearbeiten

Stabil, im Einsatz auf Spezial:Beobachtungsliste mit aktiviertem erweiterten Modus.