Welcome to Assassin's Creed Wiki! Log in and join the community.
User:Vatsa1708/wikia.js: Difference between revisions
Jump to navigation
Jump to search
imported>Vatsa1708 m Spells don't work anymore.. |
imported>Vatsa1708 ... |
||
| Line 1: | Line 1: | ||
/* | |||
* ADVANCED AJAX AUTO-REFRESHING ARTICLES | |||
*/ | |||
var ajaxIndicator = 'http://images2.wikia.nocookie.net/dev/images/8/82/Facebook_throbber.gif', | |||
ajaxTimer, | |||
ajaxRefresh = 60000, | |||
refreshText = 'Auto-Refresh', | |||
refreshHover = 'Enable auto-refreshing of this page' , | |||
doRefresh = true; | |||
if ( !window.ajaxPages ) { | |||
var ajaxPages = new Array( 'Special:RecentChanges', 'Special:WikiActivity' ); | |||
} | |||
if ( !window.ajaxCallAgain ) { | |||
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( ' <span style="font-size: xx-small; line-height: 100%;" id="ajaxRefresh"><span style="border-bottom: 1px dotted; cursor: help;" id="ajaxToggleText" title="' + refreshHover + '">' + refreshText + ':</span><input type="checkbox" style="margin-bottom: 0;" id="ajaxToggle"><span style="display: none;" id="ajaxLoadProgress"><img src="' + ajaxIndicator + '" style="vertical-align: baseline;" border="0" alt="Refreshing page" /></span></span>' ); | |||
$( '#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(); | |||
} | |||
} | |||
} ); | |||
/** remove admin link on toolbar **/ | /** remove admin link on toolbar **/ | ||
$().ready( function() { | $().ready( function() { | ||
Revision as of 16:19, 8 August 2011
/*
* ADVANCED AJAX AUTO-REFRESHING ARTICLES
*/
var ajaxIndicator = 'http://images2.wikia.nocookie.net/dev/images/8/82/Facebook_throbber.gif',
ajaxTimer,
ajaxRefresh = 60000,
refreshText = 'Auto-Refresh',
refreshHover = 'Enable auto-refreshing of this page' ,
doRefresh = true;
if ( !window.ajaxPages ) {
var ajaxPages = new Array( 'Special:RecentChanges', 'Special:WikiActivity' );
}
if ( !window.ajaxCallAgain ) {
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( ' <span style="font-size: xx-small; line-height: 100%;" id="ajaxRefresh"><span style="border-bottom: 1px dotted; cursor: help;" id="ajaxToggleText" title="' + refreshHover + '">' + refreshText + ':</span><input type="checkbox" style="margin-bottom: 0;" id="ajaxToggle"><span style="display: none;" id="ajaxLoadProgress"><img src="' + ajaxIndicator + '" style="vertical-align: baseline;" border="0" alt="Refreshing page" /></span></span>' );
$( '#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();
}
}
} );
/** remove admin link on toolbar **/
$().ready( function() {
$('li > a[data-tracking="admindashboard/toolbar/admin"]').remove();
} );
function urlQuery(quer) {
for(i in location.href.split('?')) {
for(j in location.href.split('?')[i].split('&')) {
if(location.href.split('?')[i].split('&')[j].split('=')[0] == quer) {
return location.href.split('?')[i].split('&')[j].split('=')[1];
}
}
}
return '';
}