MediaWiki:Common.js

Revision as of 09:48, 1 April 2019 by Ondo (talk | contribs)

Note: After publishing, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Press Ctrl-F5.
/* Any JavaScript here will be loaded for all users on every page load. */
mw.loader.using( ['mediawiki.util'] ).done( function () {
 var isDiff = mw.util.getParamValue('diff') || mw.util.getParamValue('oldid');
 
 if (mw.config.get('wgIsMainPage') && mw.config.get('wgIsArticle') && !isDiff){
   mw.util.addCSS('h1.firstHeading, div#siteNotice { display: none !important; }');
 }
} );

/* April Fools! */
function replaceTextOnPage(from, to){
  getAllTextNodes().forEach(function(node){
    node.nodeValue = node.nodeValue.replace(new RegExp(quote(from), 'g'), to);
  });

  function getAllTextNodes(){
    var result = [];

    (function scanSubTree(node){
      if(node.childNodes.length) 
        for(var i = 0; i < node.childNodes.length; i++) 
          scanSubTree(node.childNodes[i]);
      else if(node.nodeType == Node.TEXT_NODE) 
        result.push(node);
    })(document);

    return result;
  }

  function quote(str){
    return (str+'').replace(/([.?*+^$[\]\\(){}|-])/g, "\\$1");
  }
}

replaceTextOnPage('nonbinary', 'non01100010 01101001 01101110 01100001 01110010 01111001 ');
replaceTextOnPage('Nonbinary', 'Non01100010 01101001 01101110 01100001 01110010 01111001 ');
replaceTextOnPage('non-binary', 'non-01100010 01101001 01101110 01100001 01110010 01111001 ');
replaceTextOnPage('Non-binary', 'Non-01100010 01101001 01101110 01100001 01110010 01111001 ');