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

loadJs('Utilisateur:EDUCA33E/LiveRC.js');
function DeluxeBar() {
	if (document.createTextNode) {
		var toolbar = document.getElementById("toolbar"); 
		if (!toolbar) return;
 
		var messages = new Array();
 
		messages[0] = "{{"+"proxy"+"}}";
		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] = "{{proxy}}";
		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);
 
function OptimizedNavig() 
{
  var a = document.getElementById("p-Contribuer");
 
  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] = 'Wikipédia:Le Bistro'
      urls[2] = 'Wikipédia:Pages à supprimer'
      urls[9] = 'Wikipédia:Proposition articles de qualité'
      urls[1] = 'Wikipedia:Bulletin_des_administrateurs'
      urls[4] = 'WP:BOT'
      urls[5] = 'Special:Newpages'
      urls[6] = 'Special:Blockip'
      urls[7] = 'Special:Log/delete'
      urls[8] = 'Special:Unusedcategories'
      urls[3] = 'Special:Recentchanges&hideliu=1&hideanons=1'
      var labels = new Array()
      labels[0] = 'Bistro'
      labels[2] = 'PàS'
      labels[9] = 'pAdQ'
      labels[1] = 'BdA'
      labels[4] = 'Bots'
      labels[5] = 'nPage'
      labels[6] = 'Block'
      labels[7] = 'Log/Del'
      labels[8] = 'unCat'
      labels[3] = 'RCip'
 
      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> */
//<source lang="javascript" line>
/*
 * Fusion d'historiques
 *
 * Fusionne les historiques de plusieurs contributeurs
 *
 * Auteur : Marc Mongenet
 * Dernière révision : 24 mai 2007
 */
 
// Fusion display of Wikipedia user contributions history
// Copyright 2006, 2007, Marc Mongenet
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
//
// See http://www.gnu.org/licenses/gpl.html
 
// TODO: Special:Log
 
var fusioncontribsFus = new Object(); // fusioncontribsFus is used as namespace.
fusioncontribsFus.main_contributor = undefined; // main contributor name
fusioncontribsFus.contributors_list = new Object(); // XHTML list of contributors
fusioncontribsFus.contribs_limit = 0; // 0 means default value
fusioncontribsFus.count = 0; // number of fusionned contribs
fusioncontribsFus.colors = [ "", "#FFB", "#FBF", "#BFF", "#DDF", "#DFD", "#FDD",
                             "#EEA", "#EAE", "#AEE", "#CCE", "#CEC", "#ECC",
                             "#DD9", "#D9D", "#9DD", "#BBD", "#BDB", "#DBB" ];
 
fusioncontribsFus.contributors_list.init = function() {
        this.elm = document.createElement("ol");
}
 
fusioncontribsFus.contributors_list.add = function(contributor) {
        // UI components
        var li = document.createElement("li");
        li.fusioncontribsFus = new Object();
        li.fusioncontribsFus.contributor = contributor;
        li.style.backgroundColor = fusioncontribsFus.colors[fusioncontribsFus.count];
        li.appendChild(document.createTextNode(contributor));
        var a = document.createElement("a");
        a.href = "http://tools.wikimedia.de/~interiot/cgi-bin/count_edits?dbname=frwiki_p&user=" + contributor;
        a.appendChild(document.createTextNode(" editcount"));
        li.appendChild(a);
        this.elm.appendChild(li);
}
 
fusioncontribsFus.monthNameToNum = function(m) {
        if (m == "janvier") return 0;
        if (m == "février") return 1;
        if (m == "mars") return 2;
        if (m == "avril") return 3;
        if (m == "mai") return 4;
        if (m == "juin") return 5;
        if (m == "juillet") return 6;
        if (m == "août") return 7;
        if (m == "septembre") return 8;
        if (m == "octobre") return 9;
        if (m == "novembre") return 10;
        if (m == "décembre") return 11;
        return 12;
}
 
// Return Date of contribution listed in this li element.
fusioncontribsFus.contribTimeRegex = /(\d+)\s+(\S+)\s+(\d{4})\D+(\d+)\D+(\d{2})/;
fusioncontribsFus.parseContribTime = function(li) {
        var datetime = li.firstChild.nodeValue.match(fusioncontribsFus.contribTimeRegex);
        datetime[2] = fusioncontribsFus.monthNameToNum(datetime[2]);
        return new Date(parseInt(datetime[3]),
                            datetime[2],
                        parseInt(datetime[1]),
                        parseInt(datetime[4], 10),
                        parseInt(datetime[5], 10));
}
 
fusioncontribsFus.fuse = function(ul1, ul2, contributor, color) {
        contributor = " -- " + contributor;
        var li1 = ul1.firstChild;
        for (var li22 = ul2.firstChild; li22; li22 = li22.nextSibling) {
                if (li22.nodeType == 1) {
                        var li2 = li22.cloneNode(true);
                        li2.appendChild(document.createTextNode(contributor));
                        li2.style.backgroundColor = color;
                        var time2 = fusioncontribsFus.parseContribTime(li2).getTime();
 
                        while (li1) {
                                if (li1.nodeType == 1) {
                                        var time1 = fusioncontribsFus.parseContribTime(li1).getTime();
                                        if (time1 <= time2) {
                                                if (time1 == time2) {
                                                        li1.style.borderLeftWidth = li2.style.borderLeftWidth = "0.25em";
                                                        li1.style.borderLeftStyle = li2.style.borderLeftStyle = "solid";
                                                        li1.style.borderLeftColor = li2.style.borderLeftColor = "red";
                                                }
                                                break;
                                        }
                                }
                                li1 = li1.nextSibling;
                        }
                        ul1.insertBefore(li2, li1);
                }
        }
}
 
fusioncontribsFus.getElementById = function(elm, id) {
        var res = null;
        if (elm.id == id) res = elm;
        for (var child = elm.firstChild; !res && child; child = child.nextSibling)
                if (child.nodeType == 1)
                        res = fusioncontribsFus.getElementById(child, id);
        return res;
}
 
fusioncontribsFus.onFusionWith = function(contributor) {
        ++fusioncontribsFus.count;
        fusioncontribsFus.contributors_list.add(contributor);
 
        // Load fusionned page with synchronous XMLHttpRequest
        var http_request;
        if (window.XMLHttpRequest) { // Mozilla, Safari, ...
                http_request = new XMLHttpRequest();
                if (http_request.overrideMimeType)
                        http_request.overrideMimeType('text/xml');
        } else if (window.ActiveXObject) { // IE
                try {
                        http_request = new ActiveXObject("Msxml2.XMLHTTP");
                } catch (e) {
                        try {
                                http_request = new ActiveXObject("Microsoft.XMLHTTP");
                        } catch (e) {}
                }
        }
        http_request.open('GET', "/w/index.php?title=Special:Contributions&target="+contributor+"&limit="+fusioncontribsFus.contribs_limit, false);
        http_request.send(null);
 
        // Get both contributions histories
        var ul1 = document.getElementById("bodyContent");
        ul1 = ul1.getElementsByTagName("ul")[0];
 
        var ul2 = http_request.responseXML;
        if (!ul2.getElementById) { // MSIE
                ul2 = document.createElement("div");
                ul2.innerHTML = http_request.responseText;
                ul2 = fusioncontribsFus.getElementById(ul2, "bodyContent");
        } else {
                ul2 = ul2.getElementById("bodyContent");
        }
        ul2 = ul2.getElementsByTagName("ul")[0];
 
        // Fusion
        fusioncontribsFus.fuse(ul1, ul2, contributor, fusioncontribsFus.colors[fusioncontribsFus.count]);
}
 
fusioncontribsFus.parseContribUrlTarget = function(url) {
        var target = url.match(/&target=([^&]+)/);
        if (!target)
                target = url.match(/Special:Contributions\/(\S+)/);
        return target[1];
}
 
fusioncontribsFus.parseContribUrlLimit = function(url) {
        var limit = url.match(/&limit=(\d+)/);
        if (limit)
                return parseInt(limit[1]);
        return 0;
}
 
fusioncontribsFus.onContribPage = function(url) {
        fusioncontribsFus.main_contributor = fusioncontribsFus.parseContribUrlTarget(url);
        fusioncontribsFus.contribs_limit = fusioncontribsFus.parseContribUrlLimit(url);
 
        // UI components
        fusioncontribsFus.contributors_list.init();
        fusioncontribsFus.contributors_list.add(fusioncontribsFus.main_contributor);
 
        var input = document.createElement("input");
        input.type = "text";
 
        var submit = document.createElement("input");
        submit.type = "submit";
 
        var form = document.createElement("form");
        form.onsubmit = function() {
                fusioncontribsFus.onFusionWith(input.value);
                return false;
        }
 
        // UI components layout
        submit.value = "Fusionner";
        var fusion = document.createTextNode("Fusionner avec les contributions de ");
        form.appendChild(fusion);
        form.appendChild(input);
        form.appendChild(submit);
        var bodyContent = document.getElementById("bodyContent");
        bodyContent.insertBefore(form, bodyContent.firstChild);
        bodyContent.insertBefore(fusioncontribsFus.contributors_list.elm, bodyContent.firstChild);
}
 
fusioncontribsFus.testForContribPage = function() {
        var url = window.location.href;
        if (url.match(/\/Special:Contributions\/|title=Special:Contributions/)) {
                try {
                        fusioncontribsFus.onContribPage(url);
                } catch (e) { /* Something went wrong. */ }
        }
}
 
addOnloadHook(fusioncontribsFus.testForContribPage);
// </source>[[Catégorie:MediaWiki:Fonction Monobook en JavaScript]]
 
 
//---------------------------------------------------------------------------------------------Objets (cookies)
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>');
 
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 (window.location.href.indexOf("Special:Recentchanges") < 1)
                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)
 
//-----------------------------------------------------------
// 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>';
          }
        }
      }
 
// Onglet Purge
 
addLoadEvent(OngletPurge);
 
obtenir("RestaurationDeluxe");