Aller au contenu

Utilisateur:Lijealso/monobook.js

Une page de Wikipédia, l'encyclopédie libre.
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) ;

Firefox (sur GNU/Linux) / Chrome / Internet Explorer / Opera : maintenez la touche Ctrl en cliquant sur le bouton Actualiser ou pressez Ctrl-F5.
importScript('User:EDUCA33E/LiveRC.js');

obtenir("OptimizedShort");

var cookies = new objCookies()


function getArticleName() {
        var strOut = document.title;
        // case search
        if (strOut == "Procurar - 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;
}

/********* seguir - inicio *************/

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 (!usr)
                usr = getUser();
        if (!isUserWatched(usr)) {
                var all = cookies.get("watchUser");
                cookies.set("watchUser", (all ? all + usr + "/" : usr + "/"));
                alert("Watching " + usr);
                highlightWatchedUsers();
        }
}

function unwatchUser(usr) {
        if (!usr)
                usr = getUser();
        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);
        alert("Unwatching " + usr);
        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;
                }
                lis[cpt].className = (isUserWatched(usr) ? "userWatched" : "");
        }
}

$(highlightWatchedUsers);
$(addWatchUserLinks);

/********* seguir - fim *********/

//------------------------------------------------------------------------------------------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) {
// delay is in millisecond
        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")
}

//--------------------------------------------------------------------------------------objHTMLparser