Utilisateur:Jedaaii/monobook.js
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.//gestion amelioree liste de suivi
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[2].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 (mw.config.get('wgCanonicalSpecialPageName') !== 'EditWatchlist') return;
var a=-1;
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[a] = "^.*";
interfaceMsg[++a] = "Utilisateurs";
regexpList[a] = "^Utilisateur:";
interfaceMsg[++a] = "Wikipédia:*";
regexpList[a] = "^Wikipédia:";
interfaceMsg[++a] = "Sous-pages de PàS";
regexpList[a] = "^Wikipédia:Pages à supprimer\/";
interfaceMsg[++a] = "Sous-pages de PàV";
regexpList[a] = "^Wikipédia:Pages à vérifier\/";
interfaceMsg[++a] = "Pages du bistro";
regexpList[a] = "^Wikipédia:Le Bistro\/";
interfaceMsg[++a] = "Images";
regexpList[a] = "^Image:";
interfaceMsg[++a] = "Modèles";
regexpList[a] = "^Modèle:";
interfaceMsg[++a] = "Aide";
regexpList[a] = "^Aide:";
interfaceMsg[++a] = "Catégories";
regexpList[a] = "^Catégorie:";
interfaceMsg[++a] = "Portails";
regexpList[a] = "^Portail:";
//////////////////////////////////////////////////
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:SuiviManagerDeselect()\">"
+ "<b>Enlever toutes les coches</b>"
+ " ·</a> "
topTag.innerHTML = topTag.innerHTML + "<br clear=all />" + str + "<p></div>"
}
$(SuiviManager);
function insertAfter(parent, node, referenceNode) {
parent.insertBefore(node, referenceNode.nextSibling);
}
function OptimizedSuivi()
{
if (document.URL.indexOf("http://fr.wikipedia.org/wiki/Special:Watchlist")==0 ||
document.URL.indexOf("http://fr.wikipedia.org/w/index.php?title=Special:Watchlist")==0 ){
var allDays = document.getElementsByTagName("ul");
for (i=0; i<allDays.length; i++) {
if (allDays[i].getAttribute("class") == "special") {
var artList = allDays[i].getElementsByTagName("li");
for (j=0; j<artList.length; j++) {
var elem = artList[j];
var aTag = elem.getElementsByTagName("a");
var articleName = aTag[0].getAttribute("title");
var stopWatch = "/w/index.php?title=" + articleName + "&action=unwatch"
var newElement = document.createElement("a");
newElement.setAttribute("href",stopWatch);
var newText = document.createTextNode("stop");
newElement.appendChild(newText);
var newPar = document.createTextNode(") (")
// séparation des cas (nouvel article, ou déjà existant)
if (aTag[0].childNodes[0].data == "diff") {
insertAfter(elem, newPar, aTag[1]);
} else {
insertAfter(elem, newPar, aTag[0]);
}
insertAfter(elem, newElement, newPar);
}
}
}
}
}
$(OptimizedSuivi);
// Arborescence des catégories - Auteur : Anakin
// Dernière mise à jour : 11 décembre 2005
function CategoryTree()
{
var element = document.getElementById('ca-nstab-category');
if (element)
{
var categoryname = element.firstChild.href;
categoryname = categoryname.substring(7);
var wikiname = categoryname.substring(0, categoryname.indexOf('.'));
var indexofname = categoryname.indexOf(":") + 1;
categoryname = categoryname.substring(indexofname);
var indexofampersand = categoryname.indexOf("&");
if (indexofampersand != -1)
categoryname = categoryname.substring(0, indexofampersand);
var li = document.createElement('li');
li.id = 'ca-categorytree';
var a = document.createElement('a');
a.appendChild(document.createTextNode("Arborescence"));
a.href = 'http://tools.wikimedia.de/~daniel/WikiSense/CategoryTree.php?wikilang=fr&wiki=' + wikiname + '&art=on&cat=' + categoryname;
li.appendChild(a);
document.getElementById('ca-nstab-category').parentNode.appendChild(li);
}
}
$(CategoryTree);
// utilisation d'image - Auteur : Anakin
// Dernière mise à jour : 11 décembre 2005
function ImageUse()
{
var element = document.getElementById('ca-nstab-image');
if (element)
{
var imagename = element.firstChild.href;
var indexofname;
if (imagename.indexOf("http://") != -1)
indexofname = imagename.indexOf(":", 6);
else
indexofname = imagename.indexOf(":");
imagename = imagename.substring(indexofname + 1);
var indexofampersand = imagename.indexOf("&");
if (indexofampersand != -1)
imagename = imagename.substring(0, indexofampersand);
var li = document.createElement('li');
li.id = 'ca-imageuse';
var a = document.createElement('a');
a.appendChild(document.createTextNode("Voir l'utilisation"));
a.href = 'http://www.juelich.de/avatar/check-usage/check-usage.php?filename=' + imagename + '&template';
li.appendChild(a);
document.getElementById('ca-nstab-image').parentNode.appendChild(li);
}
}
$(ImageUse);