Aller au contenu

Utilisateur:Dr Brains/FluxRecentchangeslinkedDeluxe.js

Une page de Wikipédia, l'encyclopédie libre.
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.
function GetFluxInfos(Cat){
      var NouvelleRequete = new XMLHttpRequest();

      var AdresseRequete = mw.config.get('wgServer') + mw.config.get('wgScript') + '?title=Special:Recentchangeslinked/Category:' + Cat + '&feed=atom&target=Category:' + Cat;
      NouvelleRequete.open("GET", AdresseRequete, true);
      NouvelleRequete.onreadystatechange = function() {
            if(NouvelleRequete.readyState != 4) return;
            var Temp = document.createElement('div');
            Temp.style.display = "none";
            Temp.innerHTML = NouvelleRequete.responseText; 
            document.body.appendChild(Temp);
            var InfoArray = ManageFluxInfos(document.getElementById('feedContent'));
            Temp.parentNode.removeChild(Temp);
            DisplayFluxInfos(InfoArray);
      }
      NouvelleRequete.send(null);
}

function ManageFluxInfos(feedContent){
    if(!feedContent) return;
    var InfoArray = new Array();
    var Info = feedContent.firstChild;
    while(Info){
        if($(Info).hasClass("entry")){
            try{
                var Title = Info.getElementsByTagName('h3')[0];
                var Page = Title.getElementsByTagName('a')[0];
                var PageURL = Page.href;
                var PageTitle = Page.innerHTML;
                var Diff = false;
                var Oldid = false;
                var Params = decodeURIComponent(PageURL).split('&');
                for(var a=0,l=Params.length;a<l;a++){
                    if(Params[a].indexOf("diff=")!=-1){ Diff = Params[a].split('=')[1]; }
                    if(Params[a].indexOf("oldid=")!=-1){ Oldid = Params[a].split('=')[1]; }
                }
                var Timestamp = Title.getElementsByTagName('div')[0].innerHTML;
                var Content = Title.nextSibling;
                var Comment = Content.getElementsByTagName('p')[0].textContent;
                
                InfoArray[InfoArray.length] = {"url":PageURL, "title":PageTitle, "diff":Diff, "oldid":Oldid, "timestamp":Timestamp, "comment":Comment };

            }catch(e){ }
        }
        Info = Info.nextSibling;
    }
    return InfoArray;
}

function DisplayFluxInfos(InfoArray){
    



}