Gebruiker:Erik Baas/markeer.js

Uit Wikibooks

Hulp bij het instellen van uw voorkeurenLet op! Nadat u de veranderingen heeft opgeslagen, moet u de cache van uw browser nog legen om ze daadwerkelijk te zien. In onderstaande tabel staat aangegeven hoe u dit doet.

Mozilla reload (of ctrl-r)
IE ctrl-f5
Opera f5
Safari cmd-r
Konqueror ctrl-r
if (!window.msb) {window.msb = {};}

msb.patrol = {
 linksStyle: 'background-color: #dcdcdc;',

 patrolIndex: function (fun) {
 new mw.Api().postWithToken( 'patrol', {
 formatversion: 2,
 action: 'patrol',
 rcid: mw.util.getParamValue('rcid', $('.patrollink[data-mw="interface"] a')[0].href)
 } ).done(fun);
 },

 linksOnDiff: function () {

 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;

 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="'+msb.patrol.linksStyle+'"><a href="#" onclick="msb.patrol.markeer(\''+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+'" target="_blank">whois</a>, '
  s = s + '<a href="http://www.infosniper.net/index.php?ip_address='+user+'" target="_blank">locatie</a>'
  s = s + '</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="'+msb.patrol.linksStyle+'"><a href="#" onclick="msb.patrol.markeer(\''+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="'+msb.patrol.linksStyle+'"><a href="#" onclick="msb.patrol.markeer(); return false;">Markeer</a></span>]';
  s += ' [<span style="'+msb.patrol.linksStyle+'"><a href="#" onclick="msb.patrol.markeer(\''+nextlink+'\'); return false;"> Markeer en volgende →</a></span>]</div>';
  ntitle4.innerHTML += s;
 } else {
  ntitle4.innerHTML = '<div id="msb2"> [<span style="'+msb.patrol.linksStyle+'"><a href="#" onclick="msb.patrol.markeer(); return false;">Markeer</a></span>]</div>';
 }

 var html = '<small>Actie na markeren: ';
 html += '<span style="'+msb.patrol.linksStyle+'"><input type="radio" name="msbAction" value="1" onchange="msb.patrol.setCookie()" />Geen</span> ';
 html += '<span style="'+msb.patrol.linksStyle+'"><input type="radio" name="msbAction" value="2" onchange="msb.patrol.setCookie()" />Vorige pagina</span></small>';
 mw.util.$content.prepend(html);

 var cookie = jQuery.cookie('msbAction');
 if (cookie != 2) cookie=1;
 document.getElementsByName('msbAction')[cookie-1].checked = true;
 },

 setCookie: function () {
  var cookie = 1;
  if (document.getElementsByName('msbAction')[1].checked) cookie=2;
   jQuery.cookie( 'msbAction', cookie, { expires: 999});
 },

 markeer: function (target) {
 msb.patrol.patrolIndex(
 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;
 },
 
}

$.when( mw.loader.using( [ 'mediawiki.util' ] ), $.ready ).then( function() {
 if ( mw.util.getParamValue('diff') !== null) {

 msb.patrol.linksOnDiff()
 }
})

/* kopie van https://nl.wikipedia.org/wiki/Gebruiker:MrBlueSky/markeer.js */
Informatie afkomstig van https://nl.wikibooks.org Wikibooks NL.
Wikibooks NL is onderdeel van de wikimediafoundation.