User:CComMack/monobook.js

/* */ //A helper function to add a button to one of the toolbars in the interface. //An improved(I hope) version of addlilink. //JesseW, the juggling janitor 05:33, 8 November *2005 (UTC)

function addLink(where, url, name, id, title, key, after){ //* where is the id of the toolbar where the button should be added; //  i.e. one of "p-cactions", "p-personal", "p-navigation", or "p-tb". //   //* url is the URL which will be called when the button is clicked. //  javascript: urls can be used to do more complex things. //   //* name is what will appear as the name of the button. //   //* id is the id of the button; it's best to define one. //  Use a prefix to make sure its unique. Optional. //   //* title is the tooltip title that gives a longer description //  of the button; if you define a accesskey, mention it here. Optional. //   //* key is the char you want for the accesskey. Optional. //   //* after is the id of the button you want to follow this one. Optional. //   var na = document.createElement('a'); na.href = url; na.appendChild(document.createTextNode(name)); var li = document.createElement('li'); if(id) li.id = id; li.appendChild(na); var tabs = document.getElementById(where).getElementsByTagName('ul')[0]; if(after) { tabs.insertBefore(li,document.getElementById(after)); } else { tabs.appendChild(li); }   if(id) { if(key && title) { ta[id] = [key, title]; } else if(key) { ta[id] = [key, '']; } else if(title) { ta[id] = ['', title];} }   // re-render the title and accesskeys from existing code in wikibits.js    akeytt; return li; } /* */

/* */

function replace { var s = prompt("Search regexp?"); if(s) { var r = prompt("Replace regexp?"); if(!r && r != '') return; var txt = document.editform.wpTextbox1; txt.value = txt.value.replace(new RegExp(s, "g"), r); } }

addOnloadHook(function {    if(document.forms.editform) {        addLink('p-cactions', 'javascript:replace', 'replace', 'ca-replace', 'Regexp replace for the edit window', '', 'ca-history');    } });

/* */

//

// This script changes the "Your signature with timestamp" edit button to use a real em dash instead of two hyphens.

(function {    var oldAddButton = addButton;    if (typeof(oldAddButton) != 'function') return;    addButton = function  {        if (arguments.length > 2)            arguments[2] = arguments[2].replace(/^--(~+)$/, '—$1');        oldAddButton.apply(this, arguments);    }; });

//

// This will add an [edit] link at the top of all pages except preview pages and the main page // by User:Pile0nades

// Add an [edit] link to pages addOnloadHook(function {  // if this is preview page or generated page, stop  if( document.getElementById("wikiPreview") || document.getElementById("histlegend‎") || document.getElementById("difference‎") || document.getElementById("watchdetails") || document.getElementById("ca-viewsource") || window.location.href.indexOf("/wiki/Special:") != -1 ) {   if(window.location.href.indexOf("&action=edit&section=0") != -1) {      document.getElementById("wpSummary").value = "/* Intro */ ";    }    return;  };

// get the page title var pageTitle = mw.config.get('wgPageName');

// create div and set innerHTML to link var divContainer = document.createElement("div"); divContainer.innerHTML = ' [edit intro] ';

// insert divContainer into the DOM below the h1 if(window.location.href.indexOf("&action=edit") == -1) { document.getElementById("content").insertBefore(divContainer, document.getElementsByTagName("h1")[0]); }

});  //  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   // gsEditcountInsertBefore = 'pt-mycontris'; // leave blank to append after "logout"   // function EditcountLink {   var user = document.getElementById( 'pt-userpage').firstChild.firstChild.data;   var li = document.createElement( 'li' );     li.id = 'pt-editcount';     var a = document.createElement( 'a' );       a.appendChild( document.createTextNode( 'edit count' ) ); // eh, the css makes the text lowercase       a.href = 'http://stable.ts.wikimedia.org/editcount/';     li.appendChild( a );   if ( ! gsEditcountInsertBefore ) // append to end (right) of list  {  document.getElementById( 'pt-logout' ).parentNode.appendChild( li );   }   else   {  var before = document.getElementById( gsEditcountInsertBefore );       before.appendChild( li, before );   } }    if ( window.addEventListener ) window.addEventListener( 'load', EditcountLink, false ); else if ( window.attachEvent      ) window.attachEvent   ( 'onload', EditcountLink );