Gebruiker:Sumurai8/editcount.js

Uit Wikikids
Naar navigatie springen Naar zoeken springen

Let op! Nadat je de veranderingen hebt opgeslagen, moet je de cache van je browser nog legen om ze daadwerkelijk te zien.

Mozilla (incl. Firefox) ctrl-shift-r
IE ctrl-f5
Opera f5
Safari cmd-r
Konqueror f5
/**
 * EDITCOUNTITIS
 *
 * Counts edit for specified user
 * 'Adds' special page [[Speciaal:EditCount]]
 * But it doesn't really exist though
**/
var ECobject1 = ""
var ECuser = ""
var ECeditcount = 0
var ECeditarray = new Array()
    ECeditarray[0] = new Array()
    ECeditarray[1] = new Array()
    ECeditarray[2] = new Array()
    ECeditarray[3] = new Array()
    ECeditarray[4] = new Array()
    ECeditarray[5] = new Array()
    ECeditarray[6] = new Array()
    ECeditarray[7] = new Array()
    ECeditarray[8] = new Array()
    ECeditarray[9] = new Array()
    ECeditarray[10] = new Array()
    ECeditarray[11] = new Array()
    ECeditarray[12] = new Array()
    ECeditarray[13] = new Array()
    ECeditarray[14] = new Array()
    ECeditarray[15] = new Array()
    ECeditarray[274] = new Array()
    ECeditarray[275] = new Array()
    ECeditarray[1000] = new Array()
    ECeditarray[1001] = new Array()
    ECeditarray[1002] = new Array()
    ECeditarray[1003] = new Array()
    ECeditarray[1004] = new Array()
    ECeditarray[1005] = new Array()

var ECapi = sajax_init_object();

function ECstart() {
  if(document.getElementById('mw_contentholder')) {
    ECobject1 = document.getElementById('mw_contentholder') //Modern
  }
  else if(document.getElementById('content')) {
    ECobject1 = document.getElementById('content') //Monobook (en wikikids?)
  }
  if(document.location.href.indexOf('?user=') != -1) {
    ECuser = document.location.href.substring(document.location.href.indexOf('?user=')+6,document.location.href.length)
  }
  else {
    ECuser = wgUserName
  }
  if (document.location.href.indexOf('http://wikikids.wiki.kennisnet.nl/Speciaal:EditCount') != -1) {
    if(document.title) { document.title = "Editcount voor "+ECuser }
    if(document.getElementById('mw_contentholder')) {
      document.getElementById('firstHeading').innerText = "Editcounter" //Modern
    }
    ECobject1.innerHTML = "<span><b>Bezig met tellen voor: </b>"+ECuser+"</span><p></p><b>Bezig met analyseren</b>. . ."
    ECapi.open('GET', wgScriptPath + '/api.php?action=query&format=json&list=usercontribs&ucprop=timestamp|title&uclimit=500&ucuser='+ECuser, true);
    ECapi.onreadystatechange = ECcore;
    ECapi.send(null)
  }
}

function ECaddlinks() {
  //Will add links to sidebar for easy counting!
  if( wgNamespaceNumber == 2 || wgNamespaceNumber == 3) {
    var o1 = document.getElementById('p-tb').getElementsByTagName('ul')[0]
    var t1 = wgTitle
    if (t1.indexOf('/') != -1) {
      t1 = t1.substring(0,t1.indexOf('/'))
    }
    o1.innerHTML += "<li id=\"t-editcount\"><a href=\"/Speciaal:EditCount?user="+t1+"\" title=\"Tel bewerkingen van een gebruiker\">Editcount</a></li>"
  }
}

function ECcore() {
  if(ECapi.readyState == 4) {
    if(ECapi.status == 200) {
      var info = eval("("+ECapi.responseText+")")
      if(info['query-continue']) {
        //More edits to examine!
        ECeditcount += (info['query']['usercontribs'].length)
        var c1 = 0
        while( info['query']['usercontribs'][info['query']['usercontribs'].length-c1] ==
               info['query']['usercontribs'][info['query']['usercontribs'].length-c1-1] ) {
          c1++
          if(c1 == 0) { ECeditcount-- }
          ECeditcount--
        }
        c3 = info['query']['usercontribs'].length-c1
        for (var c2=0;c2 < c3;c2++) {
          if (!ECeditarray[info['query']['usercontribs'][c2]['ns']]) {
            ECeditarray[info['query']['usercontribs'][c2]['ns']] = new Array();
          }
          ECeditarray[info['query']['usercontribs'][c2]['ns']][ECeditarray[info['query']['usercontribs'][c2]['ns']].length] = new Array()
          ECeditarray[info['query']['usercontribs'][c2]['ns']][ECeditarray[info['query']['usercontribs'][c2]['ns']].length-1]['title'] = info['query']['usercontribs'][c2]['title']
          ECeditarray[info['query']['usercontribs'][c2]['ns']][ECeditarray[info['query']['usercontribs'][c2]['ns']].length-1]['timestamp'] = info['query']['usercontribs'][c2]['timestamp']
        }
        ECapi.open('GET', wgScriptPath + '/api.php?action=query&format=json&list=usercontribs&ucprop=timestamp|title&uclimit=500&ucuser='+ECuser+'&ucstart='+info['query-continue']['usercontribs']['ucstart'], true);
        ECapi.onreadystatechange = ECcore
        ECapi.send(null)
        ECobject1.innerHTML += " ."
      }
      else {
        //We reached the end!
        ECeditcount += (info['query']['usercontribs'].length)
        c3 = info['query']['usercontribs'].length
        for (var c2=0;c2 < c3;c2++) {
          ECeditarray[info['query']['usercontribs'][c2]['ns']][ECeditarray[info['query']['usercontribs'][c2]['ns']].length] = new Array()
          ECeditarray[info['query']['usercontribs'][c2]['ns']][ECeditarray[info['query']['usercontribs'][c2]['ns']].length-1]['title'] = info['query']['usercontribs'][c2]['title']
          ECeditarray[info['query']['usercontribs'][c2]['ns']][ECeditarray[info['query']['usercontribs'][c2]['ns']].length-1]['timestamp'] = info['query']['usercontribs'][c2]['timestamp']
        }
        var t1 = "<div><h2>Editcount</h2><b>Deze pagina is automatisch gegenereerd aan de hand van de url waarmee je hier kwam.</b><br/>Niet iedereen kan deze pagina zien, dus wees voorzichtig met links geven naar deze pagina (dat kan behoorlijk frustrerend zijn)<br/><span>"
         + "Gebruiker <b>" + ECuser + "</b> heeft <b>" + ECeditcount + "</b> wijzigingen gedaan"
         + ".</span></div><br/><br/><div><b>De wijzigingen vonden plaats in de volgende naamruimtes:</b><br/>";
        if(ECeditarray[0].length > 0) { t1+="<tt><b>Hoofdnaamruimte: </b> "+ECeditarray[0].length+"</tt><br/>" }
        if(ECeditarray[1].length > 0) { t1+="<tt><b>Overleg: </b> "+ECeditarray[1].length+"</tt><br/>" }
        if(ECeditarray[2].length > 0) { t1+="<tt><b>Gebruiker: </b> "+ECeditarray[2].length+"</tt><br/>" }
        if(ECeditarray[3].length > 0) { t1+="<tt><b>Overleg gebruiker: </b> "+ECeditarray[3].length+"</tt><br/>" }
        if(ECeditarray[4].length > 0) { t1+="<tt><b>WikiKids: </b> "+ECeditarray[4].length+"</tt><br/>" }
        if(ECeditarray[5].length > 0) { t1+="<tt><b>Overleg WikiKids: </b> "+ECeditarray[5].length+"</tt><br/>" }
        if(ECeditarray[6].length > 0) { t1+="<tt><b>Afbeelding: </b> "+ECeditarray[6].length+"</tt><br/>" }
        if(ECeditarray[7].length > 0) { t1+="<tt><b>Overleg afbeelding: </b> "+ECeditarray[7].length+"</tt><br/>" }
        if(ECeditarray[8].length > 0) { t1+="<tt><b>MediaWiki: </b> "+ECeditarray[8].length+"</tt><br/>" }
        if(ECeditarray[9].length > 0) { t1+="<tt><b>Overleg MediaWiki: </b> "+ECeditarray[9].length+"</tt><br/>" }
        if(ECeditarray[10].length > 0) { t1+="<tt><b>Sjabloon: </b> "+ECeditarray[10].length+"</tt><br/>" }
        if(ECeditarray[11].length > 0) { t1+="<tt><b>Overleg sjabloon: </b> "+ECeditarray[11].length+"</tt><br/>" }
        if(ECeditarray[12].length > 0) { t1+="<tt><b>Help: </b> "+ECeditarray[12].length+"</tt><br/>" }
        if(ECeditarray[13].length > 0) { t1+="<tt><b>Overleg help: </b> "+ECeditarray[13].length+"</tt><br/>" }
        if(ECeditarray[14].length > 0) { t1+="<tt><b>Categorie: </b> "+ECeditarray[14].length+"</tt><br/>" }
        if(ECeditarray[15].length > 0) { t1+="<tt><b>Overleg categorie: </b> "+ECeditarray[15].length+"</tt><br/>" }
        if(ECeditarray[274].length > 0) { t1+="<tt><b>Widget: </b> "+ECeditarray[274].length+"</tt><br/>" }
        if(ECeditarray[275].length > 0) { t1+="<tt><b>Widget talk: </b> "+ECeditarray[275].length+"</tt><br/>" }
        if(ECeditarray[1000].length > 0) { t1+="<tt><b>WikiForum: </b> "+ECeditarray[1000].length+"</tt><br/>" }
        if(ECeditarray[1001].length > 0) { t1+="<tt><b>Overleg WikiForum: </b> "+ECeditarray[1001].length+"</tt><br/>" }
        if(ECeditarray[1002].length > 0) { t1+="<tt><b>Mededeling: </b> "+ECeditarray[1002].length+"</tt><br/>" }
        if(ECeditarray[1003].length > 0) { t1+="<tt><b>Overleg mededeling: </b> "+ECeditarray[1003].length+"</tt><br/>" }
        if(ECeditarray[1004].length > 0) { t1+="<tt><b>Tijdcode verleden: </b> "+ECeditarray[1004].length+"</tt><br/>" }
        if(ECeditarray[1005].length > 0) { t1+="<tt><b>Overleg tijdcode verleden: </b> "+ECeditarray[1005].length+"</tt><br/>" }
        t1+="<tt><b>Anders (never defined namespace?): </b>"+(ECeditcount-ECeditarray[0].length- ECeditarray[1].length- ECeditarray[2].length- ECeditarray[3].length- ECeditarray[4].length- ECeditarray[5].length- ECeditarray[6].length- ECeditarray[7].length- ECeditarray[8].length- ECeditarray[9].length- ECeditarray[10].length- ECeditarray[11].length- ECeditarray[12].length- ECeditarray[13].length- ECeditarray[14].length- ECeditarray[15].length- ECeditarray[274].length- ECeditarray[275].length- ECeditarray[1000].length- ECeditarray[1001].length- ECeditarray[1002].length- ECeditarray[1003].length- ECeditarray[1004].length- ECeditarray[1005].length)+"</tt><br/>"
        t1+="</div>"

        ECobject1.innerHTML = t1
      }
    }
  }
}

addOnloadHook(ECstart);
addOnloadHook(ECaddlinks);
Afkomstig van Wikikids , de interactieve Nederlandstalige Internet-encyclopedie voor en door kinderen. "https://wikikids.nl/index.php?title=Gebruiker:Sumurai8/editcount.js&oldid=176135"