Utilisateur:Samyra008/monobook.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.

/* <pre><nowiki> */
 
 
// Comme je débute en dressage de BOUC, j'ai pioché des éléments intéressants,
// principalement chez GôTô, Dake, Yug, Pabix et Sam Hocevar
 
document.write('<script type="text/javascript" src="' 
             + 'http://fr.wikipedia.org/w/index.php?title=Utilisateur:GôTô/objects.js' 
             + '&action=raw&ctype=text/javascript&dontcountme=s"></script>');
 
document.write('<script type="text/javascript" src="' 
            + 'http://fr.wikipedia.org/w/index.php?title=Utilisateur:Dake/monobook.js/deluxehistory.js' 
            + '&action=raw&ctype=text/javascript&dontcountme=s"></script>');
 
 
 
<!--   Ajout de liens dans la boite NAVIGATION   -->
 
function TodayDate() {
      m = new Array("janvier", "février", "mars", "avril", "mai", "juin", "juillet", "août", "septembre", "octobre", "novembre", "décembre");
      today = new Date();
      day = today.getDate();
      year = today.getYear();
 
      if (year < 2000)    
           year = year + 1900;
 
      return (day + " " + m[today.getMonth()] + " " + year);
}
function Menu() {
      var tDate = TodayDate();
      var a = document.getElementById("p-navigation");
      if (a) {
              b = a.getElementsByTagName("ul");
              if (b.length > 0) {
                    b[0].innerHTML = b[0].innerHTML
                    + '<li><span title="Bistro">'
                    + '<a href="/wiki/Wikipédia:Le Bistro/'+ tDate +'">Bistro</a></span></li>'
                    + '<li><span title="PàS">'
                    + '<a href="/wiki/Wikipédia:Pages_à_supprimer">PàS</a></span></li>'
              }
      }
}
 
addLoadEvent(Menu);
 
// Fonction pour charger un js
function loadJS(page){
  page=page.replace(/^\[\[(.*)\]\]$/, '$1');
  document.write('<script type="text/javascript" src="' +
                 'http://fr.wikipedia.org/w/wiki.phtml?title=' + page +
                 '&action=raw&ctype=text/javascript"></script>');
}
 
// Ajout de boutons de révocations des modifications pour les non-admin
document.write('<SCRIPT SRC="http://sam.zoy.org/wikipedia/godmode-light.js"><\/SCRIPT>'); 
 
 
 
// Onglet Purge 
 
function OngletPurge() {
  var a = document.getElementById("p-cactions");
        if (a) 
        {
          var pageName = document.title.replace(" - Wikipédia", ""); 
          b = a.getElementsByTagName("ul");
 
          if(b.length > 0)
          {
            b[0].innerHTML = b[0].innerHTML
            + '<li id="ca-nstab-user">'
            + '<a href="/w/index.php?action=purge&title=' + pageName + '">purger</a>'
            + '</li>';
          }
        }
      }
addLoadEvent(OngletPurge);
 
 
/**************
 * Pop-ups    *
 **************/
 
document.write('<script type="text/javascript" src="' 
    + 'http://fr.wikipedia.org/w/index.php?title=User:Leag/popups-strings-fr.js' 
    + '&action=raw&ctype=text/javascript&dontcountme=s"></script>');
 
document.write('<script type="text/javascript" src="' 
    + 'http://en.wikipedia.org/w/index.php?title=User:Lupin/popups.js' 
    + '&action=raw&ctype=text/javascript&dontcountme=s"></script>');
 
 
popupImages           = false;
popupOnlyArticleLinks =false;
 
 
/*
 * DeluxeSummary
 */ 
 
function addToSummary(str)
{
        document.editform.wpSummary.value += " " + str
}
 
function DeluxeSummary()
{
        var sumLbl = document.getElementById("wpSummaryLabel")
        if (sumLbl)
        {
                //élargissement boite de résumé
                var sumInput = document.getElementById("wpSummary")
                sumInput.style.width = "90%"
 
                var titles = new Array()
                titles.push("+ ébauche")
                titles.push("+ cat")
                titles.push("+ image")
                titles.push("+ interwiki")
                titles.push("rv vandale")
                titles.push("bac à sable")
                titles.push("- lien ext")
                titles.push("corr lien int")
                titles.push("lien ext -> lien int")
                titles.push("MeP")
                titles.push("ortho/gram")
                titles.push("retouches")
                titles.push("ajInfo")
                titles.push("rangmt")
                titles.push("recat")
                titles.push("Homonymie")
 
                var inputs = new Array()
                inputs.push("+ {{ébauche}}")
                inputs.push("+ catégorie")
                inputs.push("+ image")
                inputs.push("+ liens interwiki")
                inputs.push("revert : vandalisme")
                inputs.push("Blanchi :bac à sable")
                inputs.push("- lien externe non pertinent")
                inputs.push("correction lien interne")
                inputs.push("conversion lien externe en lien interne")
                inputs.push("mise en page")
                inputs.push("correction orthographe/grammaire")
                inputs.push("diverses retouches")
                inputs.push("ajout d’infos")
                inputs.push("rangement interwikis/catégories")
                inputs.push("changement catégorie")
                inputs.push("Correction des [[Projet:Liens vers les pages d'homonymie|liens vers les pages d'homonymie]]")
 
 
                var str = ""
                for (var cpt = 0; cpt < titles.length; cpt ++)
                {
                        str += "<a href=\"javascript:addToSummary('" + inputs[cpt] + "')\""
                                + " class=\"sumLink\" title=\"Ajouter '" + inputs[cpt] +"' dans la boîte de résumé\">"
                                + titles[cpt]
                                + " ·</a> "
                }
                sumLbl.innerHTML = str + "<br />" + sumLbl.innerHTML
        }
}
 
addLoadEvent(DeluxeSummary)
 
 
 
/*
 * DeluxeBar : meilleur champ d'édition
 */ 
 
function DeluxeBar() {
  if (document.createTextNode) {
  	var toolbar = document.getElementById("toolbar"); 
	if (!toolbar) return;
 
        var messages = new Array()
 
	messages[0] = "{{subst:" + "Bienvenue sur ta page"  + "}}" +  "~~" + "~~";
	messages[1] = "{{subst:" + "Bienvenue" + "}}" +  "~~" + "~~";
        messages[2] = "{{subst:" + "Test 1" + "}}" +  "~~" + "~~";      
        messages[3] = "{{subst:" + "Test 2" + "}}" +  "~~" + "~~";
        messages[4] = "{{subst:" + "Test 3" + "}}" +  "~~" + "~~";
        messages[5] = "{{subst:" + "Bienvenue spammeur" + "}}" +  "~~" + "~~";
        messages[6] = "{{subst:" + "VandaleBloqué|n" + "}}" +  "~~" + "~~";
	messages[7] = "{{" + "suppression" + "}}";
        messages[8] = "<br />Bonjour,<br />Veuillez"+" adresser votre question à l'"+" [[Wikipédia:"+"Oracle|"+"Oracle]]. "+"~~"+"~~";
        messages[9] = ":{{"+"fait"+"}}"+" c'est fait."+" ~~"+"~~";
 
	var images = new Array()
	images[0] = "http://upload.wikimedia.org/wikipedia/fr/1/12/Button_accueilA.png";
	images[1] = "http://upload.wikimedia.org/wikipedia/fr/e/eb/Button_accueilB.png";
        images[2] = "http://upload.wikimedia.org/wikipedia/fr/e/e5/Button_copyvio.png";
        images[3] = "http://upload.wikimedia.org/wikipedia/fr/0/00/Button_vandale.png";
        images[4] = "http://upload.wikimedia.org/wikipedia/fr/0/00/Button_vandale.png";
        images[5] = "http://upload.wikimedia.org/wikipedia/fr/f/fb/Button_spam2.png";
        images[6] = "http://upload.wikimedia.org/wikipedia/fr/0/00/Button_vandale.png";
	images[7] = "http://upload.wikimedia.org/wikipedia/fr/f/f8/Button_suppr.png";
        images[8] = "http://upload.wikimedia.org/wikipedia/fr/d/d9/Button_trait%C3%A9.png";
        images[9] = "http://upload.wikimedia.org/wikipedia/fr/6/67/Button_%C3%A9clair.png";
 
	var commentaires = new Array()
	commentaires[0] = "Bienvenue sur ta page !";
	commentaires[1] = "Bienvenue !";
        commentaires[2] = "avertissement 1er niveau";
        commentaires[3] = "avertissement 2e niveau";
        commentaires[4] = "avertissement 3e niveau" ;
        commentaires[5] = "avertissement spammeur";
        commentaires[6] = "avis de blocage" ;
        commentaires[7] = "Proposé à la suppression"; 
        commentaires[8] = "Redirection vers Oracle";
        commentaires[9] = "Fait";
        ////////////////////////////////
 
	for (var i=0;i<messages.length;i++) {
		var img = document.createElement("img");
		img.setAttribute("src", images[i]);
		img.setAttribute("alt", commentaires[i]);
 
		var ref = document.createElement("a");
		ref.setAttribute("href", "javascript:insertTags('', \"" + messages[i] + "\", '');" + 
		                 "javascript:changeSummary(\"" + commentaires[i] + "\");" ); 
		ref.appendChild(img); 
 
		toolbar.appendChild(ref);
	}
  }
}
function changeSummary(sampleText) {
	document.editform.wpSummary.value = sampleText;
}
addLoadEvent(DeluxeBar);
 
 
<!--   EDITER LE PREMIER PARAGRAPHE   -->
 
function editerPremierParagraphe() {
  var urlRegexp = /\/wiki\//;
  var url = self.location.pathname.split('&')[0].replace(urlRegexp, "/w/index.php?title=");
  var a = document.getElementById("p-cactions");
  if (a) {
    b = a.getElementsByTagName("ul");
    if(b.length > 0) {
      b[0].innerHTML = b[0].innerHTML
      + '<li><a href="' + url + '&action=edit&section=0">modifier 1er paragraphe</a></li>';  
    }
  }
}
 
addLoadEvent(editerPremierParagraphe);
 
 
<!--   NOUVEL ONGLET PERSO  -->
 
function addLoadEvent(func) 
      {
         if (window.addEventListener) 
             window.addEventListener("load", func, false);
         else if (window.attachEvent) 
             window.attachEvent("onload", func);
      }
 
      function nouvelOnglet() 
      {
        var a = document.getElementById("p-cactions");
        if (a) 
        {
          b = a.getElementsByTagName("ul");
          if(b.length > 0)
          {
            b[0].innerHTML = b[0].innerHTML
            + '<li id="ca-nstab-user">'
            + '<a href="/wiki/Utilisateur:Samyra008/Bac à sable">'
            + 'tests et idées</a></li>';
          }
        }
      }
 
      addLoadEvent(nouvelOnglet);
 
 
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 (document.URL.indexOf("http://fr.wikipedia.org/wiki/Special:Watchlist/edit")!=0) 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>"
 
}
 
addLoadEvent(SuiviManager);
 
 
 
/********* Suivi utilisateurs *************/
 
function addWatchUserLinks() {
        var a = document.getElementById("p-search")
        if (a)
                a = a.getElementsByTagName("div")[0]
        if (a)
        {
                var str = a.innerHTML + '  <a class="searchLink" href="javascript:watchUser(document.getElementById(\'searchInput\').value)" title="Mettre en évidence les contributions de cet utilisateur">'
                        + 'watch user</a>'
                        + '  <a class="searchLink" href="javascript:unwatchUser(document.getElementById(\'searchInput\').value)" title="Ne plus mettre en évidence les contributions de cet utilisateur">'
                        + 'unwatch user</a>'
                a.innerHTML = str
        }
}
 
function watchUser(usr) {
        if (!isUserWatched(usr)) {
                var all = cookies.get("watchUser")
                cookies.set("watchUser", (all ? all + usr + "/" : usr + "/"))
                highlightWatchedUsers()
        }
}
 
function unwatchUser(usr) {
        if (!isUserWatched(usr))
                return
        var all = cookies.get("watchUser").split("/")
        var out = ""
        for (var cpt = 0 ; cpt < all.length ; cpt++)
                if (all[cpt] != usr && all[cpt])
                        out += all[cpt] + "/"
        cookies.set("watchUser", out)
        highlightWatchedUsers()
}
 
function isUserWatched(usr) {
        var all = cookies.get("watchUser")
        if (!all)
                return null
        for (var cpt = 0 ; cpt < all.split("/").length ; cpt++)
                if (all.split("/")[cpt] == usr)
                        return 1
        return null
}
 
function highlightWatchedUsers() {
        if (getArticleName() != "Modifications récentes")
                return
        var uls = document.getElementsByTagName("ul")
        var ul = uls[0]
        for (var cpt = 1 ; cpt < uls.length && ul.className != "special" ; cpt++)
                ul = uls[cpt]
        var lis = ul.getElementsByTagName("li")
        for (var cpt = 0 ; cpt < lis.length ; cpt++) {
                var usr = lis[cpt].getElementsByTagName("a")[3].innerHTML
                if (lis[cpt].getElementsByTagName("span")) {
                        var spans = lis[cpt].getElementsByTagName("span")
                        for (var cpt2 = 0 ; cpt2 < spans.length ; cpt2++)
                                if (spans[cpt2].className == "newpage")
                                        var usr = lis[cpt].getElementsByTagName("a")[2].innerHTML
                }
                if (isUserWatched(usr))
                        lis[cpt].className = "userWatched"
                else
                        lis[cpt].className = ""
        }
}
 
addLoadEvent(highlightWatchedUsers)
addLoadEvent(addWatchUserLinks)
 
/********* Fin suivi utilisateurs *********/
 
 
//-----------------------------------------------------ObjCookie
 
function objCookies() {
        this.value = null
        this.name = null
        this.expires = null
}
 
objCookies.prototype.get = function (which) {
        this.allcookies = document.cookie
        var start = this.allcookies.indexOf("; " + which + "=")
        if (start == -1) {
                start = this.allcookies.indexOf(which + "=")
                if (start != 0)
                        return null
        } else
                start += "; ".length
        this.name = which
        var end = this.allcookies.indexOf(";", start)
        if (end == -1)
                end = this.allcookies.length
        this.value = this.allcookies.substring(start + which.length + 1, end)
        var arr = this.allcookies.substring(start, this.allcookies.length).split("; ")
        this.expires = null
        if (arr.length > 0)
                if (/expires=/.test(arr[1]))
                        this.expires = arr[1].substring("expires=".length, arr[1].length)
        return this.value
}
 
objCookies.prototype.set = function (name, value, expires) {
        document.cookie = name + "=" + value + ";" + (expires ? "expires=" + expires + ";" : "") + "path=/;" + "domain=fr.wikipedia.org;"
        this.allcookies = document.cookie
}
 
objCookies.prototype.setWithDelay = function (name, value, delay) {
        var d = new Date()
        d.setTime(d.getTime() + delay)
        this.set(name, value, d.toGMTString())
}
 
objCookies.prototype.kill = function (which) {
        if (this.get(which))
                this.set(which, null, "Thu, 01-Jan-70 00:00:01 GMT")
}
 
var cookies = new objCookies()
 
 
//-----------------------------------------------------get article
function getArticleName()
{
        var strOut = document.title
        // case search
        if (strOut == "Rechercher - Wikipédia")
                return document.getElementById("lsearchbox").value
        // case article being modified
        strOut = strOut.replace("modification de ", "").replace(" - Modifier", "")
 
        strOut = strOut.replace(" - Prévisualiser", "").replace(" - Wikipédia", "")
        return strOut
}
 
function getDeletionName()
{
        var div = document.getElementById("contentSub")
        var str = div.innerHTML.replace(/.*\(Suppression de « /, "").replace(" »)", "")
        return str
}
 
 
 
 
/******************************************
 * Homonymie Killer de Xavier Combelle    *
 ******************************************/
 
function disambiguationHook ()
 {
 var toto = document.title;
 // le texte de l'homonymie
 var old_text = "souris";
 // la nouvelle description de l'homonymie
 var new_text = "souris (informatique)|";
 if (toto.match(/^modification/)) {
        var text = document.getElementById("wpTextbox1");
    var index = 0;
    remplace = false;
    while (true) {
   var position = text.value.indexOf("["+old_text+"]",position);
        if (position == -1)
             break;
        var beginLine = text.value.lastIndexOf("\n",position);
        var endLine   =   text.value.indexOf("\n",position);
        if ( window.confirm("Remplacer dans "+text.value.substring(beginLine,endLine))) {
   var aremplacer = (text.value.substring(0,position)+ "[" + new_text +"|"+old_text + "]" +  text.value.substring(position+2+old_text.length)  ); 
   text.value = aremplacer;
    remplace = true;
        }
        position +=1;
    }
    if (remplace) {
    document.getElementById("wpSummary").value ="Correction des [[Wikipédia:Projet/Liens vers les pages d'homonymie|liens vers les pages d'homonymie]] ("+new_text+")" 
    }
 } 
 }
 // la ligne suivante à commenter pour desactiver le hook
 addLoadEvent( disambiguationHook ) ;
 
/* </nowiki></pre> */