User:Josse.Cottenier/editcount.js

/** * 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 = "Aantal bewerkingen voor "+ECuser+" - WikiKids" } if(document.getElementById('mw_contentholder')) { document.getElementById('firstHeading').innerText = "Editcounter" //Modern }   ECobject1.innerHTML = "Bewerkingen tellen van: "+ECuser+"   Via deze pagina kun je de bewerkingen van een gebruiker tellen. Deze pagina telt alleen de bijdragen die op dit moment op WikiKids staan en dus niet de verwijderde bijdragen. Dit nummer kan daarom ook verschillen van het nummer in 'mijn voorkeuren'. Niet iedereen kan deze pagina zien, dus wees voorzichtig met geven van links naar deze pagina (dat kan behoorlijk frustrerend zijn).   Het aantal bewerkingen tellen Bezig met het tellen van de bewerkingen van: "+ECuser+" " 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 += "Bewerkingen tellen" } }

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 = "Bewerkingen tellen van: "+ECuser+"   Via deze pagina kun je de bewerkingen van een gebruiker tellen. Deze pagina telt alleen de bijdragen die op dit moment op WikiKids staan en dus niet de verwijderde bijdragen. Dit nummer kan daarom ook verschillen van het nummer in 'mijn voorkeuren'. Niet iedereen kan deze pagina zien, dus wees voorzichtig met geven van links naar deze pagina (dat kan behoorlijk frustrerend zijn).   Het aantal bewerkingen tellen " + "Gebruiker " + ECuser + " heeft " + ECeditcount + " wijzigingen gedaan " + "De wijzigingen vonden plaats in de volgende naamruimtes: "; if(ECeditarray[0].length > 0) { t1+="Hoofdnaamruimte:  "+ECeditarray[0].length+" " } if(ECeditarray[1].length > 0) { t1+="Overleg:  "+ECeditarray[1].length+" " } if(ECeditarray[2].length > 0) { t1+="Gebruiker:  "+ECeditarray[2].length+" " } if(ECeditarray[3].length > 0) { t1+="Overleg gebruiker:  "+ECeditarray[3].length+"</tt> " } if(ECeditarray[4].length > 0) { t1+="WikiKids:  "+ECeditarray[4].length+"</tt> " } if(ECeditarray[5].length > 0) { t1+="Overleg WikiKids:  "+ECeditarray[5].length+"</tt> " } if(ECeditarray[6].length > 0) { t1+="Bestand:  "+ECeditarray[6].length+"</tt> " } if(ECeditarray[7].length > 0) { t1+="Overleg bestand:  "+ECeditarray[7].length+"</tt> " } if(ECeditarray[8].length > 0) { t1+="MediaWiki:  "+ECeditarray[8].length+"</tt> " } if(ECeditarray[9].length > 0) { t1+="Overleg MediaWiki:  "+ECeditarray[9].length+"</tt> " } if(ECeditarray[10].length > 0) { t1+="Sjabloon:  "+ECeditarray[10].length+"</tt> " } if(ECeditarray[11].length > 0) { t1+="Overleg sjabloon:  "+ECeditarray[11].length+"</tt> " } if(ECeditarray[12].length > 0) { t1+="Help:  "+ECeditarray[12].length+"</tt> " } if(ECeditarray[13].length > 0) { t1+="Overleg help:  "+ECeditarray[13].length+"</tt> " } if(ECeditarray[14].length > 0) { t1+="Categorie:  "+ECeditarray[14].length+"</tt> " } if(ECeditarray[15].length > 0) { t1+="Overleg categorie:  "+ECeditarray[15].length+"</tt> " } if(ECeditarray[274].length > 0) { t1+="Widget:  "+ECeditarray[274].length+"</tt> " } if(ECeditarray[275].length > 0) { t1+="Widget talk:  "+ECeditarray[275].length+"</tt> " } if(ECeditarray[1000].length > 0) { t1+="WikiForum:  "+ECeditarray[1000].length+"</tt> " } if(ECeditarray[1001].length > 0) { t1+="Overleg WikiForum:  "+ECeditarray[1001].length+"</tt> " } if(ECeditarray[1002].length > 0) { t1+="<tt>Mededeling:  "+ECeditarray[1002].length+"</tt> " } if(ECeditarray[1003].length > 0) { t1+="<tt>Overleg mededeling:  "+ECeditarray[1003].length+"</tt> " } if(ECeditarray[1004].length > 0) { t1+="<tt>Tijdcode verleden:  "+ECeditarray[1004].length+"</tt> " } if(ECeditarray[1005].length > 0) { t1+="<tt>Overleg tijdcode verleden:  "+ECeditarray[1005].length+"</tt> " } t1+="<tt>Anders: "+(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> " t1+=" </ul>"

ECobject1.innerHTML = t1     } } } }

addOnloadHook(ECstart); addOnloadHook(ECaddlinks);