Jump to content

User:Bte288/monobook.js

From Wikipedia, the free encyclopedia

This is the current revision of this page, as edited by Bte288 (talk | contribs) at 18:38, 31 December 2005. The present address (URL) is a permanent link to this version.

(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)
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.
/* </nowiki> */

 //  Add a "Kate" link to your monobook "personal menu" list at the very
  //  top of the page.
  //
  //  Indicate where you would like "Kate" to appear:
  //    pt-userpage, pt-mytalk, pt-preferences,
  //    pt-watchlist, pt-mycontris, pt-logout
  //
gsKateInsertBefore = 'pt-mycontris'; // leave blank to append after "logout"
  //
function KateLink()
{
  var user = document.getElementById( 'pt-userpage').firstChild.firstChild.data;

  var li = document.createElement( 'li' );
    li.id = 'pt-kate';

    var a = document.createElement( 'a' );
      a.appendChild( document.createTextNode( 'Kate' ) ); // eh, the css makes the text lowercase
      a.href = 'http://tools.wikimedia.de/~kate/cgi-bin/count_edits?dbname=enwiki&user=' + user;

    li.appendChild( a );

  if ( ! gsKateInsertBefore ) // append to end (right) of list
  {  document.getElementById( 'pt-logout' ).parentNode.appendChild( li );
  }
  else
  {  var before = document.getElementById( gsKateInsertBefore );
      before.appendChild( li, before );
  }
}
   if ( window.addEventListener ) window.addEventListener( 'load', KateLink, false );
else if ( window.attachEvent      ) window.attachEvent   ( 'onload', KateLink );


// ================================================================
// Adds an unwatch link after each entry on the regular watchlist 
// (instead of requiring you to navigate to a separate page)
// by User:Omegatron
// Workaround for Bug 424 http://bugzilla.wikipedia.org/show_bug.cgi?id=424

function unwatchlinks(){
if(document.title.indexOf("My watchlist") == 0) {
    var x,i;
    x=document.links;                                           // Gets all the links on the page
        for(i=0;i<x.length;++i) {
            if (/action=history/.test(x[i].href)) {             // Find all the ones that link to history pages
                newUnwatchLink = document.createElement('a');
                newSeparator = document.createTextNode("; ");
                newUnwatchLink.href = x[i].href.match(/\/w\/.+?&/) + "action=unwatch";    // Replace the action=history with action=unwatch
                newUnwatchLink.innerHTML = "un";
                x[i].parentNode.insertBefore(newUnwatchLink, x[i].nextSibling);
                x[i].parentNode.insertBefore(newSeparator, x[i].nextSibling);             // Insert after the hist link with a semicolon
            }
        }
    }
}


//************************************ Edit lead section *****************************
//From http://en.wikipedia.org/w/index.php?title=User:ABCD/monobook.js&oldid=19452182
function addEditSection0(){
    ta['ca-edit-0'] = ['', 'Edit the zeroth section of this page'];
    if(!document.getElementById) return;
    var x = document.getElementById('ca-edit');
    if(!x) return;
    var y = document.createElement('LI');
    y.id = 'ca-edit-0';
    if(x.className == 'selected'){
      if(/&action=edit&section=0$/.test(window.location.href)){
        x.className = 'istalk';
        y.className = 'selected';
      } else {
        x.className = 'selected istalk';
      }
    } else if(x.className == 'selected istalk'){
      if(/&action=edit&section=0$/.test(window.location.href)){
        x.className = 'istalk';
        y.className = 'selected istalk';
      } else {
        y.className = 'istalk';
      }
    } else {
      y.className = x.className;
      x.className = 'istalk';
    }
    var z = document.createElement('A');
    if(x.children){
        z.href = x.children[0].href + '&section=0';
        z.appendChild(document.createTextNode('0'));
        y.appendChild(z);
        document.getElementById('p-cactions').children[1].insertBefore(y,x.nextSibling);
    }else{
        z.href = x.childNodes[0].href + '&section=0';
        z.appendChild(document.createTextNode('0'));
        y.appendChild(z);
        document.getElementById('p-cactions').childNodes[3].insertBefore(y,x.nextSibling);
    }
}



// ================================================================
// Loads each tool after loading the page

window.onload = Main;
function Main() {
    morelinks();
    unwatchlinks();
    addEditSection0();
}

/* </nowiki> */