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.
/*
{{Utilisateur:Dr Brains/onglets}}

<big>'''[[Utilisateur:Dr Brains/NukeDeluxe.js]]'''</big> est un code javascript permettant de cocher ou décocher facilement des pages dans la page spéciale [[Spécial:Nuke]].

Cette page spéciale est réservée aux administrateurs

== Fonctionnement ==

Au-dessus de la liste de pages à supprimer est inséré un tableau permettant de tout cocher ou tout cocher, ainsi que de cocher un groupe de pages sélectionnées suivant l'espace de noms.

Le nombre de pages concernées est donné pour chaque groupe à titre indicatif.

{{Image panoramique|DemoScript NukeDeluxe.png|1000|Aperçu}}

== CODE SOURCE ==

{{Projet:JavaScript/Script}} 
{{Boîte déroulante début|titre=NukeDeluxe}}<!--
*/
// --><syntaxhighlight lang=javascript>
//<pre><nowiki>

if((mw.config.get('wgCanonicalSpecialPageName') == "Nuke") && document.URL.indexOf("submit") != -1 ) {
        addOnloadHook(NukeDeluxe);                              
}


var NukeDeluxe_AllPages = new Array();

function NukeDeluxe() {
 
 
        //////////////////////////////////////////////////
        // Expressions régulières et liens de l'interface
        //
        // besoin d'aide pour les regexp ?
        // http://www.commentcamarche.net/javascript/jsregexp.php3
        //////////////////////////////////////////////////
 
        var c=0;
        var d=0;
        var interfaceMsgPrincipal = new Array();
        var regexpListPrincipal = new Array();

        interfaceMsgPrincipal[c++]       = "<i>Principal</i>";
        regexpListPrincipal[d++]         = "(:)";

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

        interfaceMsg[a++]       = "Discussion";
        regexpList[b++]         = "^Discussion:";

        interfaceMsg[a++]       = "Utilisateur";
        regexpList[b++]         = "^Utilisateur:";
 
        interfaceMsg[a++]       = "Discussion utilisateur";
        regexpList[b++]         = "^Discussion utilisateur:";

        interfaceMsg[a++]       = "Wikipédia";
        regexpList[b++]         = "^Wikipédia:";

        interfaceMsg[a++]       = "Discussion Wikipédia";
        regexpList[b++]         = "^Discussion Wikipédia:";
 
        interfaceMsg[a++]       = "Fichier";
        regexpList[b++]         = "^Fichier:"; 

        interfaceMsg[a++]       = "Discussion fichier";
        regexpList[b++]         = "^Discussion fichier:"; 
 
        interfaceMsg[a++]       = "MediaWiki";
        regexpList[b++]         = "^MediaWiki:";

        interfaceMsg[a++]       = "Discussion MediaWiki";
        regexpList[b++]         = "^Discussion MediaWiki:";
 
        interfaceMsg[a++]       = "Modèle";
        regexpList[b++]         = "^Modèle:";

        interfaceMsg[a++]       = "Discussion modèle";
        regexpList[b++]         = "^Discussion modèle:";
 
        interfaceMsg[a++]       = "Aide";
        regexpList[b++]         = "^Aide:";

        interfaceMsg[a++]       = "Discussion aide";
        regexpList[b++]         = "^Discussion aide:";
 
        interfaceMsg[a++]       = "Catégorie";
        regexpList[b++]         = "^Catégorie:";

        interfaceMsg[a++]       = "Discussion catégorie";
        regexpList[b++]         = "^Discussion catégorie:";
 
        interfaceMsg[a++]       = "Portail";
        regexpList[b++]         = "^Portail:";

        interfaceMsg[a++]       = "Discussion Portail";
        regexpList[b++]         = "^Discussion Portail:";
 
        interfaceMsg[a++]       = "Projet";
        regexpList[b++]         = "^Projet:"; 

        interfaceMsg[a++]       = "Discussion Projet";
        regexpList[b++]         = "^Discussion Projet:"; 

        interfaceMsg[a++]       = "Référence";
        regexpList[b++]         = "^Référence:"; 

        interfaceMsg[a++]       = "Discussion Référence";
        regexpList[b++]         = "^Discussion Référence:"; 
 
 
        //////////////////////////////////////////////////
        var topTag = document.getElementById("contentSub")
 
                // récupère toutes les pages
	var bc = document.getElementById("content");
        if(!bc)bc= document.getElementById("article");
        if(!bc)bc= document.getElementById("mw_contentholder");
 
        var watchlist = bc.getElementsByTagName("li");
 
        for (var u=0;u<watchlist.length;u++) {
            if(watchlist[u].firstChild.tagName == "INPUT") {
                NukeDeluxe_AllPages.push(watchlist[u]);
            }
        }
 
        // prépare la mini-interface
        var str = "<div style=\"background-color:#8ecfe4;height:8px;border:1px solid #AAAAAA;-moz-border-radius-topright:0.5em;-moz-border-radius-topleft:0.5em;margin-top:-1em;\"></div>"
                + "<div style=\"border:1px solid #6ac1de;border-top:0px solid white;margin-bottom:2em;padding:0.5em;text-align:center;-moz-border-radius-bottomright:0.5em;-moz-border-radius-bottomleft:0.5em;\">"
 
        str += "<a href=\"javascript:NukeDeluxe_Regexp('^.*')\" title=\"Tout cocher\">"
                + "<b>Tout cocher</b>"
                + "</a> ("
                + NukeDeluxe_countPages('^.*')
                + ") · ";
 
        str += "<a href=\"javascript:NukeDeluxe_Deselect()\" title=\"Tout décocher\">"
                + "<b>Tout décocher</b>"
                + "</a> ("
                + NukeDeluxe_countPages('^.*')
                + ")";
 
        str += "<hr style=\"margin:0.5em;\">";
        str += "<b>Espaces de noms</b><br/>";
        for (var cpt = 0; cpt < interfaceMsgPrincipal.length; cpt ++) {
                str += "<a href=\"javascript:NukeDeluxe_RegexpPrincipal('" + regexpListPrincipal[cpt] + "')\" title=\"Cocher les pages de l'espace de noms : " + interfaceMsgPrincipal[cpt] + "\">"
                        + interfaceMsgPrincipal[cpt]
                        + "</a> ("
                        + NukeDeluxe_countPagesPrincipal(regexpListPrincipal[cpt])
                        + ") · ";
        }
        for (var cpt = 0; cpt < interfaceMsg.length; cpt ++) {
                if(cpt%2){Separator = " · ";}else{Separator = "<br/>";}
                str += "<a href=\"javascript:NukeDeluxe_Regexp('" + regexpList[cpt] + "')\" title=\"Cocher les pages de l'espace de noms : " + interfaceMsg[cpt] + "\">"
                        + interfaceMsg[cpt]
                        + "</a> ("
                        + NukeDeluxe_countPages(regexpList[cpt])
                        + ")" + Separator;
        }
 
        var buttonPlus = document.createElement("div");
        buttonPlus.setAttribute("style", "text-align:center;");
        buttonPlus.innerHTML = "<br clear=all />" + str + "</div>";
        var CibleBouton = document.getElementsByTagName("form")[0];
        CibleBouton.insertBefore(buttonPlus,CibleBouton.firstChild);
}


function NukeDeluxe_RegexpPrincipal(regexp){
        var match = new RegExp(regexp);
 
        for (var i=0;i<NukeDeluxe_AllPages.length;i++) {
                var pageName = NukeDeluxe_AllPages[i].childNodes[0].getAttribute("value");
                if (match.test(pageName)) {
                }else{
                        NukeDeluxe_AllPages[i].childNodes[0].checked=true;
                }
        }
}

function NukeDeluxe_countPagesPrincipal(regexp){
        var match = new RegExp(regexp);
        var count = 0;
        for (var i=0;i<NukeDeluxe_AllPages.length;i++) {
                var pageName = NukeDeluxe_AllPages[i].childNodes[0].getAttribute("value");
                if (match.test(pageName)) {
                }else{
                        count = (count+1);
                }
        }
        return count;
}

function NukeDeluxe_Regexp(regexp){
        var match = new RegExp(regexp);
 
        for (var i=0;i<NukeDeluxe_AllPages.length;i++) {
                var pageName = NukeDeluxe_AllPages[i].childNodes[0].getAttribute("value");
                if (match.test(pageName)) {
                        NukeDeluxe_AllPages[i].childNodes[0].checked=true;
                }
        }
}

function NukeDeluxe_countPages(regexp){
        var match = new RegExp(regexp);
        var count = 0;
        for (var i=0;i<NukeDeluxe_AllPages.length;i++) {
                var pageName = NukeDeluxe_AllPages[i].childNodes[0].getAttribute("value");
                if (match.test(pageName)) {
                        count = (count+1);
                }
        }
        return count;
}
 
function NukeDeluxe_Deselect(){
        for (var i=0;i<NukeDeluxe_AllPages.length;i++) {
                NukeDeluxe_AllPages[i].childNodes[0].checked=false;
        }
}

//</nowiki></pre></syntaxhighlight>{{Boîte déroulante fin}}