Jump to content

User:Nihiltres/monobook.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.
// Tab name fixer (copied from User:Anomie/fix-tab-text.js, target content modified)
/* A simple javascript function to change the text in various tabs at the top of the
 * page. Only tested with the monobook skin.
 */
addOnloadHook(function(){
    var fix=function(id, text){
        var el=document.getElementById(id);
        if(!el) return;
        for(el=el.firstChild; el && el.nodeName!='A'; el=el.nextSibling);
        if(!el) return;
        while(el.firstChild) el.removeChild(el.firstChild);
        el.appendChild(document.createTextNode(text));
    }

    /* Add lines as necessary. Use the Firefox DOM inspector or some such to determine
     * the appropriate IDs.
     */
//(disabled via commenting)    fix('ca-talk', 'discussion');
    fix('ca-edit', 'edit');
    fix('pt-preferences', 'preferences');
    fix('pt-watchlist', 'watchlist');
    fix('pt-mytalk', 'talk');
    fix('pt-mycontris', 'contributions');
});
//end tab name fixer

//Special additions of tabs and personal links
//--personal links
addOnloadHook(function() {
//----link to log
mw.util.addPortletLink('p-personal','/wiki/Special:Log?user=Nihiltres','log','pt-log','Log of your non-edit actions','',document.getElementById('pt-mycontris'));
if (mw.config.get('wgPageName') == "Special:Log" && document.getElementById('mw-log-user').value == "Nihiltres") {document.getElementById('pt-log').className='active';}
//----link to sandbox
mw.util.addPortletLink('p-personal','/wiki/User:Nihiltres/Sandbox','sandbox','pt-sandbox','Your sandbox','',document.getElementById('pt-preferences'));
if (mw.config.get('wgPageName') == "User:Nihiltres/Sandbox") {document.getElementById('pt-sandbox').className='active';}
});
//--tabs
//----purge tab
addOnloadHook(function() {
  if (mw.config.get('wgCanonicalNamespace') != 'Special')
    {
mw.util.addPortletLink('p-cactions', mw.config.get('wgServer') + mw.config.get('wgScript') + '?title=' + escape(mw.config.get('wgPageName')) + '&action=purge', 'purge', 'ca-purge', 'Purge the server cache of this page', null, (document.getElementById('ca-watch') ? document.getElementById('ca-watch') : document.getElementById('ca-unwatch')));
//and apply the "selected" class, so that one can confirm that the page has been purged. This subroutine is all my own, I'm so proud :p
    if (mw.config.get('wgAction') == "purge") {document.getElementById('ca-purge').className='selected';}
    }
});
//end special additions

//auto-check the "watch this page" tab when editing the MediaWiki namespace, my own code.
addOnloadHook(function() {
  if (mw.config.get('wgCanonicalNamespace') == 'MediaWiki' && mw.config.get('wgAction') == "edit") {document.getElementById('wpWatchthis').checked = true;}
});

//end auto-check for MediaWiki-space editing

//Remove search box and add a plain link in the Navigation section
addOnloadHook(function() {
      document.getElementById("p-search").style.display="none"; //this is done in JS so that if JS fails, the hack fails gracefully back to the search box.
      mw.util.addPortletLink('p-navigation','/wiki/Special:Search','Search','n-search','Search Wikipedia','',null,null);
});
//end search stuff

//enable special user CSS and JS pages for while using my iPod Touch… somewhat experimental but should be quite useful.
addOnloadHook(function() {
  if ((navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i))) {
    importStylesheet('User:Nihiltres/iPod.css');
    importScript('User:Nihiltres/iPod.js');
}});