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
  • Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
/* ==============================================================================================
   [[Benutzer:ParaDox/monobook/revisionTag.js]] – siehe Diskussionsseite.
============================================================================================== */

$(function () {
    var rT_VERSION = 'ParaDox revisionTag 0.42.XX 2008-07-31';

/// neu ab V0.40 06.07.2008
/// SICHTUNGS-FORMULAR 'mw-reviewform' an den Seitenanfang verschieben
/// wenn "oldid=" aber nicht "diff="
    if ( document.location.href.indexOf('&oldid=') > 0 ) {
        if ( document.location.href.indexOf('&diff=') < 0 ) {
            if ( document.getElementById('mw-reviewform') ) {
                var oldForm     = document.getElementById('mw-reviewform');
                var removedNode = oldForm.parentNode.removeChild(oldForm);
                document.getElementsByTagName('H1')[0].parentNode.insertBefore(removedNode, document.getElementsByTagName('H1')[0]);
            }
        }
    }

/// do nothing/return if no #mw-revisiontag or #mw-revisiontag-old
    var rT_OBJ;
    if ( document.getElementById('mw-revisiontag') ) {
        rT_OBJ = document.getElementById('mw-revisiontag');
    } else if ( document.getElementById('mw-revisiontag-old') ) {
        rT_OBJ = document.getElementById('mw-revisiontag-old');
    }
    if ( !rT_OBJ ) {
        return;
    }

/// get wp-skin
    var rT_SKIN = document.getElementsByTagName('HEAD')[0].innerHTML.match(/var skin = "(.+?)";/);
    if ( rT_SKIN == null ) rT_SKIN = ''
    else rT_SKIN = rT_SKIN[1];

/// get JavaScript and Greasemonkey mode and add to number in rT_VERSION (replace 'XX')
    var rT_MODE = '';
    if ( typeof wgPageName != 'undefined' ) {
        rT_MODE = 'WP'; // revisionTag.js
    } else {
        rT_MODE = 'GM'; // revisionTag.user.js
        try {
            var rT_TRY = unsafeWindow['wgPageName'];
            rT_MODE = 'GMx'; // revisionTag.user.js (JS disabled)
        } catch (e) {
            rT_MODE = 'GMy'; // revisionTag.user.js (unknown)
        }
    }
    rT_VERSION = rT_VERSION.replace( /XX/, rT_MODE + '(' + rT_SKIN + ')' );

/// set default dislpay mode
    if ( document.getElementById('mw-revisionratings') )
        document.getElementById('mw-revisionratings').style.display = 'none';
    if ( document.getElementById('mw-revisiontoggle') )
        document.getElementById('mw-revisiontoggle').style.display = 'inline';

/// replace revision icon with colored text and background
    var rT_HTML = rT_OBJ.innerHTML;
    // Gesichteter Artikel
    rT_HTML = rT_HTML.replace(/<span class="fr-icon-stable" title="Gesichteter Artikel"><\/span>/,
        '<span style="background-color:#FFDD88; color:#00CC00;">&nbsp;•&nbsp;</span> ');
    rT_HTML = rT_HTML.replace(/<span class="fr-icon-stable plainlinks" title="Gesichteter Artikel"><\/span>/,
        '<span style="background-color:#FFBB88; color:#00CC00;">&nbsp;•&nbsp;</span> ');
    // Ungesichteter Artikel
    rT_HTML = rT_HTML.replace(/<span class="fr-icon-current" title="Ungesichteter Artikel"><\/span>/,
        '<span style="background-color:#FFCCCC; color:#CCCCCC;">&nbsp;•&nbsp;</span> ');

/// hide original #mw-revisiontag
    rT_OBJ.style.display = 'none';
    rT_OBJ.innerHTML = '';

/// build and insert new #ParaDox-revisiontag above or below page header <h1>
    ////
    // SET STYLE VARS dependant on var rT_position, which may be user-defined or undifined
    if ( rT_position == null ) {
        var rT_position = 'oberhalb Titel'; // DEFAULT wenn var rT_position undefined
    }
    var rT_padding = ' padding:1.5pt 0 2.25pt 0; ';         // DEFAULT
    var rT_border  = ' border-bottom:0.75pt solid gray; ';  // DEFAULT
    var rT_margin  = ' margin-top:1.5pt; ';                 // DEFAULT
    if ( rT_position == 'unterhalb Titel' ) {
        rT_padding = ' padding:1.5pt 0 2.25pt 0; ';
        rT_border  = ' border-top:0.75pt solid gray; ';
        if ( rT_SKIN == 'cologneblue' ) {
            rT_padding = ' padding:3pt 0 2.25pt 0; ';
            rT_border  = ' border-top:0.75pt solid gray; border-bottom:0.75pt solid gray; ';
            rT_margin  = ' margin-top:4.25pt; ';
        }
    } else {
        // wenn var rT_position weder undefined noch gültig
        rT_position = 'oberhalb Titel';
        if ( rT_SKIN == 'cologneblue' ) {
            rT_padding = ' padding:0.75pt 0 3pt 0; ';
        }
    }
    ////

    var rT_DIV = document.createElement('div');
    rT_DIV.innerHTML = ''
        + '<div id="ParaDox-revisiontag"'
        + ' style="float:left; white-space:nowrap;' + rT_margin
        + ' font:6.75pt/8.25pt Verdana,Arial,Sans-serif;' + rT_padding  + rT_border + '">'
        + rT_HTML
        + '<!--rT_fragezeichen-->'
        + '</div>'
        + '<div style="clear:both; margin-bottom:0pt"></div>'
        ;

    // Einfügen '?'-script-backlink: geändert ab V0.42 31.07.2008,
    // je nach «einfache Benutzerschnittstelle» oder «detaillierte Benutzerschnittstelle».
    var rT_fragezeichen = ' <a'
        + ' href="http://de.wiki.x.io/wiki/Benutzer_Diskussion:ParaDox/monobook/revisionTag.js"'
        + ' title="HOME ' + rT_VERSION + '"'
        + ' style="background-color:#EEEEEE">&nbsp;?&nbsp;</a> ';
    if ( rT_DIV.innerHTML.toUpperCase().indexOf('<TABLE') > 0 ) {
        rT_DIV.innerHTML = rT_DIV.innerHTML.replace(/(\(.?\/−\)<\/a>)/i,
            '$1' + rT_fragezeichen);
    } else {
        rT_DIV.innerHTML = rT_DIV.innerHTML.replace(/(<!--rT_fragezeichen-->)/,
            '$1' + rT_fragezeichen);
    }

    if ( rT_position == 'oberhalb Titel' ) {
        // above page header <h1>
        // neu 13.06.2008: Nun auch OK für skin = "cologneblue" (bisher anscheinend nur OK für skin = "monobook")
        document.getElementsByTagName('H1')[0].parentNode.insertBefore(rT_DIV, document.getElementsByTagName('H1')[0]);
    } else if ( rT_position == 'unterhalb Titel' ) {
        // below page header <h1>
        document.getElementsByTagName('H1')[0].appendChild(rT_DIV);
    }
});