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
/* kopiert und angepasst von [[:en:User:Ais523/topcontrib.js]]

   Farbcodiert Benutzerbeiträge, wandelt dabei die farblichen Hinterlegungen der gesichteten Versionen in Symbole um

   stammt noch aus den Zeiten vor jQuery und wurde aus nostalgischen Gründen weitgehend belassen (inklusive der absurden
   Konvention Blockenden betreffend)

   Dokumentation unter [[Benutzer:Schnark/js/topcontrib]] <nowiki> */
/*global mediaWiki*/
/*jshint curly: false, eqeqeq: false, quotmark: double, onevar: false, strict: false, camelcase: false*/
//jscs:disable
(function (addOnloadHook, wgCanonicalNamespace, wgCanonicalSpecialPageName, expose) {
var topcontrib = {
      version: 2.1,

      ich_top:   "#7FFFD0",                                                           //verschiedene Farben, bei Bedarf anpassen, ich_top und
      ich:       "#C0FFC0",                                                           //fremd_top müssen verschieden sein, immer heller wählen
      fremd_top: "#FFD0A0",                                                           //als man eigentlich vorhat, sie wirken erdrückend genug
      fremd:     "#FFEEBA",                                                           //"ich" und "fremd" bezieht sich auf den Benutzer, dessen
                                                                                      //Beiträge betrachtet werden, nicht auf einen selbst.
      symbole: ["! ",                                                                 //Ausrufszeichen für ungesichtet
                "? ",                                                                 //Fragezeichen für  nie gesichtet
//                "\u2713 "],                                                           //Häkchen für gesichtet
                ""],                                                                  //gesichtete nicht extra markieren
   run: function() {
        if (wgCanonicalNamespace == "Special" && wgCanonicalSpecialPageName == "Contributions") {
          var li = document.querySelectorAll(".mw-contributions-list li");
          if (!li.length) return;

          var a = [];                                                                 //wird mit allen Seiten gefüllt
          var symbol;
          for (var i = 0; i < li.length; i++) {
            var className = " " + li[i].className + " ";                              //Klassen, durch Leerzeichen separiert
            if (className.indexOf(" mw-logline-block ") > -1) continue;
            if (className.indexOf(" mw-aft-contribution ") > -1) continue;
            var spans = li[i].getElementsByTagName("span");

            var j = 0;
            if (spans[0] && (" " + spans[0].className + " ").indexOf(" mw-revdelundel-link ") > -1) j = 1;
            var titel = li[i].getElementsByTagName("a")[j].title;                     //Der Titel steht als title im ersten Link

            var aktuell = false;                                                      //existiert ein "(aktuell)" ?
            for (j = 0; j < spans.length; j++) {
                if ((" " + spans[j].className + " ").indexOf(" mw-uctop ") > -1) {
                   aktuell = true; break; }}

            var farbe;
            if (aktuell)                                                              //falls "(aktuell)" gefunden
               farbe = topcontrib.ich_top;
            else
               farbe = topcontrib.fremd_top;
            if (a[titel])                                                             //Titel zum wiederholten Mal ?
               farbe = (a[titel] == topcontrib.ich_top ? topcontrib.ich : topcontrib.fremd);
            else
               a[titel] = farbe;

            var status = 0;                                                           //gesichtet oder ungesichtet?
            if (className.indexOf(" flaggedrevs-pending ") > -1)    status = 1;       //ungesichtet
            if (className.indexOf(" flaggedrevs-unreviewed ") > -1) status = 2;       //noch nie gesichtet
            if (className.indexOf(" flaggedrevs-color-1 ") > -1)    status = 3;       //gesichtet

            var wrap = document.createElement("span");                                //alles mit <span>...</span> umgeben
            while (li[i].firstChild)
                wrap.appendChild(li[i].firstChild);
            li[i].appendChild(wrap);
            wrap.style.backgroundColor = farbe;                                       //und einfärben
            if (status !== 0) {
               li[i].className = "";                                                  //Farbmarkierung entfernen
               symbol = document.createElement("span");                               //Symbol erzeugen ...
               symbol.appendChild(document.createTextNode(topcontrib.symbole[status - 1]));
               symbol.className = "unpatrolled";                                      //... formatieren ...
               if (status == 3) symbol.style.color = "green";
               li[i].insertBefore(symbol,li[i].firstChild); }}                        //... und einfügen

          var legend = document.getElementById("sp-contributions-footer");            //Legende
          if (!legend) legend = document.getElementById("sp-contributions-footer-anon");
          if (!legend) return;
          var el = legend.getElementsByClassName("flaggedrevs-pending")[0];
          if (el) {
             el.className = "";
             symbol = document.createElement("span");                                 //Symbol erzeugen (wie oben)
             symbol.appendChild(document.createTextNode(topcontrib.symbole[0]));
             symbol.className = "unpatrolled";
             el.insertBefore(symbol,el.firstChild); }
          el = legend.getElementsByClassName("flaggedrevs-unreviewed")[0];
          if (el) {
             el.className = "";
             symbol = document.createElement("span");
             symbol.appendChild(document.createTextNode(topcontrib.symbole[1]));
             symbol.className = "unpatrolled";
             el.insertBefore(symbol,el.firstChild); }
          el = legend.getElementsByClassName("flaggedrevs-color-1")[0];
          if (el) {
             el.className = "";
             symbol = document.createElement("span");
             symbol.appendChild(document.createTextNode(topcontrib.symbole[2]));
             symbol.className = "unpatrolled";
             symbol.style.color = "green";
             el.insertBefore(symbol,el.firstChild); }}}};

expose(topcontrib);
$(topcontrib.run);

})(jQuery, mediaWiki.config.get("wgCanonicalNamespace"), mediaWiki.config.get("wgCanonicalSpecialPageName"), mediaWiki.hook("userjs.load-script.topcontrib").fire);
//</nowiki>