Utilisateur:Delhovlyn/Gadget-OptimizedSuivi.js
Un article de Wikipédia, l'encyclopédie libre.
Note : Après avoir publié la page, vous devrez forcer son rechargement pour voir les changements : Mozilla / Konqueror / Firefox : Shift-Ctrl-R, Internet Explorer / Opera : Ctrl-F5, Safari : Cmd-R.
/** * Suivi Deluxe * * Retirer des pages de sa liste de suivi plus facilement * * Auteur : Dake * Dernière révision : 3 novembre 2006 * [[Catégorie:MediaWiki:Fonction Monobook en JavaScript]] */ 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++) { if (suiviManagerAllPages[i].childNodes[1].className == "new") { suiviManagerAllPages[i].childNodes[0].checked=true; } } } function SuiviManagerRedirects() { for (var i=0;i<suiviManagerAllPages.length;i++) { if (suiviManagerAllPages[i].childNodes[1].className == "watchlistredir") { 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("http://fr.wikipedia.org/wiki/Special:Liste_de_suivi/edit")!=0) return; var a=0; var b=0; var interfaceMsg = new Array(); var regexpList = new Array(); ////////////////////////////////////////////////// // Expressions régulières et liens de l'interface // // besoin d'aide pour les regexp ? // http://www.commentcamarche.net/javascript/jsregexp.php3 ////////////////////////////////////////////////// interfaceMsg[a++] = "<b>Tout cocher</b>"; regexpList[b++] = "^.*"; interfaceMsg[a++] = "Utilisateurs IP"; regexpList[b++] = "^Utilisateur:[0-9].*"; interfaceMsg[a++] = "Sous-pages PàS"; regexpList[b++] = "^Wikipédia:Pages à supprimer\/"; interfaceMsg[a++] = "Sous-pages bistro"; regexpList[b++] = "^Wikipédia:Le Bistro\/"; ////////////////////////////////////////////////// var topTag = document.getElementById("contentSub") // récupère toutes les pages 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]); } } // prépare la mini-interface 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()\">" + "Retirer les liens rouges" + "</a> · "; str += "<a href=\"javascript:SuiviManagerRedirects()\">" + "Retirer les redirections" + "</a> · "; str += "<a href=\"javascript:SuiviManagerDeselect()\">" + "<b>Enlever toutes les coches</b>" + "</a>"; topTag.innerHTML = topTag.innerHTML + "<br clear=all />" + str + "<p></div>" } addOnloadHook(SuiviManager);