User:Ilmari Karonen/edittoolstest.js

From Wikipedia, the free encyclopedia

Note: After saving, you have to bypass your browser's cache to see the changes. In Internet Explorer and Firefox, hold down the Ctrl key and click the Refresh or Reload button. Opera users have to clear their caches through Tools→Preferences, see the instructions for Opera. Konqueror and Safari users can just click the Reload button.

/*
TEST OF JAVASCRIPT EDITTOOLS
 
To try out this feature, add the following lines to your monobook.js:
 
  importScript("User:Ilmari Karonen/edittoolstest.js");
  window.testJsEdittools = true;
 
To deploy this feature sitewide, the code below should be copied to [[MediaWiki:Common.js]],
while the code at [[User:Ilmari Karonen/edittools.js]] should be moved to [[MediaWiki:Edittools.js]].
After 30 days have passed (to allow time for browser caches to purge), the #editpage-specialchars
div and everything in it in [[MediaWiki:Edittools]] should be replaced with:
 
  <div id="editpage-specialchars" class="edittools-version-0001"></div>
 
During the 30-day interval between initial and full deployment (while the class name still has "test"
in it), the code may be tested simply by setting "window.testJsEdittools = true".  It should be safe
to run this script more than once: it will only work the first time, after that it will have removed
the #editpage-specialchars div and so will no longer do anything.
*/
 
if (wgAction == 'edit' || wgAction == 'submit') addOnloadHook(function () {
    var placeholder = document.getElementById("editpage-specialchars");
    if (!placeholder || window.noDefaultEdittools) return;
    var match = /(?:^| )edittools-version-(\d+)(?: |$)/.exec(placeholder.className);
 
    if (!match && window.testJsEdittools)
        match = /(?:^| )edittools-version-(test\d+)(?: |$)/.exec(placeholder.className);
 
    if (!match) return;
    var url = wgScript + '?title=User:Ilmari_Karonen/edittools.js&action=raw&ctype=text/javascript&nocache=' + match[1];
    // var url = wgScript + '?title=MediaWiki:Edittools.js&action=raw&ctype=text/javascript&nocache=' + match[1];
 
    if (window.importScriptURI) {
        importScriptURI(url);
    } else {
        // while waiting for a scap...
        var scriptElem = document.createElement( 'script' );
        scriptElem.setAttribute( 'src' , url );
        scriptElem.setAttribute( 'type' , 'text/javascript' );
        document.getElementsByTagName( 'head' )[0].appendChild( scriptElem );
    }
});