MediaWiki:Common.js

/* Any JavaScript here will be loaded for all users on every page load. */

AjaxRCRefreshText = 'Auto-refresh'; AjaxRCRefreshHoverText = 'Auto-refreshes the page.'; ajaxPages = ["Special:RecentChanges", "Special:WikiActivity"]; importScriptPage('ShowHide/code.js', 'dev'); importScriptPage('AjaxRC/code.js', 'dev'); importScriptPage('AjaxBatchDelete/code.js', 'dev'); importArticles({       type: "script",        articles: [                "w:c:dev:SignatureCheck/code.js",                "w:c:dev:View_Source/code.js",                "w:c:dev:ListAdmins/code.js",                "u:dev:SearchSuggest/code.js",                "w:c:dev:RevealAnonIP/code.js",                "MediaWiki:Common.js/Usertags.js"        ] });

// http://dev.wikia.com/wiki/RevealAnonIP window.RevealAnonIP = { permissions : ['rollback', 'sysop', 'bureaucrat', 'staff'] };

function updatetimer(i) { var now = new Date; var then = timers[i].eventdate; var diff = count = Math.floor((then.getTime - now.getTime) / 1000); // catch bad date strings if (isNaN(diff)) { timers[i].firstChild.nodeValue = '** ' + timers[i].eventdate + ' **'; return; }   // determine plus/minus if (diff < 0) { diff = -diff; var tpm = ' '; } else { var tpm = ' '; }   // calcuate the diff var left = (diff % 60) + ' seconds'; diff = Math.floor(diff / 60); if (diff > 0) left = (diff % 60) + ' minutes ' + left; diff = Math.floor(diff / 60); if (diff > 0) left = (diff % 24) + ' hours ' + left; diff = Math.floor(diff / 24); if (diff > 0) left = diff + ' days ' + left timers[i].firstChild.nodeValue = tpm + left; // a setInterval is more efficient, but calling setTimeout // makes errors break the script rather than infinitely recurse timeouts[i] = setTimeout('updatetimer(' + i + ')', 1000); } function checktimers { //hide 'nocountdown' and show 'countdown' var nocountdowns = getElementsByClassName(document, 'span', 'nocountdown'); for (var i in nocountdowns) nocountdowns[i].style.display = 'none' var countdowns = getElementsByClassName(document, 'span', 'countdown'); for (var i in countdowns) countdowns[i].style.display = 'inline' //set up global objects timers and timeouts. timers = getElementsByClassName(document, 'span', 'countdowndate'); //global timeouts = new Array; // generic holder for the timeouts, global if (timers.length == 0) return; for (var i in timers) { timers[i].eventdate = new Date(timers[i].firstChild.nodeValue); updatetimer(i); //start it up   } } addOnloadHook(checktimers); function liveClock { var link = wgServer + wgScriptPath + '/index.php?title=' + encodeURIComponent(wgPageName) + '&action=purge'; if (skin == 'monobook') { $('#p-personal .pBody ul').append(' '); } else if (skin == 'oasis') { $('#WikiaPage #WikiHeader div.buttons').prepend('  '); }   $('#utcdate').css({        fontSize: 'larger',        fontWeight: 'bolder',        textTransform: 'none'    }); //showTime; } addOnloadHook(liveClock); // // ============================================================ // displayTimer // ============================================================ var refreshDate; function addDate { var UTCDate = ((new Date).toUTCString).replace("GMT", "(UTC)"); $('#showdate').empty.append(' ' + UTCDate.substring(5) + ' '); window.clearTimeout(refreshDate); refreshDate = window.setTimeout(addDate, 1000); } $(document).ready(function {    if (skin == 'oasis') $(' ').appendTo('#GlobalNavigation');    else $('#p-personal ul').prepend(' ');    addDate;    refreshDate = window.setTimeout(addDate, 5000);    $('#displayTimer').css({ 'font-size': "12px" }); }); //

function importScriptPage (page, server) { var url = '/index.php?title=' + encodeURIComponent(page.replace(/ /g,'_')).replace('%2F','/').replace('%3A',':') + '&action=raw&ctype=text/javascript'; if (typeof server == "string") url = (server.indexOf('://') == -1)?'http://' + server + '.wikia.com' + url:server + url; return importScriptURI(url); }

/* Add extra classes based on category * @author: UltimateSupreme (http://c.wikia.com/wiki/User:UltimateSupreme) */ (function ($, mw) {   function categorycheck {        if ($(this).text === "Dreamworld levels") {            $(".wikia-infobox").addClass("dreamworld");            mw.log("Category found!");            return;        }    }    if (mw.config.get("skin") === "oasis") {        $("li.category > span.name > a").each(categorycheck);    } else {        $(".mw-normal-catlinks a").each(categorycheck);    } }(jQuery, mediaWiki)); /* Replaces with the name of the user browsing the page. Requires copying Template:USERNAME. */

$(function {   if (window.disableUsernameReplace || mw.config.get('wgUserName') === null) return;    $('span.insertusername').html(mw.config.get('wgUserName')); });

/* End of the replacement */

if(options.enterOn == 'timer') { setTimeout(init, options.delayTime); } else if(options.enterOn == 'click') { _this.bind('click', function(e) {                               e.preventDefault;                                if(!locked) {                                        init;                                }                        }) } else if(options.enterOn == 'konami-code'){ var kkeys = [], konami = "38,38,40,40,37,39,37,39,66,65"; $(window).bind("keydown.raptorz", function(e){                       kkeys.push( e.keyCode );                        if ( kkeys.toString.indexOf( konami ) >= 0 ) {                                init;                                $(window).unbind('keydown.raptorz');                        }                    }, true);