User:Ferix/monobook.js

// Name:         Wikipedia user menu // Version:      0.4 // Description:  Adds personalised version of Template:Userinfo to all wikipedia user pages //               removes the template from pages that already have it

$(function { if (document.getElementById('TemplateUserinfo')) {    var templateuserinfo=document.getElementById('TemplateUserinfo');    var removetemplate=document.getElementById('bodyContent').removeChild(templateuserinfo);  }  //  var regex=/^User:([^\/]+)$/;  //  var title=document.getElementsByTagName('h1')[0].firstChild.nodeValue;  var regex=/^User:([^\/]+) - Wikipedia, the free encyclopedia$/;  var title=document.title;  if (title.match(regex)) {    var rawusername=title.match(regex);    var username=rawusername[1].replace(/ /, '_');    function addUserMenu {      var body, menu, menulinkcontribs, menuspacercontribs, menulinkinteriot, menuspacerinteriot, menulinkimages, menuspacerimages, menulinkesu;      body=document.getElementById('bodyContent');      menu=document.createElement('div');      menulinkcontribs=document.createElement('a');      menulinkinteriot=document.createElement('a'); menulinkimages=document.createElement('a'); menulinkesu=document.createElement('a'); menu.id='TemplateUserinfo'; menu.setAttribute('class', 'plainlinks'); menu.setAttribute('style', 'position: absolute; right: 1.15em; top: 1.3em; font-size: 90%;'); menulinkcontribs.setAttribute('href', '/wiki/Special:Contributions/' + username + ''); menulinkcontribs.setAttribute('class', 'external text'); menulinkcontribs.setAttribute('title', '' + username + '\'s contributions'); menulinkcontribstext=document.createTextNode('contributions'); menulinkinteriot.setAttribute('href', 'http://tools.wikimedia.de/~interiot/cgi-bin/count_edits?user=' + username + '&amp;dbname=enwiki_p'); menulinkinteriot.setAttribute('class', 'external text'); menulinkinteriot.setAttribute('title', '' + username + '\'s edit count'); menulinkinteriottext=document.createTextNode('edit count (interiot)'); menulinkimages.setAttribute('href', 'http://tools.wikimedia.de/~daniel/WikiSense/Gallery.php?wikilang=en&wikifam=.wikipedia.org&img_user_text=' + username + '&order=-img_timestamp&order=-img_timestamp&format=html'); menulinkimages.setAttribute('class', 'external text'); menulinkimages.setAttribute('title', '' + username + '\'s uploaded images'); menulinkimagestext=document.createTextNode('images'); menulinkesu.setAttribute('href', 'http://www.math.ucla.edu/~aoleg/wp/rfa/edit_summary.cgi?user=' + username + ''); menulinkesu.setAttribute('class', 'external text'); menulinkesu.setAttribute('title', '' + username + '\'s edit summary usage'); menulinkesutext=document.createTextNode('edit summary usage'); menulinkcontribs.appendChild(menulinkcontribstext); menulinkinteriot.appendChild(menulinkinteriottext); menulinkimages.appendChild(menulinkimagestext); menulinkesu.appendChild(menulinkesutext); menuspacercontribs=document.createTextNode(' | '); menuspacerinteriot=document.createTextNode(' | '); menuspacerimages=document.createTextNode(' | '); menu.appendChild(menulinkcontribs); menu.appendChild(menuspacercontribs); menu.appendChild(menulinkinteriot); menu.appendChild(menuspacerinteriot); menu.appendChild(menulinkimages); menu.appendChild(menuspacerimages); menu.appendChild(menulinkesu); body.appendChild(menu); }   addOnloadHook(addUserMenu); }

});

// Description:  change the names of personal tools links and tabs //               stolen from User:Trilobite/monobook.js

function changelinks { if(!document.getElementById) { return; } if (document.createTextNode) { var mytalk, preferences, watchlist, mycontris, logout; mytalk=document.getElementById('pt-mytalk').firstChild.firstChild; mytalk.nodeValue='Talk'; preferences=document.getElementById('pt-preferences').firstChild.firstChild; preferences.nodeValue='Preferences'; watchlist=document.getElementById('pt-watchlist').firstChild.firstChild; watchlist.nodeValue='Watchlist'; mycontris=document.getElementById('pt-mycontris').firstChild.firstChild; mycontris.nodeValue='Contributions'; logout=document.getElementById('pt-logout').firstChild.firstChild; logout.nodeValue='Log out'; if(document.getElementById('ca-nstab-user')) { var nstabuser=document.getElementById('ca-nstab-user').firstChild.firstChild; nstabuser.nodeValue='User'; }   if(document.getElementById('ca-talk')) { var talk=document.getElementById('ca-talk').firstChild.firstChild; talk.nodeValue='Talk'; }   if(document.getElementById('ca-edit')) { var edit=document.getElementById('ca-edit').firstChild.firstChild; edit.nodeValue='Edit'; }   if(document.getElementById('ca-viewsource')) { var viewsource=document.getElementById('ca-viewsource').firstChild.firstChild; viewsource.nodeValue='Source'; }   if(document.getElementById('ca-watch')) { var watch=document.getElementById('ca-watch').firstChild.firstChild; watch.nodeValue='Guard'; }   if(document.getElementById('ca-unwatch')) { var unwatch=document.getElementById('ca-unwatch').firstChild.firstChild; unwatch.nodeValue='Ignore'; } }  else { document.getElementById('pt-mytalk').firstChild.innerHTML = 'Talk'; document.getElementById('pt-preferences').firstChild.innerHTML = 'Preferences'; document.getElementById('pt-watchlist').firstChild.innerHTML = 'Watchlist'; document.getElementById('pt-mycontris').firstChild.innerHTML = 'Contributions'; document.getElementById('pt-logout').firstChild.innerHTML = 'Log out'; if(document.getElementById('ca-nstab-user')) { document.getElementById('ca-nstab-user').firstChild.innerHTML = 'User'; }   if(document.getElementById('ca-talk')) { document.getElementById('ca-talk').firstChild.innerHTML = 'Talk'; }   if(document.getElementById('ca-edit')) { document.getElementById('ca-edit').firstChild.innerHTML = 'Edit'; }   if(document.getElementById('ca-viewsource')) { document.getElementById('ca-viewsource').firstChild.innerHTML = 'Source'; }   if(document.getElementById('ca-watch')) { document.getElementById('ca-watch').firstChild.innerHTML = 'Guard'; }   if(document.getElementById('ca-unwatch')) { document.getElementById('ca-unwatch').firstChild.innerHTML = 'Ignore'; } } }

$(changelinks);

// Name:         Wikipedia Purge Tab // Description:  Adds purge tab to Wikipedia pages //               stolen from User:BesigedB/monobook.js

function addPurgeButton { var href = document.location.href; if ( href.search( /[^:]*:\/\/en\.wikipedia\.org\/(wiki\/|w\/index\.php\?title=)([^&?]*)/ ) === 0 && document.getElementById('ca-history')) { var historyHref = document.getElementById( "ca-history" ).firstChild.href; var div = document.getElementById( "p-cactions" ); var ul = div.getElementsByTagName( "ul" )[0]; var newLi = document.createElement( "li" ); var newA = document.createElement( "a" ); newA.setAttribute( "href", historyHref.replace( "=history" , "=purge" ) ); if (document.createTextNode) { var text = document.createTextNode( "Purge" ); newA.appendChild( text ); }   else { newA.innerHTML='Purge'; }   newLi.appendChild( newA ); ul.appendChild( newLi ); } }

$(addPurgeButton);