User:RPellessier/standard.js

From Wikipedia, the free encyclopedia
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.
  //  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 );

 // This version is for users of the ''classic'' skin, where it can be added to
 // [[User:USERNAME/standard.js]]. The script places a 'Kate' link immediately following
 // your "User (Talk)" links at the top of the classic skin layout.

 function KateLinkClassicSkin()
 {
 		//	This is tricky, as there are so few tag-IDs to assist us.
 		//	I'm placing Kate right after the "User (Talk)" links at top.
 		//
 	var td = document.getElementById( 'topbar' ).getElementsByTagName( 'td' )[ 2 ];
 	var user = td.getElementsByTagName( 'a' )[ 0 ];
 	var name = user.firstChild.nodeValue;
 	var loc = td.getElementsByTagName( 'br' )[ 0 ]; // insert before this
 
 	var kate = document.createElement( 'a' );
 		kate.appendChild( document.createTextNode( 'Kate' ) );
 		kate.href = 'http://tools.wikimedia.de/~kate/cgi-bin/count_edits?dbname=enwiki&user=' + name;
 
 	td.insertBefore( document.createTextNode( ' ' ), loc );
 	td.insertBefore( kate, loc );
 }
 if ( window.addEventListener ) window.addEventListener( 'load', KateLinkClassicSkin, false );
 else if ( window.attachEvent ) window.attachEvent( 'onload', KateLinkClassicSkin );