User:Harryboyles/monobook.js

//External scripts // //Metadata script importScript('User:Pyrospirit/metadata.js'); //User:Pyrospirit/metadata.js //Navigation popups importScript('User:Lupin/popups.js'); //Adjusts Special:Log to present information in a easy to read table importScript('User:Alex_Smotrov/logpage.js'); //Enhances Special:Whatlinkshere with more options for filtering the list importScript('User:Barticus88/WhatLinksHere.js'); //Adds a tab to edit the 0'th section of the page importScript('Wikipedia:WikiProject User scripts/Scripts/Add edit section 0'); //Adds a "Changes since last load" link to your watchlist importScript('Wikipedia:WikiProject_User_scripts/Scripts/Watchlist_since'); //Adds a tab which shows the diff since the current user last edited the page importScript('Wikipedia:WikiProject User scripts/Scripts/Changes since I last edited'); //Adds AJAX unwatch links (x) to each entry in the watchlist. importScript('User:Alex Smotrov/wlunwatch.js'); //Adds a tab to hide the "top" diffs on Special:Contributions importScript('User:Ais523/hidetopcontrib.js'); //Edit suggestion improvement importScript('User:Cameltrader/Advisor.js'); //Dispenser's Link checker importScript('User:Dispenser/Link checker/toolbox.js'); //Lupin's Antivandal script importScript('User:Lupin/recent2.js'); //Dr pda's category template script importScript('User:Dr pda/templatecheck.js'); //Dr pda's edit references script importScript('User:Dr pda/editrefs.js'); //Dr pda's article history script importScript('User:Dr pda/articlehistory.js'); //Articles for creation improvement if(mw.config.get('wgPageName').split("/")[0] == "Wikipedia:Articles_for_creation") { // User:Henrik/afc-helper importScript('User:Henrik/js/afc-helper.js'); } //Alters the history tab (see User talk:Alex Smotrov/histcomb.js for description if(mw.config.get('wgAction') == 'history') { histCombNoCollapse=true;  importScript('User:Alex Smotrov/histcomb.js'); } //Navigation popups configuration			 popupDelay=0.75; popupHideDelay=0.25; popupOnEditSelection=false;// Popups will not appear in the edit box popupSubpopups=false;// Popups won't appear when pointing at a link in a popup popupFixDabs=true; popupContribsPreviewLimit=10;// Adjusts the number of contributions shown for a user //Changes since I last edited configuration defaultdiffs = 1000;

//Internal scripts //--- //Trims "Wikipedia, the free encyclopedia" from the title of the page TrimTitle; function TrimTitle{ var pagetitle= document.title; var endtext = 35; document.title = String(pagetitle).substring(0,pagetitle.length - endtext); }

//Adds a list of empty categories in an article to the top of the page addOnloadHook(function DupCats{ if(document.getElementById('catlinks')&&wgNamespaceNumber==0) { var newcatlinks = document.getElementById('catlinks').cloneNode(true);  newcatlinks.id = 'emptycats';  var newlinkscount = 0;  var listitems = newcatlinks.firstChild.getElementsByTagName('a');    for (i=0;i 0)  {    sitebyline = document.getElementById("siteSub");    sitebyline.parentNode.insertBefore(newcatlinks, sitebyline.nextSibling);    } } }); //Replace edit summary info link with plain text and minor edit link addOnloadHook(function RemoveEditSummaryLink{ if(linkElementBox = document.getElementById('wpSummaryLabel')) { var linkElementSpan = linkElementBox.firstChild.firstChild; var newText = document.createTextNode('Edit summary '); linkElementSpan.removeChild(linkElementSpan.firstChild); linkElementSpan.insertBefore(newText,linkElementSpan.firstChild); } if(linkMinorEdit = document.getElementById('minoredit_helplink')) { linkMinorEdit.parentNode.removeChild(linkMinorEdit); } }) //Various links for information about users in the toolbox on the left hand side if (mw.config.get('wgCanonicalNamespace') == "User" || mw.config.get('wgCanonicalNamespace') == "User_talk") addOnloadHook(AddUserInformationLinks); function AddUserInformationLinks{ var UserName = mw.config.get('wgTitle').split(":")[0]; UserName = UserName.split("/")[0]; //Actions performed by user: deletions, protections, etc)   url = mw.config.get('wgServer') + mw.config.get('wgScript') + "?title=Special:Log&user=" + UserName;    mw.util.addPortletLink("p-tb", url, "Actions by user", "pt-byuserlogs", "Log of actions this user has performed");	//Actions performed on user (promotions, blocks, etc)    url = mw.config.get('wgServer') + mw.config.get('wgScript') + "?title=Special:Log&page=User:" + UserName;    mw.util.addPortletLink("p-tb", url, "Actions on user", "pt-onuserlog", "Log of actions performed on this user as well as their main user page");

//List of blocks on this user url = mw.config.get('wgServer') + mw.config.get('wgScript') + "?title=Special:Log&type=block&user=&page=User:" + UserName; mw.util.addPortletLink("p-tb", url, "Block log", "pt-blocklog", "Log of blocks applied to this user (if any)"); //Blocked currently? url = mw.config.get('wgServer') + mw.config.get('wgScript') + "?title=Special:Ipblocklist&ip=" + UserName; mw.util.addPortletLink("p-tb", url, "Block status", "pt-blockstatus", "Whether this user or IP address is currently blocked"); //Admin or other permissions? url = mw.config.get('wgServer') + mw.config.get('wgScript') + "?title=Special:Listusers&limit=1&username=" + UserName; mw.util.addPortletLink("p-tb", url, "User permissions", "pt-userrights", "Permissions (if any) granted to the user"); //List of deleted contributions url = mw.config.get('wgServer') + mw.config.get('wgScript') + "?title=Special:DeletedContributions&target=" + UserName; mw.util.addPortletLink("p-tb", url, "Deleted contribs", "pt-deletedcontribs", "List of contributions that have subsequently been deleted"); //Subpages url = mw.config.get('wgServer') + mw.config.get('wgScript') +"?title=Special:Prefixindex&namespace=" + mw.config.get('wgNamespaceNumber') + "&from=" + UserName; mw.util.addPortletLink("p-tb", url, "Subpages of user", "pt-subpages", "A list of all the subpages existing in a user's userspace"); }

//A clock that sits in the top right hand corner (with a purge link included). $(function{     mw.util.addPortletLink("p-personal", mw.config.get('wgServer') + mw.config.get('wgScript') + '?title=' + mw.config.get('wgPageName').replace(/&/g,'%26') + '&action=purge', 'UTC time', 'utcdate');      showtime;   }); function showtime{ var time   = new Date; var date   = time.getUTCDate; var months = 'January February March April May June July August September October November December'.split(' '); month  = months[time.getUTCMonth]; var year   = time.getUTCFullYear; var hours  = '0' + time.getUTCHours; hours  = hours.substr(hours.length-2, hours.length); var minutes = '0' + time.getUTCMinutes; minutes = minutes.substr(minutes.length-2, minutes.length); var seconds = '0' + time.getUTCSeconds; seconds = seconds.substr(seconds.length-2, seconds.length); var timeValue = hours + ":" + minutes + ":" + seconds + ", " + month + " " + date + " " + year + " (UTC)"; if (document.getElementById('utcdate')){ document.getElementById('utcdate').firstChild.innerHTML = timeValue; }     timerID = setTimeout('showtime', 1000); } //Adds a tab to view the source wikicode of the page $(function {      if (location.href.indexOf('viewsource=1') != -1) {         sl = document.getElementById('wpSummaryLabel'); sl.parentNode.removeChild(sl);         ed = document.getElementById('wpSummary').parentNode; ed.parentNode.removeChild(ed);         return;      }      editbutton = document.getElementById('ca-edit');      if (editbutton && location.href.indexOf('action=edit')==-1) {         editlink = editbutton.getElementsByTagName('a')[0].href + '&viewsource=1';         tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0];         na = document.createElement('a');         na.href = editlink; na.appendChild(document.createTextNode('source'));         li = document.createElement('li'); li.id = 'ca-viewsource'; li.appendChild(na);         tabs.insertBefore(li,editbutton);      } }); //Renames the new section link on talk pages $(function {  if(document.getElementById('ca-addsection'))  {    q=document.getElementById('ca-addsection').firstChild;     q.removeChild(q.firstChild);    q.appendChild(document.createTextNode("+"));  } }); //Renames the talk tab $(function {  if(document.getElementById('ca-talk'))  {	q=document.getElementById('ca-talk').firstChild; 	q.removeChild(q.firstChild);	q.appendChild(document.createTextNode("talk"));  } }); //Adds a tab which links to the last change made on a page $(function {  if(mw.config.get('wgCanonicalNamespace') != "Special")  {    mw.util.addPortletLink('p-cactions', mw.config.get('wgServer') + mw.config.get('wgScript') + '?title=' + mw.config.get('wgPageName') + "&diff=cur&oldid=prev",    'last', 'ca-last', 'Show most recent diff');  } }); //Adds a tab which links to the log for the page $(function {  if(mw.config.get('wgCanonicalNamespace') != "Special")  {    url = mw.config.get('wgServer') + mw.config.get('wgScript') + "?title=Special:Log&page=" + mw.config.get('wgPageName');    mw.util.addPortletLink("p-cactions", url, "page log", "ca-pagelog", "Log of actions performed on this page");  } });

$(function { if(document.getElementById("wikiPreview")) { if(document.getElementById("wikiPreview").display != "none") {   document.title = "Previewing " + mw.config.get('wgPageName'); document.getElementsByTagName("h1")[0].innerHTML = "Previewing " + mw.config.get('wgPageName'); } }

})

$(function {    url = mw.config.get('wgServer') + "/wiki/User:" + mw.config.get('wgUserName') + "/monobook.js";    mw.util.addPortletLink("p-personal", url, "My javascript", "pt-javascript", "Your javascript","" ,document.getElementById("pt-logout")); if(window.location.href == url) { document.getElementById("pt-javascript").className += " active"; }    url = mw.config.get('wgServer') + "/wiki/User:" + mw.config.get('wgUserName') + "/monobook.css";    mw.util.addPortletLink("p-personal", url, "My stylesheet", "pt-stylesheet", "Your stylesheet", "",document.getElementById("pt-logout")); if(window.location.href == url) { document.getElementById("pt-stylesheet").className += " active"; } }) $(function {

var Title = document.getElementsByTagName("h1")[0]; var Sitesub = document.getElementById("siteSub"); Title.parentNode.insertBefore(Sitesub, Title.nextSibling); if(mw.config.get('wgNamespaceNumber') != 0) {  Sitesub.display = "none"; } var br = document.createElement("br"); var heading = document.getElementById("firstHeading") heading.parentNode.insertBefore(br, heading.nextSibling);

var bodycon = document.getElementById("bodyContent"); var br2 = document.createElement("br"); bodycon.parentNode.insertBefore(br2, bodycon);

var subline = document.getElementById("contentSub"); br2.parentNode.insertBefore(subline, br2.nextSibling); })

if(mw.config.get('wgCanonicalNamespace') == "Category") { $(function { var mwpages = document.getElementById("mw-pages"); if(mwpages != null) { var categorylinks = mwpages.getElementsByTagName("a"); var editlinkbase = document.createElement("a"); editlinkbase.href = mw.config.get('wgServer') + mw.config.get('wgScript'); editlinkbase.title = "(edit)"; editlinkbase.className += " editcategorymember";

for(var i = 0; i<categorylinks.length;i++) {  var titlepage = categorylinks[i].title var editlink = editlinkbase.cloneNode(true); editlink.href += "?title=" + titlepage + "&action=edit"; editlink.innerHTML = "(edit) "; var normallink = categorylinks[i]; normallink.parentNode.insertBefore(editlink,normallink); i++; }

}

}) }