Fandom Developers Wiki
mNo edit summary
m (Updated)
Line 4: Line 4:
 
// Code courtesy of "pcj" of WoWWiki.
 
// Code courtesy of "pcj" of WoWWiki.
 
///////////////////////////////////////////////////////////////////////////////////////////////////////////
 
///////////////////////////////////////////////////////////////////////////////////////////////////////////
var indicator = 'http://images2.wikia.nocookie.net/__cb20100614115522/central/images/2/28/Ajaxloader.gif';
+
var indicator = 'http://images2.wikia.nocookie.net/__cb20100617113125/dev/images/8/82/Facebook_throbber.gif';
 
var ajaxPages = new Array("Special:RecentChanges");
 
var ajaxPages = new Array("Special:RecentChanges");
 
var ajaxTimer;
 
var ajaxTimer;

Revision as of 21:56, 17 June 2010

//<pre>
///////////////////////////////////////////////////////////////////////////////////////////////////////////
// ADVANCED AJAX AUTO-REFRESHING ARTICLES
// Code courtesy of "pcj" of WoWWiki.
///////////////////////////////////////////////////////////////////////////////////////////////////////////
var indicator = 'http://images2.wikia.nocookie.net/__cb20100617113125/dev/images/8/82/Facebook_throbber.gif';
var ajaxPages = new Array("Special:RecentChanges");
var ajaxTimer;
var ajaxRefresh = 60000;
var doRefresh = true;
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())
}
 
function getCookie(c_name) {
if (document.cookie.length>0) {
c_start=document.cookie.indexOf(c_name + "=")
if (c_start!=-1) { 
c_start=c_start + c_name.length+1 
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 ""
}
 
function preloadAJAXRL() {
ajaxRLCookie = (getCookie("ajaxload-"+wgPageName)=="on") ? true:false;
$(".firstHeading").append('&nbsp;<span style="font-size: xx-small; border-bottom: 1px dotted; cursor:help;" title="Enable auto-refreshing page loads">AJAX:</span><input type="checkbox" id="ajaxToggle"><span style="display:none;" id="ajaxLoadProgress"><img src="' + indicator + '" border="0" alt="AJAX operation in progress" /></span>');
$("#ajaxLoadProgress").bind("ajaxSend", function (){
$(this).show();
}).bind("ajaxComplete", function (){
$(this).hide();
});
$("#ajaxToggle").click(toggleAjaxReload);
$("#ajaxToggle").attr("checked", ajaxRLCookie);
if (getCookie("ajaxload-"+wgPageName)=="on") loadPageData();
}
 
function toggleAjaxReload() {
if ($("#ajaxToggle").attr("checked") == true) {
setCookie("ajaxload-"+wgPageName, "on", 30);
doRefresh = true;
loadPageData();
} else {
setCookie("ajaxload-"+wgPageName, "off", 30);
doRefresh = false;
clearTimeout(ajaxTimer);
}
}

function loadPageData() {
$("#bodyContent").load(location.href + " #bodyContent", function (data) { 
$("#bodyContent").trigger("ajaxPageLoad");
if (doRefresh) ajaxTimer = setTimeout("loadPageData();", ajaxRefresh);
});
}

$(function () { 
for (x in ajaxPages) {
if (wgPageName == ajaxPages[x] && $("#ajaxToggle").length==0) preloadAJAXRL();
}
});
//</pre>