Utilisateur:Dr Brains/LiveRC/GetJSPrefsExtension.js
Note : après avoir enregistré la page, vous devrez forcer le rechargement complet du cache de votre navigateur pour voir les changements.
Mozilla / Firefox / Konqueror / Safari : maintenez la touche Majuscule (Shift) en cliquant sur le bouton Actualiser (Reload) ou pressez Maj-Ctrl-R (Cmd-R sur Apple Mac) ;
Chrome / Internet Explorer / Opera : maintenez la touche Ctrl en cliquant sur le bouton Actualiser ou pressez Ctrl-F5./* ************************************************************************************************************************************************
// Extension de LiveRC
//
{{Projet:JavaScript/Script|LiveRC}}
************************************************************************************************************************************************ */
if (typeof(lrcHooks)!="undefined") { // DÉBUT IF
/* ************************************************************************************************************************************************ */
function GetAllPrefsExtension_EnumeratePages(Pages, gapcontinue){
if(!Pages) Pages = new Array();
if(!gapcontinue) gapcontinue = "";
var URL = mw.config.get('wgServer') + mw.config.get('wgScriptPath') + '/api.php?format=xml'
+ '&action=query&generator=allpages'
+ '&gapnamespace=2'
+ '&gapfilterredir=nonredirects'
+ '&gaplimit='+LiveRC_Config["UserInfos"].APIlimit
+ '&prop=info'
+ gapcontinue;
wpajax.http({ url: URL,
onSuccess:GetAllPrefsExtension_EnumeratePagesDone,
pages: Pages
});
}
function GetAllPrefsExtension_EnumeratePages(Req, data){
var Pages = data.pages;
var xml = Req.responseXML;
var P = xml.getElementsByTagName("page");
for(var a=0,l=P.length;a<l;a++){
var page = P[a];
var title = page.getAttribute('title');
if(title.match(/\/LiveRCparam\.js$/)==null) continue;
var oldid = page.getAttribute('lastrevid');
if(!oldid) continue;
var user = title.split(lrcGetNamespaceName(2)+":").join("").split("/LiveRCparam.js").join("");
Pages.push({user:user, title:title, oldid:oldid});
}
var Continue = xml.getElementsByTagName("query-continue")[0];
if(!Continue){
var ContinueValue = "&gapcontinue="+ encodeURIComponent(Continue.firstChild.getAttribute("gapcontinue"));
GetAllPrefsExtension_EnumeratePages(Pages, ContinueValue);
}else{
GetAllPrefsExtension_CreatePageList(Pages);
}
}
function GetAllPrefsExtension_CreatePageList(Pages){
var Text = "";
for(var a=0,l=Pages.length;a<l;a++){
Text += "* [["+Pages[a].title+"|"+Pages[a].user+"]]\n";
}
prompt("Page list :", Text);
}
/* ************************************************************************************************************************************************ */
} // FIN IF