Utilisateur:Min's/monobook.js

Une page de Wikiversité, la communauté pédagogique libre.

Note : après avoir publié vos modifications, il se peut que vous deviez forcer le rechargement complet du cache de votre navigateur pour voir les changements.

  • Firefox / Safari : maintenez la touche Maj (Shift) en cliquant sur le bouton Actualiser ou appuyez sur Ctrl + F5 ou Ctrl + R (⌘ + R sur un Mac).
  • Google Chrome : appuyez sur Ctrl + Maj + R (⌘ + Shift + R sur un Mac).
  • Internet Explorer / Edge : maintenez la touche Ctrl en cliquant sur le bouton Actualiser ou pressez Ctrl + F5.
  • Opera : appuyez sur Ctrl + F5.
/*<pre>*/

/*</pre>
== WATCH LIST ==
<pre>*/
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[1].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=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";
        regexpList[b++]         = "^Utilisateur:";
        
        interfaceMsg[a++]       = "Wikiversité:*"; 
        regexpList[b++]         = "^Wikiversité:";
        
        interfaceMsg[a++]       = "Sous-pages de PàS"; 
        regexpList[b++]         = "^Wikiversité:Pages à supprimer\/";

        interfaceMsg[a++]       = "Sous-pages de PàV"; 
        regexpList[b++]         = "^Wikiversité:Pages à vérifier\/";
        
        interfaceMsg[a++]       = "Pages du bistro"; 
        regexpList[b++]         = "^Wikiversité:Le Bistro\/";
        
        interfaceMsg[a++]       = "Images"; 
        regexpList[b++]         = "^Image:";
        
        interfaceMsg[a++]       = "Modèles"; 
        regexpList[b++]         = "^Modèle:"; 
        
        interfaceMsg[a++]       = "Aide"; 
        regexpList[b++]         = "^Aide:"; 
        
        interfaceMsg[a++]       = "Catégories"; 
        regexpList[b++]         = "^Catégorie:";      
        
        interfaceMsg[a++]       = "Portails"; 
        regexpList[b++]         = "^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;border-radius-topright:0.5em;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);

/*</pre>
== Ajouts ==
<pre>*/




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("corr interwiki")
                titles.push("+ portail")
                titles.push("- image")
                titles.push("- lien int")
                titles.push("- lien ext")
                titles.push("corr lien int")
                titles.push("corr lien ext")
                titles.push("lien ext -> lien int")
                titles.push("lien int -> interwiki")
                titles.push("MeP")
                titles.push("fusion")
                titles.push("redir")
                titles.push("ortho/gram")
                titles.push("retouches")
                titles.push("ajInfo")
                titles.push("rangmt")
                titles.push("recat")
                titles.push("PàS conservé")
                titles.push("création")
                titles.push("Avis")
                titles.push("Motivation")
                titles.push("Réponse")
                titles.push("régul")
                titles.push("délais")
                titles.push("sup copyvio")
                titles.push("date")
                titles.push("rv-motif")


                var inputs = new Array()
                inputs.push("+ bandeau ébauche")
                inputs.push("+ catégorie")
                inputs.push("+ image")
                inputs.push("+ liens interwiki")
                inputs.push("correction liens interwiki")
                inputs.push("+ portail")
                inputs.push("- image manquante")
                inputs.push("- lien interne")
                inputs.push("- lien externe")
                inputs.push("correction lien interne")
                inputs.push("correction lien externe")
                inputs.push("conversion lien externe en lien interne")
                inputs.push("conversion lien interne en lien interwiki")
                inputs.push("mise en page")
                inputs.push("fusion")
                inputs.push("Redirect")
                inputs.push("correction orthographe/grammaire")
                inputs.push("diverses retouches")
                inputs.push("ajout infos")
                inputs.push("rangement interwikis/catégories")
                inputs.push("changement catégorie")
                inputs.push("article listé sur PàS - retrait du bandeau (conservé)")
                inputs.push("Initialisation de la page")
                inputs.push("Avis rendu !")
                inputs.push("Ma motivation")
                inputs.push("Réponse")
                inputs.push("- non régularisé")
                inputs.push("- délais non respectés")
                inputs.push("- suppression passage en copyvio du site : ")
                inputs.push("- du "+ TodayDate())
                inputs.push("revert de la dernière contribution. Indiquez les motifs des modifications dans boîte de résumé ou en indiquer le renvoi en page de discussion")

                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)

/*</pre>
== Lien Editcount ==
<pre>*/


/* Lien Editcount */
var tabAction = "p-cactions";
function addECButton()
       {
        if ( window.location.href.indexOf('Contributions') < 0) return;
        var c = document.getElementById('contentSub');
        var a = c.getElementsByTagName('a');
        if (a.length == 3) {
          name = a[0].innerHTML;
        } else {
          name = c.innerHTML.replace(/ \(.*/, '').replace(/.* /, '');
        }
        var l = document.getElementById(tabAction);
        t = l.innerHTML;
        ind = t.toLowerCase().indexOf("</ul>");
        before = t.substring(0,ind);
        after = t.substring(ind); 
        pitem = "<li><a href='http://tools.wikimedia.de/~interiot/cgi-bin/count_edits?user="+"&dbname=frwiki_p'>"+
                "<div id='EditCount' style='display:inline;'>" + 
                "Editcount"  + 
                "</div></a></li>";
        l.innerHTML = before + pitem + after ;           
      }
addLoadEvent(addECButton);


/*</pre>
== Barre d'édition de boutons ==
<pre>*/

function DeluxeBar() {
  if (document.createTextNode) {
        var toolbar = document.getElementById("toolbar"); 
        if (!toolbar) return;
        

        var messages = new Array()
        var images = new Array()
        var commentaires = new Array()
        var a=-1;

//Le décompte commence à -1 avec une incrementation sur le premier message, pour éviter tout probleme en cas d'inversion ou suppression du premier message

        // le texte a été splitté sinon Mediawiki casse tout...

        messages[++a] = "{{subst:" + "Bienvenue" + "}}" +  "--" + "~~" + "~~";
        images[a] = "http://upload.wikimedia.org/wikipedia/fr/e/eb/Button_accueilB.png";
        commentaires[a] = "Bienvenue !"

        messages[++a] = "{{subst:" + "Merci IP" + "}}" +  "--" + "~~" + "~~";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/a/a9/Button_tournesol.png";
        commentaires[a] = "Merci pour ta contribution"

        messages[++a] = "{{subst:"+ "bienvenue IP" + "}}" + "--" + "~~" + "~~";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/3/39/Button_IP.png";
        commentaires[a] = "Bienvenue !"

        messages[++a] = "{{subst:" + "motivation modif" +"|page=" + "}}" +  "--" + "~~" + "~~";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/7/74/Button_oeil.png";
        commentaires[a] = "Modification de page sans motif"

        messages[++a] = "{{"+ "subst:bienvenue débutant" + "}}" + "--" + "~~" + "~~";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/2/28/Button_info.png";
        commentaires[a] = "Bienvenue débutant !"

        messages[++a] = "{{subst:" + "Bienvenue vandale" + "}}" +  "--" + "~~" + "~~";
        images[a] = "http://upload.wikimedia.org/wikipedia/fr/0/00/Button_vandale.png";
        commentaires[a] = "Avertissement vandalisme"

        messages[++a] = "{{subst:" + "Vandalisme| " + "}}" +  "--" + "~~" + "~~";
        images[a] = "http://upload.wikimedia.org/wikipedia/fr/a/ad/Button_vandale2.png";
        commentaires[a] = "Avertissement vandalisme" + " de niveau 1 "

        messages[++a] = "{{subst:" + "Bienvenue spammeur" + "}}" +  "--" + "~~" + "~~";
        images[a] = "http://upload.wikimedia.org/wikipedia/fr/f/fb/Button_spam2.png";
        commentaires[a] = "Avertissement spam " 

        messages[++a] = "{{subst:" + "Traité||--" + "~~" + "~~" + "}}";
        images[a] = "http://upload.wikimedia.org/wikipedia/fr/d/d9/Button_traité.png";
        commentaires[a] = "Traité"

        messages[++a] = "{{subst:" + "TraitéConserver||--" + "~~" + "~~" + "}}";
        images[a] = "http://upload.wikimedia.org/wikipedia/fr/a/ae/Button_traitéconserver.png";
        commentaires[a] = "Traité : article conservé"

        messages[++a] = "{{subst:" + "TraitéSupprimer||--" + "~~" + "~~" + "}}";
        images[a] = "http://upload.wikimedia.org/wikipedia/fr/9/96/Button_traitésupprimer.png";
        commentaires[a] = "Traité : article supprimé"

        messages[++a] = "{{" + "suppression à revoir" + "}}";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/2/22/Button_radio_activite.png";
        commentaires[a] = "Article sensiblement modifié"

        messages[++a] = "{{" + "copie de site|URL|Titre" + "}}";
        images[a] = "http://upload.wikimedia.org/wikipedia/fr/e/e5/Button_copyvio.png";
        commentaires[a] = "Violation de copyright"

        messages[++a] = "{{" + "avis blanchi copyvio|1= |2= |3= |4= " + "}}"+ "--" + "~~" + "~~" ;
        images[a] = "http://upload.wikimedia.org/wikipedia/fr/e/e5/Button_copyvio.png";
        commentaires[a] = "Violation de copyright";

        messages[++a] = "{{" + "Bienvenue copyvio"+"| " + "}}" + "--" + "~~" + "~~";
        images[a] = "http://upload.wikimedia.org/wikipedia/fr/e/e5/Button_copyvio.png";
        commentaires[a] = "Violation de copyright"

        messages[++a] = "{{" + "suppression" + "}}";
        images[a] = "http://upload.wikimedia.org/wikipedia/fr/f/f8/Button_suppr.png";
        commentaires[a] = "Proposé à la suppression" 

        messages[++a] = "{{subst:" + "PAdQ rejetée|premier/second tour|0|0|0|-|~~" + "~~}}";
        images[a] = "http://upload.wikimedia.org/wikipedia/fr/c/cf/Button_PAdQ_rejet.png";
        commentaires[a] = "Notification de rejet de la proposition"

        messages[++a] = "{{subst:" + "PAdQ validée|premier/second tour|0|0|0|-|~~" + "~~}}";
        images[a] = "http://upload.wikimedia.org/wikipedia/fr/2/29/Button_PAdQ_validation.png";
        commentaires[a] = "Notification de validation de la proposition"

        messages[++a] = "{{subst:" + "LicenceInconnue|test.jpg}}";
        images[a] = "http://upload.wikimedia.org/wikipedia/fr/6/67/Button_éclair.png";
        commentaires[a] = "Image - licence inconnue ou imprécise"

        messages[++a] = "#{{supprimer" + "}} " + "--" + "~~" + "~~";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/f/fc/Button_supp.png";
        commentaires[a] = "/*Supprimer*/A voté !";

        messages[++a] = "#{{conserver" + "}} " + "--" + "~~" + "~~";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/b/ba/Button_conserver.png";
        commentaires[a] = "/*Conserver*/A voté !"

        messages[++a] = "#{{neutre" + "}} " + "--" + "~~" + "~~";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/4/4e/Button_neutre.png";
        commentaires[a] = "/*neutre*/Vote réservé !"

        messages[++a] = "#{{VoteFusionner" + "}} " + "--" + "~~" + "~~";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/7/70/Button_fusion.png";
        commentaires[a] = "/*neutre*/Vote fusionner !"

        messages[++a] = "#{{pour" + "}} " + "--" + "~~" + "~~";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/b/ba/Button_conserver.png";
        commentaires[a] = "/*Pour*/A voté !"

        messages[++a] = "#{{contre" + "}} " + "--" + "~~" + "~~";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/f/fc/Button_supp.png";
        commentaires[a] = "/*Contre*/A voté !"

        messages[++a] = "{{" + "recherche IP" + "}}";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/b/bd/Button_recherche_ip.png";
        commentaires[a] = "Bandeau recherche IP"

        messages[++a] = "{{" + "IP partagée" + "| " + "}}";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/7/7a/Button_ip_partagée.png";
        commentaires[a] = "Bandeau IP partagée"

        messages[++a] = ":"+ "{{" + "fait" + "}}" + " --" + "~~" + "~~";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/9/9d/Button_fait.png";
        commentaires[a] = "traité "

        messages[++a] = "{{" + "Article sans source" + "| " + "}}";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/3/33/Button_exclamation.png";
        commentaires[a] = "Apposition bandeau article sans source "

        messages[++a] = "{{" + "sourcer" + "| " + "}}" + "--" + "~~" + "~~";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/6/6d/Button_exclamation_1.png";
        commentaires[a] = "Avis d’article non sourcé "

        messages[++a] = "{{" + "sources" + "}}";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/6/6a/Button_exclamation_2.png";
        commentaires[a] = "Apposition bandeau sources "

        messages[++a] = "{{" + "Pour Wikisource" + "}}";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/e/eb/Button_wikisource.png";
        commentaires[a] = "Apposition bandeau pour wikisource "

        messages[++a] = "{{" + "Wikisource" + "}}";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/e/eb/Button_wikisource.png";
        commentaires[a] = "Lien sur wikisource "

        messages[++a] = "{{" + "Redirect Wikisource" + "}}";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/e/eb/Button_wikisource.png";
        commentaires[a] = "Redirect vers wikisource "

        messages[++a] = "{{" + "Pour Wiktionnaire" + "}}";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/1/1f/Button_wiktionnaire.png";
        commentaires[a] = "Apposition du bandeau pour Wiktionnaire "

        messages[++a] = "{{" + "Wiktionnaire" + "}}";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/1/1f/Button_wiktionnaire.png";
        commentaires[a] = "Lien vers Wiktionnaire "

        messages[++a] = "{{" + "Redirect Wiktionnaire" + "}}";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/1/1f/Button_wiktionnaire.png";
        commentaires[a] = "Redirect vers Wiktionnaire "

        messages[++a] = "{{" + "Pour Wikilivres" + "}}";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/6/61/Button_wikibooks.png";
        commentaires[a] = "Apposition du bandeau pour Wikilivres "

        messages[++a] = "{{" + "Wikilivres" + "}}";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/6/61/Button_wikibooks.png";
        commentaires[a] = "Lien vers Wikilivres "

        messages[++a] = "{{" + "Redirect Wikilivres" + "}}";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/6/61/Button_wikibooks.png";
        commentaires[a] = "Redirect vers Wikilivres "

        messages[++a] = "{{" + "Désormais sur Commons" + "}}";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/f/f8/Button_Tool_commons.png";
        commentaires[a] = "Image transférée sur Commons"

        messages[++a] = "{{" + "Vers Interwiki| | " + "}}";
        images[a] = "http://upload.wikimedia.org/wikipedia/commons/d/d0/Button_transwiki.png";
        commentaires[a] = "Historique transféré sur le projet cible"

      ////////////////////////////////

for (var i=0;i<messages.length;i++) {
                var img = document.createElement("img");
                img.setAttribute("src", images[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);

/*</pre>

== Ajout de l’historique des pages liées- Shortpages ==
<pre>*/


function OptimizedShortPages() {
        if (document.URL.indexOf("http://fr.wikipedia.org/wiki/Special:Shortpages")!=0) return; 
        
        var mainNode = document.getElementsByTagName("ol");
   
        var allArticles = mainNode[0].getElementsByTagName("li"); 
        for (i=0; i<allArticles.length; i++) {
                var articleName = allArticles[i].childNodes[0].getAttribute("title");

                var historyElement = document.createElement("a");
                var histUrl      = "/w/index.php?title=" + articleName + "&action=history"
                historyElement.setAttribute("href", histUrl);
                var historyText = document.createTextNode("? (hist) ");
                historyElement.appendChild(historyText);
        
                insertAfter(allArticles[i], historyElement, allArticles[i].childNodes[1]); 
                
                var relatedElement = document.createElement("a");
                var relatedUrl  = "/wiki/Special:Whatlinkshere/" + articleName
                relatedElement.setAttribute("href", relatedUrl);
                var relatedText = document.createTextNode(" (liens) ");
                relatedElement.appendChild(relatedText);
                
                var diffElement = document.createElement("a");
                var diffUrl      = "/w/index.php?title=" + articleName + "&diff=0"
                diffElement.setAttribute("href", diffUrl);
                var diffText = document.createTextNode(" (diff) ");
                diffElement.appendChild(diffText);
                
                insertAfter(allArticles[i], relatedElement, historyElement);
                insertAfter(allArticles[i], diffElement, relatedElement);
                insertAfter(allArticles[i], document.createTextNode(allArticles[i].childNodes[1].data), diffElement);
                
                allArticles[i].removeChild(allArticles[i].childNodes[1]); 
          }
}

addLoadEvent(OptimizedShortPages);

/*</pre>
== Meilleur suivi ==
<pre>*/


function insertAfter(parent, node, referenceNode) {
    parent.insertBefore(node, referenceNode.nextSibling);
}

function OptimizedSuivi() 
{
        if (document.URL.indexOf("http://fr.wikiversity.org/wiki/Special:Watchlist")==0 ||
        document.URL.indexOf("http://fr.wikiversity.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);
                                }       
                        }
                }
        }
}

addLoadEvent(OptimizedSuivi);

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/Special:Shortpages">'
            + 'shortpages</a></li>';
          }
        }
      }
      
addLoadEvent(nouvelOnglet);


/*</pre>
== Ajouts de lien externes et internes dans la barre de navigation de gauche ==
<pre>*/

function OptimizedNavig() 
{
  var a = document.getElementById("p-navigation");

  if (a) 
  {
    b = a.getElementsByTagName("ul");
    if(b.length > 0)
    { 
      var startUrl = '/w/index.php?title='
      var endUrl = '&action=purge'

      // liste des URLs
      var urls = new Array()

      urls[0] = 'Wikiversité:Pages à supprimer'
      urls[1] = 'Special:Export'
      urls[2] = 'Special:Newpages'
      urls[3] = 'Special:Blockip'
      urls[4] = 'Special:Log/delete'
      urls[5] = 'Special:Import'
      //urls[6] = 'w:Special:Import'
      //urls[7] = 's:Special:Import'
      //urls[8] = 'wikt:Special:Import'
      //urls[8] = 'n:Special:Import'
	
      var labels = new Array()

      labels[0] = 'PàS'
      labels[1] = 'Export'
      labels[2] = 'nPage'
      labels[3] = 'Block'
      labels[4] = 'Log/Del'
      labels[5] = 'Import'
      //labels[6] = 'w:Import'
      //labels[7] = 's:Import'
      //labels[8] = 'wikt:Import'
      //labels[9] = 'n:Import'

      for (var i=0;i<urls.length;i+=2) {
        tableHTML = '<table valign="top" cellspacing="0" cellpadding="0">'
        tableHTML += '<tr>'
        tableHTML += '<li><td><a href="' + startUrl + urls[i] + endUrl + '">' + labels[i] + ' | </a></td>'
        tableHTML += '<td><a href="' + startUrl + urls[i+1] + endUrl + '">' + labels[i+1] + '</a></td></li>'
        tableHTML += '</tr>'
        tableHTML += '</table>' 
        b[0].innerHTML = b[0].innerHTML + tableHTML
      }

    }
  }
}

addLoadEvent(OptimizedNavig);

/*</pre>

== Onglet purge ==
<pre>*/


function OngletPurge() {
  var a = document.getElementById("p-cactions");
        if (a) 
        {
          var pageName = document.title.replace(" - Wikilivres", ""); 
          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>';
          }
        }
      }

// Onglet Purge

addLoadEvent(OngletPurge);

/*</pre>
== Optimise le suivi ==
<pre>*/

//OPTIMISE LE SUIVI
//Auteur : ?
//Version/Date : ?
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);
          }       
       }
    }
  }
}







/*</pre>
== Outils à destination des Biblithécaires ==
<pre>*/

/*</pre>
=== SuppressionDeluxe : Rajout de boutons de motif de suppression ===
<pre>*/



function SuppressionDeluxe() {
	if (document.title.indexOf("Confirmer la suppression")!=0) return; 
	var mainNode = document.getElementsByTagName("form");
	var firstForm = mainNode[0];
	var messages = new Array();
	var ca = 0;
	messages[ca++] = "Image orpheline sans licence";
	messages[ca++] = "Image sans licence";
	messages[ca++] = "Violation de copyright";
	messages[ca++] = "Publicité ou autopromotion";
	messages[ca++] = "Vandalisme";
	messages[ca++] = "Babil de débutant";
	messages[ca++] = "Redirection vers une page inexistante";
	messages[ca++] = "Supprimé à la demande de son auteur";
	messages[ca++] = "Traduction automatique";
	messages[ca++] = "Contrevient aux règles de nommage";
	messages[ca++] = "Suite à décision prise sur [[WL:PàS]]";
	messages[ca++] = "Propos blessants ou insultes";
	messages[ca++] = "Spam";
	messages[ca++] = "Pris pour un bac à sable";
	messages[ca++] = "Ne respecte pas les critères d'admissibilité";
	messages[ca++] = "Fusion des historiques : phase 1";
	messages[ca++] = "Fusion des historiques : phase 2";
	messages[ca++] = "Fusion des historiques : phase 3";
	messages[ca++] = "Transwiki terminé";

	var table = document.createElement("table");
	var tr = document.createElement("tr");
	table.appendChild(tr);
	if (firstForm.getAttribute("id")=="deleteconfirm") {
		actionDelete = firstForm.getAttribute("action");
		var inputs = firstForm.getElementsByTagName("input");
		var token = inputs[2].getAttribute("value"); 
		for (var i=0;i<messages.length;i++) {
			if (i%3==0) {
				tr = document.createElement("tr");
				table.appendChild(tr);
			}
			var formElement = document.createElement("form");
			formElement.setAttribute("id", "deleteconfirm");
			formElement.setAttribute("method", "post");
			formElement.setAttribute("action", actionDelete);
			var inputReason = document.createElement("input");
			inputReason.setAttribute("name", "wpReason"); 
			inputReason.setAttribute("value", messages[i]); 
			inputReason.setAttribute("type", "hidden"); 
			var inputConfirm = document.createElement("input");
			inputConfirm.setAttribute("name", "wpConfirmB"); 
			inputConfirm.setAttribute("value", messages[i]); 
			inputConfirm.setAttribute("type", "submit"); 
			var inputToken = document.createElement("input");
			inputToken.setAttribute("name", "wpEditToken"); 
			inputToken.setAttribute("value", token); 
			inputToken.setAttribute("type", "hidden"); 
			formElement.appendChild(inputReason);
			formElement.appendChild(inputConfirm);
			formElement.appendChild(inputToken);
			var td = document.createElement("td");
			td.appendChild(formElement);
			tr.appendChild(td); 
		}
		var separation = document.createElement("p");
		separation.appendChild(document.createElement("hr"));
		insertAfter(firstForm.parentNode, separation, firstForm);
		insertAfter(firstForm.parentNode, table, separation);
	}
}
addLoadEvent(SuppressionDeluxe)


/*</pre>
=== BlocageDeluxe : Rajout de boutons prédéfinis pour justifier un blocage ===
<pre>*/
	

	function BlocageDeluxe() {
		if (document.title.indexOf("Bloquer une adresse IP ou un utilisateur")!=0) return; 
		var mainNode = document.getElementsByTagName("form");
		var firstForm = mainNode[0];
		var ca = 0;
		var messages = new Array();
		var duree = new Array();

		messages[ca] = "Vandale non averti mais voulant manifestement nuire";
		duree[ca++] = "10 minutes";

		messages[ca] = "Et vulgaire avec ça";
		duree[ca++] = "30 minutes";

		messages[ca] = "Vandale averti";
		duree[ca++] = "1 hour";

		messages[ca] = "Vandale averti plusieurs fois";
		duree[ca++] = "6 hours";

		messages[ca] = "Récidiviste";
		duree[ca++] = "10 days";

		messages[ca] = "Suite à décision du comité d'arbitrage";
		duree[ca++] = "2 weeks"

		messages[ca] = "Identifiant à caractère injurieux";
		duree[ca++] = "infinite";

		messages[ca] = "Robot fou";
		duree[ca++] = "infinite";

		messages[ca] = "Spammeur";
		duree[ca++] = "infinite";

		var table = document.createElement("table");
		var tr = document.createElement("tr");
		table.appendChild(tr);
		if (firstForm.getAttribute("id")=="blockip") {
			actionBlock = firstForm.getAttribute("action");
			var inputs = firstForm.getElementsByTagName("input");
			var token = inputs[4].getAttribute("value");
			var lePauvre = inputs[0].getAttribute("value");
			for (var i=0;i<messages.length;i++) {
				//   if (i%3==0) {
				tr = document.createElement("tr");
				table.appendChild(tr);
				//   }
				var formElement = document.createElement("form");
				formElement.setAttribute("id", "blockip");
				formElement.setAttribute("method", "post");
				formElement.setAttribute("action", actionBlock);
				var inputReason = document.createElement("input");
				inputReason.setAttribute("name", "wpBlockReason"); 
				inputReason.setAttribute("value", messages[i]); 
				inputReason.setAttribute("type", "hidden"); 
				var dureeC = document.createElement("input");
				dureeC.setAttribute("name", "wpBlockExpiry"); 
				dureeC.setAttribute("value", "other"); 
				dureeC.setAttribute("type", "hidden");
				var dureeC2 = document.createElement("input");
				dureeC2.setAttribute("name", "wpBlockOther"); 
				dureeC2.setAttribute("value", duree[i]); 
				dureeC2.setAttribute("type", "text");
				var inputConfirm = document.createElement("input");
				inputConfirm.setAttribute("name", "wpBlock"); 
				inputConfirm.setAttribute("value", messages[i]); 
				inputConfirm.setAttribute("type", "submit");
				var ident = document.createElement("input");
				ident.setAttribute("name", "wpBlockAddress"); 
				ident.setAttribute("value", lePauvre); 
				ident.setAttribute("type", "hidden"); 
				var inputToken = document.createElement("input");
				inputToken.setAttribute("name", "wpEditToken"); 
				inputToken.setAttribute("value", token); 
				inputToken.setAttribute("type", "hidden"); 
				formElement.appendChild(inputReason);
				formElement.appendChild(dureeC);
				formElement.appendChild(dureeC2);
				formElement.appendChild(inputConfirm);
				formElement.appendChild(inputToken);
				formElement.appendChild(ident);
				var td = document.createElement("td");
				td.appendChild(formElement);
				tr.appendChild(td); 
			}
			var separation = document.createElement("p");
			separation.appendChild(document.createElement("hr"));
			insertAfter(firstForm.parentNode, separation, firstForm);
			insertAfter(firstForm.parentNode, table, separation);
		}
	}
addLoadEvent(BlocageDeluxe);


/*</pre>
=== UndeleteSelectAll : Tout sélectionner ou déselectionner pour la restauration d’une page ===
<pre>*/



function UndeleteSelectAll()
{
	if (document.title.indexOf("Voir et restaurer la page supprimée")!=0) return;
	var title2 = document.getElementsByTagName("h2");
	var all = document.createElement("input");
	all.setAttribute("type", "checkbox");
	all.setAttribute("onchange", "selectAll(this.checked)");
	all.setAttribute("title", "Sélectionner/Désélectionner tous");
	if (title2.length > 1)
		title2[1].appendChild(all);
	else
		title2[0].appendChild(all);
	all.click();
}
function selectAll(bool)
{
	var inputs = document.getElementsByTagName("input");
	for (var cpt = 0 ; cpt < inputs.length ; cpt++)
	{
		inputs[cpt].checked = bool;
	}
}
addLoadEvent(UndeleteSelectAll);

/*</pre>
=== Navigation Pop-ups ===
<pre>*/


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>');
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>');
simplePopups=true;
popupStructure='menus';
popupDelay=0;
popupAdminLinks=true;
popupImages=false;
popupMaxWidth=false;
popupOnlyArticleLinks=false;
popupMaxWidth=false;


/*</pre>
=== plagiarismsearch : détection de plagiats ===
<pre>*/


function plagiarismsearch(){
        var formElement = document.createElement('form');
        formElement.setAttribute('method', 'post');
        formElement.setAttribute('id', 'copyscapequery');
        formElement.setAttribute('name', 'copyscapequery');
        formElement.setAttribute('action', 'http://www.copyscape.com/?results');

        var queryInput = document.createElement('input');
        queryInput.setAttribute('name', 'q');
        queryInput.setAttribute('type', 'hidden');
        queryInput.setAttribute('value', document.URL);
        formElement.appendChild(queryInput);

        var queryGO = document.createElement('a');
        queryGO.setAttribute('href', 'javascript:document.forms.copyscapequery.submit();');
        var queryText = document.createTextNode('copyscape');
        queryGO.appendChild(queryText);

        var link = document.createElement('li');
        link.setAttribute ('id', 'ca-copyscape');
        link.appendChild(queryGO);
        link.appendChild(formElement);

        var panelControl = document.getElementById('p-cactions');
        if (panelControl) {
                panelLinks = panelControl.getElementsByTagName('ul')[0];
                if (panelLinks){
                        panelLinks.appendChild(link);
                }
        }
}
addLoadEvent(plagiarismsearch);


/*</pre>
== Fonction TodayDate ==
<pre>*/


function TodayDate()
{
        var m = new Array("janvier", "février", "mars", "avril", "mai", "juin", "juillet", "août", "septembre", "octobre", "novembre", "décembre")
        var today = new Date()
        var day = today.getDate()
        var year = today.getYear()

        if (year < 2000)
                year += 1900

        return (day + " " + m[today.getMonth()] + " " + year)
}



/*</pre>*/