Jump to content

User:Markhurd/watchcontrib.js

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Markhurd (talk | contribs) at 17:13, 15 June 2009 (zero based indexes). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
Note: After saving, you have to bypass your browser's cache to see the changes. Google Chrome, Firefox, Microsoft Edge and Safari: Hold down the ⇧ Shift key and click the Reload toolbar button. For details and instructions about other browsers, see Wikipedia:Bypass your cache.
// Based on [[User:MarkHurd/hidetopcontrib.js]]

// [[User:Ais523/hidetopcontrib.js]]
// By a suggestion by [[User:Discospinster]]
// 090325 MEH Fixed where it is not hiding all (top)s, starting with redirects
//            and continuing after any regex mismatch.
// 090615 MEH Cater for new <span class="mw-uctop">
//            Add userHideAllSubsequent user setting.

// This script hides lines according to who has the top contribution for a page.

if (typeof userHideAllSubsequent=='undefined')
 userHideAllSubsequent=false;

//<pre><nowiki>

function watchcontrib()
{
   var i,li,a;
   li=document.getElementById("bodyContent");
   li=li.getElementsByTagName("li");
   i=-1;
   a=new Array();
   while(++i<li.length)
   {
     var s,t,links;
     links=li[i].getElementsByTagName("a");
     if (!(typeof links=='undefined' || links.length<4))
       //continue;
{// /*li[i]*/
     t=links[3].innerHTML.match(/"\/wiki\/([^"]*)"/); // " fix simple WP syntax highlighter

     if(t!=undefined)
       t=t[1];
     else
     { //li[i]
       t=links[3].innerHTML.match(/"\/w\/index\.php\?title\=([^&]*)\&amp\;redirect\=no"/);

       if(t!=undefined)
         t=t[1];
       else
         continue;
     }

     if(li[i].getElementsByTagName("strong").length>0||li[i].innerHTML.match(/\<span +class\="mw\-uctop"\>/)!=undefined)
       s="none";
     else
       s="";

     if(a[t]!=undefined)
       s=userHideAllSubsequent?"none":a[t];
     else
       a[t]=s;
}
     //if(s!="")
        li[i].innerHTML=li[i].innerHTML + ":" + s + ":'" + t + "' " + (typeof links=='undefined')?"0":links.length + (links!=undefined && links.length>4)?("("+links[3].innerHTML+")"):"";
      // li[i].style.display=(li[i].style.display=="none"?"list-item":"none");
   }
 }

addOnloadHook(function () {
   if((location.href.indexOf("Special:Contributions")!=-1||
       location.href.indexOf("Special%3AContributions")!=-1))
     addPortletLink('p-cactions', 'javascript:watchcontrib()', 'debug top', 'ca-watchtop',
                    "Show/hide pages for which you're the top contributor", '');
 });

//</nowiki></pre>
//[[:Category:Wikipedia scripts]]