Benutzer:PerfektesChaos/js/remindErrorMessages

JavaScript-Gadget – um an Fehlermeldungen erinnert zu werden oder diese überhaupt erst sichtbar zu machen.

  • Liste aller gefundenen Fehlermeldungen im Seitenkopf zeigen und einzeln verlinken.
  • Alle Fehlermeldungen sichtbar machen und deutlich hervorheben.
  • Auf der Seitenvorschau der Quelltextbearbeitung wird ein anklickbares ! nahe des Vorschau zeigen angezeigt, wenn Fehlermeldungen gefunden wurden.

Fehlermeldungen werden durch Vorlagen und gelegentlich durch MediaWiki-Komponenten generiert und enthalten class="error" als Zuweisung.

Einbindung Bearbeiten

  • Wenn das Projekt dieses Gadget bereits registriert haben sollte, genügt ein Häkchen auf der Seite Einstellungen („Helferlein“).
  • Sonst wären die folgenden Zeilen in die persönliche common.js, global.js etc. einzufügen:
mw.loader.load("https://en.wikipedia.org/w/index.php?title=User:PerfektesChaos/js/remindErrorMessages/r.js&action=raw&bcache=1&maxage=604800&ctype=text/javascript",
               "text/javascript");
  • Eine Anmeldung als Benutzer ist nicht zwingend erforderlich; die Aktivierung kann auch über Greasemonkey erfolgen.

Benutzerkonfiguration Bearbeiten

Mittels CSS kann das Erscheinungsbild auf zwei Arten in den Einstellungen geändert werden.

CSS Bearbeiten

Die folgenden Zeilen können in das persönliche common.css, global.css oder skin-abhängiges CSS eingefügt werden. Jede Zuweisung von Eigenschaften und Werten ist möglich; nachfolgend fiktive Beispiele.

/* Jede einzelne Fehlermeldung */
.remindErrorMessages_msg {
   background: #FF4040 ! important;
}
/* Box im Seitenkopf */
#remindErrorMessages_box {
   background: #FFFF80 ! important;
}
/* Button bei der Seitenvorschau */
#remindErrorMessages_attention {
   border: #FFFF00 2px solid ! important;
}

JavaScript Bearbeiten

Ein anderer Weg ist es, die Code-Generierung direkt zu beeinflussen:

  • Die { ...: ... } wären ein object, das Zuweisungen von CSS-Eigenschaften und Werten definiert.
if ( typeof mw.libs.remindErrorMessages !== "object" ) {
   mw.libs.remindErrorMessages = { };
}
// Button bei der Seitenvorschau
mw.libs.remindErrorMessages.barCSS  = { ...: ... };
// Jede einzelne Fehlermeldung
mw.libs.remindErrorMessages.barkCSS = { ...: ... };
// Box im Seitenkopf
mw.libs.remindErrorMessages.boxCSS  = { ...: ... };

Dies in common.js, global.js etc. einfügen (möglichst vor mw.loader.load – sofern vorhanden, wie unter „Einbindung“ beschrieben).

Beachte: Die Benutzerkonfiguration könnte ignoriert werden, falls sie nicht im Standard-Benutzerskript erfolgt, weil alle anderen Skripte erst später geladen werden und remindErrorMessages dann nichts davon weiß und auch nicht darauf warten kann.

Versteckte Kategorien Bearbeiten

Versteckte Kategorien (meist Wartungskategorien) können im Seitenkopf angezeigt werden.

Die folgenden Zeilen wären dazu in die persönliche common.js, global.js etc. einzufügen (möglichst vor mw.loader.load – sofern vorhanden, wie unter „Einbindung“ beschrieben):

if ( typeof mw.libs.remindErrorMessages !== "object" ) {
   mw.libs.remindErrorMessages = { };
}
mw.libs.remindErrorMessages.hiddencats = true;

Code und Stammseite Bearbeiten

Die Stammseite ist en:User:PerfektesChaos/js/remindErrorMessages mit:

Quellcode
ResourceLoader
  • ext.gadget.remindErrorMessages
  • Dependencies: Keine
Namensräume
  • Alle außer Spezialseiten.
mw.libs remindErrorMessages

Testprozedur zur Prüfung auf Erfüllung der Grundfunktionalität; auch als Tutorial für Menschen, die mit den Fingern lernen.