Utilisateur:Bapti/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.
// 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>'); } // LiveRC : modifications récentes en direct loadJs('User:EDUCA33E/LiveRC.js'); function addLoadEvent(func) { if (window.addEventListener) { window.addEventListener("load", func, false); } else if (window.attachEvent) { window.attachEvent("onload", func); } } // 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:Bapti/") > -1) { month = mois[article.split("Discussion Utilisateur:Bapti/")[1].split(" ")[0]]; year = article.split("Discussion Utilisateur:Bapti/")[1].split(" ")[1]; //first case: we are on a talk page of ours: we read and save the ''oldid'' in a cookie cookies.setWithDelay("lastViewedMsg" + mois[month], getCurrentId(), 1000*3600*24*31); } var dNow = new Date(); var page = encodeURI("Discussion Utilisateur:Bapti/").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) { 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 img = document.createElement("img"); img.width = 25; img.height = 25; img.src = "http://upload.wikimedia.org/wikipedia/commons/thumb/3/36/Nuvola_apps_email.png/25px-Nuvola_apps_email.png"; img.border = 0; 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(img); div.appendChild(txt); div.appendChild(aDiff); div.appendChild(document.createElement("br")); } addLoadEvent(getMessages); /************** Lecture de messages fin *****************/ /////////////////////////////////////////////////// /* * Résumé Deluxe * * Ajoute des commentaires de modification prédéfinis * * Auteur : Dake * Contributions : Pabix, Tieno * Date de dernière révision : 12 novembre 2006 */ //////////////////////ZONE PERSONNALISABLE////////////////////// var resumedeluxeTitles = new Array(); with (resumedeluxeTitles) { push("- Catégorisation"); push("- Wikification"); push("- Image renommée"); push("- Fusion"); push("- Purge"); push("- OTRS"); push("- Nettoyage"); push("- Archivage"); push("- Rép de Bapti"); } var resumedeluxeInputs= new Array(); with (resumedeluxeInputs) { push("Catégorisation"); push("Wikification"); push("Image renommée, suite à son transfert sur Commons"); push("FIN DE LA FUSION DES HISTORIQUES"); push("FIN PURGE HISTORIQUE"); push("Autorisation explicite reçue sur [[Wikipédia:OTRS|OTRS]]"); push("[[Utilisateur:AkeronBot/Suivi exemple|Nettoyage]] du [[Wikipédia:Bac à sable|Bac à sable]]"); push("Archivage"); push("Rép de Bapti"); } /////////////////FIN DE LA ZONE PERSONNALISABLE///////////////// function setSummary(str) { document.editform.wpSummary.value = str; } function addToSummary(str) { var resum = document.editform.wpSummary.value; if(resum != 0 && resum.indexOf("*/") < resum.length - 3) { document.editform.wpSummary.value += " - "; } document.editform.wpSummary.value += str; } function DeluxeSummary() { var sumLbl = document.getElementById("wpSummaryLabel"); if(sumLbl) { var sumInput = document.getElementById("wpSummary"); sumInput.style.width = "95%"; var str = "Messages prédéfinis : "; for(var cpt = 0; cpt < resumedeluxeTitles.length; cpt ++) { str += "<a href=\"javascript:addToSummary('" +resumedeluxeInputs[cpt] + "')\"" + " class=\"sumLink\" title=\"Ajouter '" +resumedeluxeInputs[cpt] +"' dans la boîte de résumé\">" + resumedeluxeTitles[cpt] + "</a> "; } sumLbl.innerHTML = str + "<br />" + sumLbl.innerHTML; } } addLoadEvent(DeluxeSummary); // function insertAfter(parent, node, referenceNode) { parent.insertBefore(node, referenceNode.nextSibling); } function OptimizedSuivi() { if (document.URL.indexOf("http://fr.wikipedia.org/wiki/Special:Liste_de_suivi")==0 || document.URL.indexOf("http://fr.wikipedia.org/w/index.php?title=Special:Liste_de_suivi")==0 ){ var admin = (wgUserGroups.indexOf("sysop") != -1); 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 ma = articleName.match(/^Special:Log\/(.*)$/); if(ma) { var lien; if(ma[1] == "newusers") lien = aTag[1]; else if(admin) lien = aTag[5]; // lien supplémentaire (bloquer) else lien = aTag[4]; if(lien.className == "new") articleName = lien.title.replace(/ \(page inexistante\)$/, ""); else articleName = lien.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 nouvelOnglet1() { 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="http://fr.wikipedia.org/wiki/Special:Newpages">' + 'NP</a></li>'; } } } addLoadEvent(nouvelOnglet1); // auteur : Utilisateur:Dake function DeluxeBar() { if (document.createTextNode) { var toolbar = document.getElementById("toolbar"); if (!toolbar) return; var messages = new Array() // le texte a été splitté sinon Mediawiki casse tout... messages[1] = "{{subst:" + "Modèle:Bienvenue nouveau" + "}}" + "~~" + "~~"; messages[2] = "{{" + "Confirmation OTRS" + "|" + "source=" + "|otrs=" + "|nocat=1" + "}}" + "~~" + "~~"; messages[3] = "{{" + "Subst:Utilisateur:Bapti/Avis de suppression" + "|" + "}}"; messages[4] = "{{" + "Subst:Utilisateur:Bapti/Historique détruit" + "|" + "}}" + "</div>"; messages[5] = "{{" + "Fait." + "}}"; messages[6] = "{{" + "Non." + "}}"; messages[7] = "{{" + "Triste" + "}}"; messages[8] = "{{" + "sourire" + "}}"; messages[9] = "{{" + "Clin" + "}}"; messages[10] = "{{" + "mdr" + "}}"; messages[11] = "{{" + "surprise" + "}}"; messages[12] = "{{" + "gêné" + "}}"; messages[13] = "{{" + "tire langue" + "}}"; messages[14] = "{{" + "ange" + "}}"; messages[15] = "{{" + "espiègle" + "}}"; messages[16] = "{{" + "confus" + "}}"; messages[17] = "{{" + "malin" + "}}"; messages[18] = "{{" + "sifflote" + "}}"; messages[19] = "{{" + "Ouvrage" + "|" + "titre=" + "|" + "éditeur=" + "|" + "auteur=" + "|" + "langue=" + "|" + "jour=" + "|" + "mois=" + "|" + "année=" + "|" + "lieu=" + "|" + "pages=" + "|" + "isbn=" + "|" + "commentaire=" + "}}"; var images = new Array() images[1] = "http://upload.wikimedia.org/wikipedia/commons/e/eb/Button_accueilB.png"; images[2] = "http://upload.wikimedia.org/wikipedia/commons/5/58/Button_black_copyright.png"; images[3] = "http://upload.wikimedia.org/wikipedia/commons/f/f8/Button_suppr.png"; images[4] = "http://upload.wikimedia.org/wikipedia/commons/2/2e/Button_broom.png"; images[5] = "http://upload.wikimedia.org/wikipedia/commons/e/e9/Button_done.png"; images[6] = "http://upload.wikimedia.org/wikipedia/commons/a/a5/Button_not_done.png"; images[7] = "http://upload.wikimedia.org/wikipedia/commons/b/b0/Button_blocage.png"; images[8] = "http://upload.wikimedia.org/wikipedia/commons/1/1c/Button_smiley_face_smile.png"; images[9] = "http://upload.wikimedia.org/wikipedia/commons/7/74/Button_oeil.png"; images[10] = "http://upload.wikimedia.org/wikipedia/commons/f/f5/Button_smiley_face_grin.png"; images[11] = "http://upload.wikimedia.org/wikipedia/commons/thumb/7/79/Face-surprise.svg/20px-Face-surprise.svg.png"; images[12] = "http://upload.wikimedia.org/wikipedia/commons/thumb/3/36/Blush.png/17px-Blush.png"; images[13] = "http://upload.wikimedia.org/wikipedia/commons/thumb/c/c4/Tongue.png/18px-Tongue.png"; images[14] = "http://upload.wikimedia.org/wikipedia/commons/thumb/d/d5/Face-angel.svg/20px-Face-angel.svg.png"; images[15] = "http://upload.wikimedia.org/wikipedia/commons/thumb/3/3c/Crystal_Clear_app_package_toys.png/18px-Crystal_Clear_app_package_toys.png"; images[16] = "http://upload.wikimedia.org/wikipedia/commons/thumb/6/68/Confused.png/18px-Confused.png"; images[17] = "http://upload.wikimedia.org/wikipedia/commons/thumb/7/70/Face-devil-grin.svg/20px-Face-devil-grin.svg.png"; images[18] = "http://upload.wikimedia.org/wikipedia/commons/thumb/3/30/Sifflote.png/30px-Sifflote.png"; images[19] = "http://upload.wikimedia.org/wikipedia/commons/5/5c/Button_references2.png"; 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] + "\", '');"); ref.appendChild(img); toolbar.appendChild(ref); } } } addLoadEvent(DeluxeBar); /* * Outils pour réverter * * Fournit des liens dans les pages de diff * * Auteur : Lorian (en) * Dernière révision : 3 novembre 2006 */ function getElementsByClass(searchClass,node,tag) { // Function from http://www.dustindiaz.com/getelementsbyclass/ var classElements = new Array(); if ( node == null ) node = document; if ( tag == null ) tag = '*'; var els = node.getElementsByTagName(tag); var elsLen = els.length; var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)"); for (i = 0, j = 0; i < elsLen; i++) { if ( pattern.test(els[i].className) ) { classElements[j] = els[i]; j++; } } return classElements; } // _GET code from NoGray JS Library http://www.nogray.com/new_site/ var _GET = new Array(); var _uri = location.href; var _temp_get_arr = _uri.substring(_uri.indexOf('?')+1, _uri.length).split("&"); var _temp_get_arr_1 = new Array(); for(_get_arr_i=0; _get_arr_i<_temp_get_arr.length; _get_arr_i++){ _temp_get_arr_1 = _temp_get_arr[_get_arr_i].split("="); _GET[decodeURI(_temp_get_arr_1[0])] = decodeURI(_temp_get_arr_1[1]); } delete _uri; delete _temp_get_arr; delete _temp_get_arr_1; function getMessage (where, user1, user2) { var message = prompt ('Quel message faut-il laisser ?', ''); if (message) { window.location = 'http://fr.wikipedia.org/w/index.php?title=' + _GET['title'] + '&action=edit&oldid=' + _GET['oldid'] + '&'+where+'=2&user1='+user1+'&user2='+user2+'&message='+message; } } addOnloadHook(function (){ if (location.href.match(/diff=/)) { // Get username of submitter var user1 = getElementsByClass('diff-otitle',null,'td'); user1 = user1[0].getElementsByTagName('a')[2].innerHTML; var user2 = getElementsByClass('diff-ntitle',null,'td'); user2 = user2[0].getElementsByTagName('a')[2].innerHTML; if (user2 == "défaire"){ user2 = getElementsByClass('diff-ntitle',null,'td'); user2 = user2[0].getElementsByTagName('a')[3].innerHTML; } document.getElementById('contentSub').innerHTML = '(<a href="http://fr.wikipedia.org/w/index.php?title=' + _GET['title'] + '&action=edit&oldid=' + _GET['oldid'] + '&revert=1&user1='+user1+'&user2='+user2+'">Annuler</a> / <a href="javascript:var message = getMessage(\'revert\', \''+user1+'\', \''+user2+'\');">Message</a>) (<a href="http://fr.wikipedia.org/w/index.php?title=' + _GET['title'] + '&action=edit&oldid=' + _GET['oldid'] + '&vandalism=1&user1='+user1+'&user2='+user2+'">Vandalisme</a> / <a href="javascript:var message = getMessage(\'vandalism\', \''+user1+'\', \''+user2+'\');">Message</a>) (Avertir : <a href="http://fr.wikipedia.org/w/index.php?title=User_talk:'+user2+'&action=edit§ion=new&warn=1">Test0</a> / <a href="http://fr.wikipedia.org/w/index.php?title=User_talk:'+user2+'&action=edit§ion=new&warn=2">Test1</a> / <a href="http://fr.wikipedia.org/w/index.php?title=User_talk:'+user2+'&action=edit§ion=new&warn=3">Test2</a> / <a href="http://fr.wikipedia.org/w/index.php?title=User_talk:'+user2+'&action=edit§ion=new&warn=4">Test3</a>)'; } else if (location.href.match(/revert=1/)) { document.getElementById('wpSummary').value = 'Annulation des modifications par [[Special:Contributions/'+_GET['user2']+'|'+_GET['user2']+']]'; document.getElementById('editform').submit(); } else if (location.href.match(/revert=2/)) { document.getElementById('wpSummary').value = 'Annulation des modifications par [[Special:Contributions/'+_GET['user2']+'|'+_GET['user2']+']] : '+_GET['message']; document.getElementById('editform').submit(); } else if (location.href.match(/vandalism=1/)) { document.getElementById('wpSummary').value = 'Révocation de vandalisme par [[Special:Contributions/'+_GET['user2']+'|'+_GET['user2']+']] ; retour à la version de [[Special:Contributions/'+_GET['user1']+'|'+_GET['user1']+']]'; document.getElementById('editform').submit(); } else if (location.href.match(/vandalism=2/)) { document.getElementById('wpSummary').value = 'Révocation de vandalisme par [[Special:Contributions/'+_GET['user2']+'|'+_GET['user2']+']] ; retour à la version de [[Special:Contributions/'+_GET['user1']+'|'+_GET['user1']+']] ('+_GET['message']+')'; document.getElementById('editform').submit(); } else if (location.href.match(/warn=1/)) { document.getElementById('wpSummary').value = 'Avertissement'; document.getElementById('wpTextbox1').value = '{{sub'+'st:test0}} ~~'+'~~'; document.getElementById('editform').submit(); } else if (location.href.match(/warn=2/)) { document.getElementById('wpSummary').value = 'Avertissement'; document.getElementById('wpTextbox1').value = '{{sub'+'st:test1}} ~~'+'~~'; document.getElementById('editform').submit(); } else if (location.href.match(/warn=3/)) { document.getElementById('wpSummary').value = 'Avertissement'; document.getElementById('wpTextbox1').value = '{{sub'+'st:test2}} ~~'+'~~'; document.getElementById('editform').submit(); } else if (location.href.match(/warn=4/)) { document.getElementById('wpSummary').value = 'Avertissement'; document.getElementById('wpTextbox1').value = '{{sub'+'st:test3}} ~~'+'~~'; document.getElementById('editform').submit(); } }); // //====================================fonctions communes function MygetObj(name) { if (document.getElementById) { this.obj = document.getElementById(name); } else if (document.all) { this.obj = document.all[name]; } else if (document.layers) { this.obj = document.layers[name]; } } //endGetObj function getHTTPObject() { var xmlhttp = false; /* on teste la présence des fonctions */ /*@cc_on @if (@_jscript_version >= 5) try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch (E) { xmlhttp = false; } } @else xmlhttp = false; @end @*/ /* fin du test */ /* on essaie de créer l'objet si ce n'est pas déjà fait */ if (!xmlhttp && typeof XMLHttpRequest != 'undefined') { try { xmlhttp = new XMLHttpRequest(); } catch (e) { xmlhttp = false; } } return xmlhttp; } function nouvelleBoite() { var l = document.getElementById("column-one"); if (l) { l.innerHTML = l.innerHTML + '<div class="portlet" id="p-nbx">' + ' <h5>Boîte perso</h5>' + ' <div class="pBody">' + ' <ul>' + ' <li><a href="http://fr.wikipedia.org/wiki/Wikipédia:Le_Bistro">Le Bistro</a></li>' + ' <li><a href="http://fr.wikipedia.org/wiki/Wikipédia:Le_Bistro_de_la_veille">Bistro de la veille</a></li>' + ' <li><a href="http://fr.wikipedia.org/wiki/Wikipédia:Respect_de_la_GFDL_à_vérifier/En_cours">Respect GFDL</a></li>' + ' <li><a href="http://fr.wikipedia.org/wiki/Wikipédia:Pages_soupçonnées_de_violation_de_copyright">COPYVIO</a></li>' + ' <li><a href="http://fr.wikipedia.org/wiki/Utilisateur:EDUCA33E/LiveRC">LiveRC</a></li>' + ' <li><a href="http://fr.wikipedia.org/w/index.php?title=special:Recentchanges&hideliu=1&days=30&limit=500&hideanons=1&hidemyself=1">RC par des IPs</a></li>' + ' <li><a href="http://fr.wikipedia.org/wiki/Special:Contributions/newbies">RC par des nouveaux</a></li>' + ' <li><a href="http://fr.wikipedia.org/wiki/Catégorie:Article_sans_source">Article sans source</a></li>' + ' <li><a href="http://fr.wikipedia.org/wiki/Utilisateur:AkeronBot/Suivi_exemple">Ménage Bac à sable</a></li>' + ' <li><a href="http://fr.wikipedia.org/wiki/Special:Linksearch">Rechercher des liens internet</a></li>' + ' </ul>' + ' </div>' + '</div> '; } } addLoadEvent(nouvelleBoite); /* 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'); name = a[0].innerHTML; 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="+escape(name)+"&dbname=frwiki_p'>"+ "<div id='EditCount' style='display:inline;'>" + "Editcount" + "</div></a></li>"; l.innerHTML = before + pitem + after ; } addLoadEvent(addECButton); /////////////////////////////////////////////////// // Navigation popups loadJs('Utilisateur:Spooky/JSScripts/Navigation popups'); // Navigation popups : Options popupOnEditSelection = false; popupDragging = false; popupFixDabs = true; popupImages = false; imagePopupsForImages = false; obtenir("FusionContribs"); obtenir("BlocageDeluxe"); function addLoadEvent(func) { if (window.addEventListener) window.addEventListener("load", func, false); else if (window.attachEvent) window.attachEvent("onload", func); } /*Personal links*/ addOnloadHook(function() {addPortletLink('p-personal','/wiki/Utilisateur:Bapti/Bo%C3%AEte_%C3%A0_outils','Boîte à outils','pt-links','Link title','!', document.getElementById('pt-preferences')); }); addOnloadHook(function() {addPortletLink('p-personal','/wiki/Utilisateur:Bapti/Liens','Liens','pt-links','Link title','!', document.getElementById('pt-preferences')); });