MediaWiki:JSScripts/OptimizedSuivi

//

/*
 * Seguit Deluxe
 *
 * Levar de paginas de sa lista de seguit mai aisidament
 *
 * Autor : Dake
 * Darrièra revision : 3 de novembre de 2006
 */

var suiviManagerAllPages = new Array();

function SuiviManagerRegexp(regexp)
{
        var match = new RegExp(regexp);

        for (var i=0;i<suiviManagerAllPages.length;i++) {
                var pageName = suiviManagerAllPages[i].childNodes[0].getAttribute("value");
                if (match.test(pageName)) {
                        suiviManagerAllPages[i].childNodes[0].checked=true;
                }
        }
}

function SuiviManagerLiensRouges()
{
        for (var i=0;i<suiviManagerAllPages.length;i++) {
                var pageClass = suiviManagerAllPages[i].childNodes[1].getAttribute("class");
                if (pageClass && pageClass=="new") {
                        suiviManagerAllPages[i].childNodes[0].checked=true;
                }
        }
}

function SuiviManagerDeselect()
{
        for (var i=0;i<suiviManagerAllPages.length;i++) {
                suiviManagerAllPages[i].childNodes[0].checked=false;
        }
}


function SuiviManager() {
        if (document.URL.indexOf("//oc.wikipedia.org/wiki/Special:Watchlist/edit")!=0) return;

        var a=0;
        var b=0;
        var interfaceMsg = new Array();
        var regexpList = new Array();

        //////////////////////////////////////////////////
        // Expressions regularas e ligams de l'interfàcia
        //
        // besonh d'ajuda pels regexp ?
        // http://www.commentcamarche.net/javascript/jsregexp.php3
        //////////////////////////////////////////////////

        interfaceMsg[a++]       = "<b>Tot marcar</b>";
        regexpList[b++]         = "^.*";

        interfaceMsg[a++]       = "Utilizaires IP";
        regexpList[b++]         = "^Utilizaire:[0-9].*";

        interfaceMsg[a++]       = "Sospaginas PdeS";
        regexpList[b++]         = "^Wikipèdia:Paginas de suprimir\/";

        interfaceMsg[a++]       = "Sospaginas tavèrna";
        regexpList[b++]         = "^Wikipèdia:La Tavèrna\/";


        //////////////////////////////////////////////////
        var topTag = document.getElementById("contentSub")

                // recupèra totas las paginas
                var watchlist = document.getElementsByTagName("ul");

        for (u=0;u<watchlist.length;u++) {
                var entries = watchlist[u].getElementsByTagName("li");
                for (i=0;i<entries.length;i++) {
                        suiviManagerAllPages.push(entries[i]);
                }
        }

        // prepara la miniinterfàcia
        var str = "<div style=\"background-color:#8ecfe4;font-size:1px;height:8px;border:1px solid #AAAAAA;-moz-border-radius-topright:0.5em;-moz-border-radius-topleft:0.5em;\"></div>"
                + "<div style=\"border:1px solid #6ac1de;border-top:0px solid white;padding:5px 5px 0 5px;margin-bottom:3ex;\"><p>"
                + "<div style=\"float: left; text-align: left; white-space: nowrap;\"></div>";

        for (var cpt = 0; cpt < interfaceMsg.length; cpt ++) {
                str += "<a href=\"javascript:SuiviManagerRegexp('" + regexpList[cpt] + "')\">"
                        + interfaceMsg[cpt]
                        + " ·</a> ";
        }

        str += "<a href=\"javascript:SuiviManagerLiensRouges()\">"
                + "Levar los ligams roges"
                + " ·</a> ";

        str += "<a href=\"javascript:SuiviManagerDeselect()\">"
                + "<b>Levar totas las marcas</b>"
                + " ·</a> ";

        topTag.innerHTML = topTag.innerHTML + "<br clear=all />" + str + "<p></div>"
}

addOnloadHook(SuiviManager);
//