Opmerking: nadat u de wijzigingen hebt gepubliceerd is het wellicht nodig uw browsercache te legen.

  • Firefox / Safari: houd Shift ingedrukt terwijl u op Vernieuwen klikt of druk op Ctrl-F5 of Ctrl-R (⌘-Shift-R op een Mac)
  • Google Chrome: druk op Ctrl-Shift-R (⌘-Shift-R op een Mac)
  • Internet Explorer / Edge: houd Ctrl ingedrukt terwijl u op Vernieuwen klikt of druk op Ctrl-F5
  • Opera: druk op Ctrl-F5.
  function msbPatrolIndex(fun) {
 
        var index = window.mw.config.get('wgScriptPath') + '/index.php';
 
        jQuery.get(index,
                   {
                           action:      'markpatrolled',
                           rcid:        msbRcid,
                           token:       msbPatroltoken
                   },
                   fun
        );
}
 
function msbPatrollinksOnDiff() {
 
        var nextlink = null;
        var prevlink = null;
 
        if ( mw.util.getParamValue('diff') == null) return;
 
        var ntitle4 = document.getElementById('mw-diff-ntitle4');
 
        if (ntitle4 == null) return;
        if (ntitle4.getElementsByTagName('span').length==0) return;
 
        msbGetToken();
 
        var ntitle1 = document.getElementById('mw-diff-ntitle1');
        ntitle1.innerHTML = ntitle1.innerHTML.replace(/\([^)]+\)/, '');
        var url = ntitle1.innerHTML.match(/['"]([^"']+undoafter[^'"]+)['"]/)[1];
        ntitle1.innerHTML += '<div id="msb3"> (<span style="'+msbPatrolLinksStyle+'"><a href="#" onclick="msbMarkeer(\''+url+'\'); return false;"> Markeer en ongedaan maken</a></span>)</div>';
 
        var ntitle2 = document.getElementById('mw-diff-ntitle2');
        var user = ntitle2.innerHTML.match(/ijdragen\/([^"]+)"/)[1];
        if (user.search(/\d+\.\d+\.\d+\.\d+/) >= 0) {
                var s = '><small><a href="http://toolserver.org/~chm/whois.php?ip='+user+'">whois</a></small> (<';
                ntitle2.innerHTML = ntitle2.innerHTML.replace(/>\(</,s);
        }
 
        if (document.getElementById('differences-nextlink')) {
                nextlink = document.getElementById('differences-nextlink').href;
        }
        if (document.getElementById('differences-prevlink')) {
                prevlink = document.getElementById('differences-prevlink').href;
        }
 
        if (prevlink !== null) {
                var otitle4 = document.getElementById('mw-diff-otitle4');
                if (otitle4) {
                        otitle4.innerHTML = otitle4.innerHTML.replace(/[Oo]udere\sbewerking/, 'Vorige');
                        otitle4.innerHTML += '<div id="msb1"> [<span style="'+msbPatrolLinksStyle+'"><a href="#" onclick="msbMarkeer(\''+prevlink+'\'); return false;"> ← Markeer en vorige</a></span>]</div>';
                }
        }
 
        var ntitle4 = document.getElementById('mw-diff-ntitle4');
 
        if (nextlink !== null) {
 
                ntitle4.innerHTML = ntitle4.innerHTML.replace(/[Nn]ieuwere\sbewerking.*/, 'Volgende   →</a>');
                var s = '<div id="msb2"> [<span style="'+msbPatrolLinksStyle+'"><a href="#" onclick="msbMarkeer(); return false;">Markeer</a></span>]';
                s += ' [<span style="'+msbPatrolLinksStyle+'"><a href="#" onclick="msbMarkeer(\''+nextlink+'\'); return false;"> Markeer en volgende →</a></span>]</div>';
                ntitle4.innerHTML += s;
 
        } else {
 
                ntitle4.innerHTML = '<div id="msb2"> [<span style="'+msbPatrolLinksStyle+'"><a href="#" onclick="msbMarkeer(); return false;">Markeer</a></span>]</div>';
        }
 
        var html = '<small>Actie na markeren: ';
        html += '<span style="'+msbPatrolLinksStyle+'"><input type="radio" name="msbAction" value="1" onchange="msbSetCookie()" />Geen</span> ';
        html += '<span style="'+msbPatrolLinksStyle+'"><input type="radio" name="msbAction" value="2" onchange="msbSetCookie()" />Vorige pagina</span></small>';
        mw.util.$content.prepend(html);
 
        window.msbCookie = jQuery.cookie('msbAction');
        if (msbCookie != 2) msbCookie=1;
        document.getElementsByName('msbAction')[msbCookie-1].checked = true;
 
}
 
function msbSetCookie() {
 
       msbCookie = 1;
       if (document.getElementsByName('msbAction')[1].checked) msbCookie=2;
       jQuery.cookie( 'msbAction', msbCookie, { expires: 999});
 
}
 
function msbMarkeer(target) {
        msbPatrolIndex(
                function(data) {
                        if (target !== undefined) {
                                window.location = target;
                        } else {
                               var n = document.getElementById("msb1");
                               if (n) n.style.visibility = "hidden";
                               n = document.getElementById("msb2");
                               if (n) {
                                        var cookie = jQuery.cookie('msbAction');
                                        if (cookie==2) {
                                               history.back();
                                        } else {
                                                n.innerHTML = " [Gemarkeerd]";
                                        }
                               }
                               var n = document.getElementById("msb3");
                               if (n) n.style.visibility = "hidden";
                        }
                }
        );
        return false;
}
 
function msbGetToken() {
 
        var node = document.getElementById('mw-diff-ntitle4');
        var url = node.innerHTML.match(/"([^"]+markpatrolled[^"]+)"/)[1];
        msbPatroltoken = decodeURIComponent(url.match(/token=([^"&]+)/)[1]);
        msbRcid = url.match(/rcid=(\d+)/)[1];
 
}
 
var msbPatrolLinksStyle = 'background-color: #dcdcdc;';
 
if ( mw.util.getParamValue('diff') !== null) {
 
        jQuery(document).ready(msbPatrollinksOnDiff);
        msbUsePatrolLinks = true;
}