MediaWiki:JSScripts/OptimizedSuivi

Un article de Wikipèdia, l'enciclopèdia liura.
Salta a la navegació Salta a la cerca

//

  1 /*
  2  * Seguit Deluxe
  3  *
  4  * Levar de paginas de sa lista de seguit mai aisidament
  5  *
  6  * Autor : Dake
  7  * Darrièra revision : 3 de novembre de 2006
  8  */
  9 
 10 var suiviManagerAllPages = new Array();
 11 
 12 function SuiviManagerRegexp(regexp)
 13 {
 14         var match = new RegExp(regexp);
 15 
 16         for (var i=0;i<suiviManagerAllPages.length;i++) {
 17                 var pageName = suiviManagerAllPages[i].childNodes[0].getAttribute("value");
 18                 if (match.test(pageName)) {
 19                         suiviManagerAllPages[i].childNodes[0].checked=true;
 20                 }
 21         }
 22 }
 23 
 24 function SuiviManagerLiensRouges()
 25 {
 26         for (var i=0;i<suiviManagerAllPages.length;i++) {
 27                 var pageClass = suiviManagerAllPages[i].childNodes[1].getAttribute("class");
 28                 if (pageClass && pageClass=="new") {
 29                         suiviManagerAllPages[i].childNodes[0].checked=true;
 30                 }
 31         }
 32 }
 33 
 34 function SuiviManagerDeselect()
 35 {
 36         for (var i=0;i<suiviManagerAllPages.length;i++) {
 37                 suiviManagerAllPages[i].childNodes[0].checked=false;
 38         }
 39 }
 40 
 41 
 42 function SuiviManager() {
 43         if (document.URL.indexOf("//oc.wikipedia.org/wiki/Special:Watchlist/edit")!=0) return;
 44 
 45         var a=0;
 46         var b=0;
 47         var interfaceMsg = new Array();
 48         var regexpList = new Array();
 49 
 50         //////////////////////////////////////////////////
 51         // Expressions regularas e ligams de l'interfàcia
 52         //
 53         // besonh d'ajuda pels regexp ?
 54         // http://www.commentcamarche.net/javascript/jsregexp.php3
 55         //////////////////////////////////////////////////
 56 
 57         interfaceMsg[a++]       = "<b>Tot marcar</b>";
 58         regexpList[b++]         = "^.*";
 59 
 60         interfaceMsg[a++]       = "Utilizaires IP";
 61         regexpList[b++]         = "^Utilizaire:[0-9].*";
 62 
 63         interfaceMsg[a++]       = "Sospaginas PdeS";
 64         regexpList[b++]         = "^Wikipèdia:Paginas de suprimir\/";
 65 
 66         interfaceMsg[a++]       = "Sospaginas tavèrna";
 67         regexpList[b++]         = "^Wikipèdia:La Tavèrna\/";
 68 
 69 
 70         //////////////////////////////////////////////////
 71         var topTag = document.getElementById("contentSub")
 72 
 73                 // recupèra totas las paginas
 74                 var watchlist = document.getElementsByTagName("ul");
 75 
 76         for (u=0;u<watchlist.length;u++) {
 77                 var entries = watchlist[u].getElementsByTagName("li");
 78                 for (i=0;i<entries.length;i++) {
 79                         suiviManagerAllPages.push(entries[i]);
 80                 }
 81         }
 82 
 83         // prepara la miniinterfàcia
 84         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>"
 85                 + "<div style=\"border:1px solid #6ac1de;border-top:0px solid white;padding:5px 5px 0 5px;margin-bottom:3ex;\"><p>"
 86                 + "<div style=\"float: left; text-align: left; white-space: nowrap;\"></div>";
 87 
 88         for (var cpt = 0; cpt < interfaceMsg.length; cpt ++) {
 89                 str += "<a href=\"javascript:SuiviManagerRegexp('" + regexpList[cpt] + "')\">"
 90                         + interfaceMsg[cpt]
 91                         + " ·</a> ";
 92         }
 93 
 94         str += "<a href=\"javascript:SuiviManagerLiensRouges()\">"
 95                 + "Levar los ligams roges"
 96                 + " ·</a> ";
 97 
 98         str += "<a href=\"javascript:SuiviManagerDeselect()\">"
 99                 + "<b>Levar totas las marcas</b>"
100                 + " ·</a> ";
101 
102         topTag.innerHTML = topTag.innerHTML + "<br clear=all />" + str + "<p></div>"
103 }
104 
105 addOnloadHook(SuiviManager);
106 //