MediaWiki:Gadget-GradientHeaders.js

From Elwiki
Revision as of 22:42, 4 June 2016 by Boxsnake (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.
$('tr:not(.rainbow)').each(function(){
    var tr = $(this);
    var bgcolor = tr.css('background-color');
    var bgimage = tr.css('background-image');

    if(bgcolor != 'Rainbow' && bgimage == 'none'){
        var Pc = bgcolor.match(/rgba\(\s*\d+\s*,\s*\d+\s*,\s*\d+,\s*(0?\.\d+||[01](.0*)?)\s*\)/);
        Pc = Pc && Pc[1] ? Pc[1] : 1;
        Pc = Math.round(255 - 17 * Pc);
        var grayscale = 'rgb(' + [Pc, Pc, Pc].join() + ')';

        tr.children('th').each(function(){
            var th = $(this);
            var Hbgcolor = th.css('background-color');
            var Hbgimage = th.css('background-image');

            if(Hbgcolor != 'Rainbow' && Hbgimage == 'none'){
                th.css('background-image', 'linear-gradient(to bottom, ' + grayscale + ', ' + bgcolor + ')');
            }
        });
    }
});