MediaWiki:Common.js

//importScriptPage('Main_Page/code.js', 'sebathos') //var Start = 100; //importScriptPage('BackToTopButton/code.js', 'dev') // ================================================================ // JavaScript here will be loaded for all users on every page load. // ================================================================

// ================================================================ // BEGIN - Username replace function (template:USERNAME) // * Description: Inserts user name into // * Maintainers: User:Splarka (original), User:Spang (current) // ================================================================

function UserNameReplace { if(typeof(disableUsernameReplace) != 'undefined' && disableUsernameReplace || wgUserName == null) return; $('span.insertusername').each(function {      $(this).text(wgUserName);   }); }

addOnloadHook(UserNameReplace);

// ================================================================ // END - Username replace function (template:USERNAME) // ================================================================

///////////////////////////////////////////////////////////////////////////////////////////////////////////

// ADVANCED AJAX AUTO-REFRESHING // Code courtesy of "pcj" of WoWpedia (formerly on Wikia). Updates provided by Grunny of Wookiepedia for Oasis.

///////////////////////////////////////////////////////////////////////////////////////////////////////////

var	ajaxIndicator = 'https://images.wikia.nocookie.net/dev/images/8/82/Facebook_throbber.gif', ajaxTimer, ajaxRefresh = 60000, refreshText = 'Automatically refresh', refreshHover = 'Enable auto-refreshing page loads', doRefresh = true;

if ( !window.ajaxPages ) { var ajaxPages = new Array( 'Special:RecentChanges', 'Special:Watchlist', 'Special:Log', 'Special:NewFiles', 'Special:AbuseLog', 'Special:WikiActivity' ); } if ( !window.ajaxCallAgain ) { var ajaxCallAgain = []; } if( typeof AjaxRCRefreshText == "string" ) { refreshText = AjaxRCRefreshText; } if( typeof AjaxRCRefreshHoverText == "string" ) { refreshHover = AjaxRCRefreshHoverText; }

/** * Sets the cookie * @param c_name string Name of the cookie * @param value string 'on' or 'off' * @param expiredays integer Expiry time of the cookie in days */ function setCookie( c_name, value, expiredays ) { var exdate = new Date; exdate.setDate( exdate.getDate + expiredays); document.cookie = c_name + "=" + escape(value) + ( ( expiredays === null ) ? "" : ";expires=" + exdate.toGMTString ); }

/** * Gets the cookie * @param c_name string Cookie name * @return The cookie name or empty string */ function getCookie( c_name ) { if ( document.cookie.length > 0 ) { var c_start = document.cookie.indexOf( c_name + "=" ) if ( c_start !== -1 ) { c_start = c_start + c_name.length + 1; var c_end = document.cookie.indexOf( ";", c_start ); if ( c_end === -1 ) { c_end = document.cookie.length; }			return unescape( document.cookie.substring( c_start, c_end ) ); } 	}	return ""; }

/** * Main function to start the Auto-refresh process */ function preloadAJAXRL { var	ajaxRLCookie = ( getCookie( "ajaxload-" + wgPageName ) == "on" ) ? true : false, appTo = ( $( '#WikiaPageHeader' ).length ) ? $( '#WikiaPageHeader' ) : ( $( '#AdminDashboardHeader' ).length ? $( '#AdminDashboardHeader > h1' ) : $( '.firstHeading' ) ); appTo.append( ' ' + refreshText + ':   ' ); $( '#ajaxLoadProgress' ).ajaxSend( function ( event, xhr, settings ) {		if ( location.href == settings.url ) {			$( this ).show;		}	} ).ajaxComplete ( function ( event, xhr, settings ) {		if ( location.href == settings.url ) {			$( this ).hide;			for( i in ajaxCallAgain ) {				ajaxCallAgain[i];			}		}	} ); $( '#ajaxToggle' ).click( toggleAjaxReload ); $( '#ajaxToggle' ).attr( 'checked', ajaxRLCookie); if ( getCookie( "ajaxload-" + wgPageName ) == "on" ) { loadPageData; } }

/** * Turn refresh on and off by toggling the checkbox */ function toggleAjaxReload { if ( $( '#ajaxToggle' ).prop( 'checked' ) == true ) { setCookie( "ajaxload-" + wgPageName, "on", 30 ); doRefresh = true; loadPageData; } else { setCookie( "ajaxload-" + wgPageName, "off", 30 ); doRefresh = false; clearTimeout( ajaxTimer ); } }

/** * Does the actual refresh */ function loadPageData { var cC = ( $( '#WikiaArticle' ).length ) ? '#WikiaArticle' : '#bodyContent'; $( cC ).load( location.href + " " + cC + " > *", function ( data ) {		if ( doRefresh ) {			ajaxTimer = setTimeout( "loadPageData;", ajaxRefresh );		}	} ); }

/** * Load the script on specific pages */ $( function { 	for ( x in ajaxPages ) {		if ( wgPageName == ajaxPages[x] && $( '#ajaxToggle' ).length === 0 ) {			preloadAJAXRL;		}	} } );

///////////////////////////////////////////////////////////////////////////////////////////////////////////

// END OF AJAX AUTO-REFRESH

///////////////////////////////////////////////////////////////////////////////////////////////////////////

// ============================== // Oasis/Monobook Switch JS // ==============================

importScriptPage('SkinSwitchButton/code.js', 'dev'); var monoBookText = 'Monobook', oasisText = 'Oasis';

// ============================== // Countdown JS // ==============================

importScriptPage('Countdown/code.js', 'dev');

// ============================== // DupImageList JS // ==============================

importScriptPage('DupImageList/code.js', 'dev');

// ============================== // Archive tool JS // ==============================

var ArchiveToolConfig = { archiveListTemplate: 'Archives', archivePageTemplate: 'Archivepage', archiveSubpage: 'Archive', userLang: false }; importScriptPage('ArchiveTool/code.js', 'dev');

var DisableArchiveEditConfig = { archiveSubpage: 'Archive', disableCompletely: true, textColor: '#D9D9D9', userLang: false }; importScriptPage('DisableArchiveEdit/code.js', 'dev');

// ============================== // DisableEditTab/Archive JS // ==============================

/* * Disables the edit tab on old forum topic pages to stop new people bumping old topics. * Page can still be edited by going via the edit tab on the history etc, or by * typing the edit address manually. * By Spang */ if(wgNamespaceNumber == 110) { function disableOldForumEdit { if( typeof( enableOldForumEdit ) != 'undefined' && enableOldForumEdit ) { return; }	if( !document.getElementById('old-forum-warning') ) { return; }	if( skin == 'oasis' ) {		$("#WikiaPageHeader .wikia-menu-button li a:first").html('Archived').removeAttr('href' ); $('#WikiaPageHeader .wikia-button').html('Archived').removeAttr('href'); return; }	if( !document.getElementById('ca-edit') ) { return; }	var editLink = null; if( skin == 'monaco' ) {		editLink = document.getElementById('ca-edit'); }	else if( skin == 'monobook' ) {		editLink = document.getElementById('ca-edit').firstChild; }	else {		return; }	editLink.removeAttribute('href', 0); editLink.removeAttribute('title', 0); editLink.style.color = 'gray'; editLink.innerHTML = 'Archived'; $('span.editsection-upper').remove; } addOnloadHook( disableOldForumEdit ); }

// ============================================================ // Add Temp/Exp js below. // ============================================================

// ============================================ // Filter to remove namespace from article name // ============================================

$(document).ready( function {	if ( wgCanonicalNamespace == 'Log' ) { //to be updated with more namespaces		$('#WikiaPageHeader h1').text(wgTitle);	} });