Utilisateur:شادي/vector.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.// fonction d'import de page, sur fr, en, ou autre (exemple sur en: importWikiPage('User:Lupin/popups.js', 'en'))
function importWikiPage(page, lng) {
langue = (lng ? lng : 'fr')
document.write('<script type="text/javascript" src="'
+ 'http://' + langue + '.wikipedia.org/w/index.php?title=' + page
+ '&action=raw&ctype=text/javascript&dontcountme=s"></script>');
}
// objets Ajax et cookies pour lecture des messages
importWikiPage('Utilisateur:GôTô/objects.js')
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
}
/***************** Lecture de messages ****************/
function getCurrentId(page) {
var li = document.getElementById("t-permalink");
if (li)
return (li.getElementsByTagName("a")[0].href.split("oldid=")[1].split("&")[0]);
}
function getMessages() {
var mois = new Array("janvier", "février", "mars", "avril", "mai", "juin", "juillet", "août", "septembre", "octobre", "novembre", "décembre");
mois["janvier"] = 0; mois["février"] = 1; mois["mars"] = 2; mois["avril"] = 3; mois["mai"] = 4; mois["juin"] = 5; mois["juillet"] = 6; mois["août"] = 7; mois["septembre"] = 8; mois["octobre"] = 9; mois["novembre"] = 10; mois["décembre"] = 11;
var article = getArticleName();
var month = -1;
var year = -1;
if (article.indexOf("Discussion utilisateur:TON_PSEUDO_ICI/") > -1) {
month = mois[article.split("Discussion utilisateur:TON_PSEUDO_ICI/")[1].split(" ")[0]];
year = article.split("Discussion utilisateur:TON_PSEUDO_ICI/")[1].split(" ")[1];
//first case: we are on a talk page of ours: we read and save the ''oldid'' in a cookie
cookies.set("lastViewedMsg" + mois[month], getCurrentId(), 30*86400*1000);
}
var dNow = new Date();
var page = encodeURI("Discussion utilisateur:TON_PSEUDO_ICI/").replace(/%20/g, "_") + encodeURI(mois[dNow.getMonth()]) + "_" + dNow.getFullYear() + "||" + encodeURI(mois[dNow.getMonth()]);
//check the page of the current month
if (month != dNow.getMonth() || year != dNow.getFullYear())
checkPageForMessages(page);
var prevMonth = dNow.getMonth() -1;
var prevMonthYear = dNow.getFullYear();
if (prevMonth == -1) {
prevMonth = 11;
prevMonthYear--;
page = page.replace(dNow.getFullYear(), prevMonthYear);
}
page = page.replace(new RegExp(encodeURI(mois[dNow.getMonth()]), "g"), encodeURI(mois[prevMonth]));
//check the page of the previous month
if (month != prevMonth || year != prevMonthYear)
checkPageForMessages(page);
}
function checkPageForMessages(page) {
if (typeof objAJAX === 'undefined') {
return;
}
var ajaxObj = new objAJAX();
ajaxObj.page = page;
ajaxObj.conn.onreadystatechange = function () {
if (ajaxObj.conn.readyState == 4) {
if (ajaxObj.conn.status == 200) {
var lastViewedId = (cookies.get("lastViewedMsg" + decodeURI(ajaxObj.page.split("||")[1])) ? cookies.get("lastViewedMsg" + decodeURI(ajaxObj.page.split("||")[1])) : 0);
var currentId = ajaxObj.conn.responseText.split(ajaxObj.page.split("||")[0] + "&oldid=")[1].split('"')[0];
if (parseInt(currentId, 10) > parseInt(lastViewedId, 10))
alertMessage(ajaxObj.page);
}
}
}
return(ajaxObj.sendRequest("/w/index.php?title=" + page.split("||")[0] + "&limit=1&action=history", "GET", true));
}
function alertMessage(page) {
var div = document.getElementById("nouveauMessage");
if (!div) {
div = document.createElement("div");
div.className = "usermessage";
div.id = "nouveauMessage";
var cont = document.getElementById("content");
cont.insertBefore(div, document.getElementById("bodyContent"));
}
var txt = document.createTextNode("Vous avez de nouveaux messages: ");
var aDiff = document.createElement("a");
aDiff.href = "/w/index.php?title=" + page.split("||")[0] + "&diff=cur";
aDiff.innerHTML = "différences (" + decodeURI(page.split("||")[1]) + ")";
div.appendChild(txt);
div.appendChild(aDiff);
div.appendChild(document.createElement("br"));
}
$(getMessages);
/************** Lecture de messages fin *****************/
importScript('Utilisateur:Dr Brains/Remplace.js')