MediaWiki:Common.js

    From Nonbinary Wiki
    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 ');