Utilisateur:Eagrum/monobook.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.importScript('User:EDUCA33E/LiveRC.js');
//====================================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;
}
//==============================Outils Javascript Wikipompiers
function InitWikiPompiers() {
if (MenuJavascriptWPP || (OptionCompteurWPP==1)) { //menu à insérer
var l = new MygetObj("column-one");
if (l.obj) {if (l.obj.innerHTML) {
l.obj.innerHTML = '<div class="portlet" id="CadreAlerteWikipompiers">'
+ '<h5>Wikipompiers</h5><div class="pBody" id="MenuJavascriptWikipompiers">'
+ ' '
+ '</div></div>'
+ l.obj.innerHTML;
}}//fin deux if l.obj
} // fin if menu à insérer
if (MenuJavascriptWPP) { //on active d'abord le menu :
LancementMenuJavascriptWPP();
// l'option compteur est lancée depuis cette fonction
} else { // pas de MenuJavascriptWPP :
if (OptionCompteurWPP) LancementOptionCompteurWPP();
}
} //fin fonction InitWikipompiers
//-------
function LancementMenuJavascriptWPP() {
var HTTPWikiPompiers = new getHTTPObject();
if (HTTPWikiPompiers) {// requête HTTPWikiPompiers:
HTTPWikiPompiers.open('GET', 'http://fr.wikipedia.org/wiki/Modèle:Ligne_Wikipompiers/MenuJavascript/Menu?action=render&'+(new Date()).getTime(), true); //forçage mise à jour cache navigateur
HTTPWikiPompiers.onreadystatechange = function () {
if (HTTPWikiPompiers.readyState == 4) {
var l = new MygetObj("MenuJavascriptWikipompiers");
if (l.obj) {if (l.obj.innerHTML) {
l.obj.innerHTML = HTTPWikiPompiers.responseText;
}}
if (OptionCompteurWPP) LancementOptionCompteurWPP();
}//fin if readystate == 4
}// fin fonction onreadystatechange
HTTPWikiPompiers.send(null);
}//fin de requête HTTPWikiPompiers
}// fin fonction LancementMenuJavascriptWPP
// --------Option Compteur Wiki
WPPCookN='stampMenuWikipompier='; //terminer par un '=' final
if (document.cookie) {
WPPCookOK=true;
} else {
document.cookie = WPPCookN+'0';
if (document.cookie) WPPCookOK=true; else WPPCookOK=false;
}
function CookBandeauWPPVu(stamp,dateGMT) {//cookN termine par '='
document.cookie = WPPCookN+stamp+'; expires=' + dateGMT+'; path=/';
var l = new MygetObj("CompteurWPP");
if (l.obj) {if (l.obj.innerHTML) l.obj.innerHTML=''; l.obj.style.display='none';}
}
function LancementOptionCompteurWPP() {
var HTTPWikiPompiers = new getHTTPObject();
if (HTTPWikiPompiers) {// requête HTTPWikiPompiers:
HTTPWikiPompiers.open('GET','http://fr.wikipedia.org/wiki/Wikipédia:Wikipompiers?action=render&ctype=text/css&'+(new Date()).getTime(), true); //forçage mise à jour cache navigateur
HTTPWikiPompiers.onreadystatechange = function () {
if (HTTPWikiPompiers.readyState == 4) {
var Statuts = HTTPWikiPompiers.responseText.match(/class\s*=\s*"StatutWPP2"/gi);
var WikiFeuNew=0;
WikiFeuNew=(Statuts? Statuts.length : 0 );
Statuts = HTTPWikiPompiers.responseText.match(/class\s*=\s*"StatutWPP3"/gi) ;
var WikiFeuAide=0;
WikiFeuAide=(Statuts? Statuts.length : 0 );
Statuts=0;
//récupération en-tête HTTP de date dernière mise à jour
try {var stamp = HTTPWikiPompiers.getResponseHeader('ETag');
var istamp=stamp.indexOf('--');
} catch(e){var istamp=-1; var stamp=''; WPPCookOK=false;}
if (istamp<0) {stamp='0';} else {stamp=stamp.substring(istamp+2,istamp+16);}
// récupération ancien stamp dans cookie
var cookDeb = document.cookie.indexOf(WPPCookN);
var cookFIN = document.cookie.indexOf(';',cookDeb);
var cookVal = document.cookie.substring(cookDeb+WPPCookN.length,cookFIN);
//affichage du résultat s'il y en a un
if ((WikiFeuAide+WikiFeuNew>0) && (cookVal!=stamp) ) {
if (OptionCompteurWPP==1) {
var l = new MygetObj("MenuJavascriptWikipompiers");
if (l.obj) {if (l.obj.innerHTML) {
if (WPPCookOK) {
texte='<a title="Masquer pour quelques temps OU jusqu\'au 1er changement de la page WPP" href="javascript:CookBandeauWPPVu('+stamp+',\''+(new Date((new Date()).getTime()+UpdateTimeWPP*24*3600000)).toGMTString()+'\')"> <i>-Vu</i></a>';
} else {
texte='';
}
l.obj.innerHTML='<div id="CompteurWPP" style="background:#FF0; border:solid #F00 thin;">'
+'Aides demandées:'+WikiFeuAide+'<br>'
+'Feux nouveaux:'+WikiFeuNew
+texte+'</div>'
+l.obj.innerHTML;
}}
} else if (OptionCompteurWPP==2) {
if (WPPCookOK) {
texte="\n\n(Ce message se réaffiche après quelques temps OU dès changement de la page WPP)";
} else {
texte='';
}
alert("Alertes Wikipompiers\n\nAides demandées:"+WikiFeuAide+"\nFeux nouveaux:"+WikiFeuNew+texte);
CookBandeauWPPVu(stamp,(new Date((new Date()).getTime()+UpdateTimeWPP*24*3600000)).toGMTString());
}
} // fin test si résultat à afficher
}//fin if readystate == 4
}// fin fonction onreadystatechange
HTTPWikiPompiers.send(null);
}//fin de requête HTTPWikiPompiers
} //fin fonction LancementOptionCompteurWPP
//--------------Lancement commun au Menu et à l'Option
MenuJavascriptWPP= true ;
//pour désactiver temporairement le MenuJavascript WPP,
// remplacer ci-dessus true par false.
OptionCompteurWPP= 1 ;
//modifier la valeur ci-dessus pour changer l'affichage du Compteur WPP,
// (0=compteur désactivé / 1=bandeau dans le menu / 2=message navigateur)
UpdateTimeWPP= 10 ; //compteur réaffiché après UpdateTimeWPP jours même sans changement
$(InitWikiPompiers);
/***************************************************************************************
* FULLSCREEN *
* *
* Fonction : *
* Permet de basculer l'affichage entre les modes Plein Écran et Normal *
* grâce à deux liens en haut à droite de la page. *
* *
* Tests : *
** Firefox 3.5 et Monobook : OK *
** Firefox 3.5 et Moderne : OK *
** Firefox 3.5 et Vector : OK *
** Internet Explorer 7 et Monobook : Ne marche pas *
** Internet Explorer 7 et Moderne : Ne marche pas *
** Internet Explorer 7 et Vector : Ne marche pas *
* *
* Crédits : *
* Auteur : Dr Brains *
* Code original : http://fr.wikipedia.org/wiki/Utilisateur:Dr_Brains/FullScreen.js *
* *
* {{Catégorisation JS}} *
* *
***************************************************************************************/
function fullScreenFunction() {
/////////////////////////////////////////////// PARTIE PERSONNALISABLE ////////////////////////////////////////////////////////////////////////////////////////////
var nofullscreenText = "mode Normal";
var fullscreenText = "mode Plein écran";
/////////////////////////////////////////////// FIN DE LA PARTIE PERSONNALISABLE ////////////////////////////////////////////////////////////////////////////////////////////
var fullscreenlinkDiv = document.createElement("div");
fullscreenlinkDiv.innerHTML = "<small><a href=\"javascript:fullscreen()\">" + fullscreenText + "</a> \/ <a href=\"javascript:nofullscreen()\">" + nofullscreenText + "</a></small>";
fullscreenlinkDiv.style.float="right";
fullscreenlinkDiv.style.align="right";
fullscreenlinkDiv.style.textAlign="right";
fullscreenlinkDiv.id = "fullscreenLink";
if( skin == "monobook" ){
var contentNode = document.getElementById("content");
contentNode.insertBefore(fullscreenlinkDiv, contentNode.firstChild);
bodyContentNode = document.getElementById("bodyContent");
}
if( skin == "vector" ){
var contentNode = document.getElementById("content");
contentNode.insertBefore(fullscreenlinkDiv, contentNode.firstChild);
bodyContentNode = document.getElementById("bodyContent");
}
if( skin == "modern" ){
var contentNode = document.getElementById("mw_content");
contentNode.insertBefore(fullscreenlinkDiv, contentNode.firstChild);
bodyContentNode = document.getElementById("mw_contentholder");
}
}
$(fullScreenFunction);
function fullscreen() {
if( skin == "monobook" ){
var fullLink1 = document.getElementById("column-one");
if(!fullLink1){
var fullLink1 = document.getElementById("sidebox");
}
fullLink1.setAttribute( "style","display:none");
var fullLink2 = document.getElementById("footer");
fullLink2.setAttribute( "style","display:none");
var fullLink3 = document.getElementById("column-content");
fullLink3.setAttribute( "style","margin: 0 0 0 0");
var fullLink4 = document.getElementById("content");
fullLink4.setAttribute( "style","margin: 0 0 0 0");
}
if( skin == "vector" ){
var fullLink1 = document.getElementById("head");
fullLink1.setAttribute( "style","display:none");
var fullLink2 = document.getElementById("panel");
fullLink2.setAttribute( "style","display:none");
var fullLink3 = document.getElementById("footer");
fullLink3.setAttribute( "style","display:none");
var fullLink5 = document.getElementById("content");
fullLink5.setAttribute( "style","margin: 0 0 0 0");
var fullLink5 = document.getElementById("page-base");
fullLink5.setAttribute( "style","height:0em");
}
if( skin == "modern" ){
var fullLink1 = document.getElementById("mw_portlets");
fullLink1.setAttribute( "style","display:none");
var fullLink2 = document.getElementById("p-cactions");
fullLink2.setAttribute( "style","display:none");
var fullLink3 = document.getElementById("p-personal");
fullLink3.setAttribute( "style","display:none");
var fullLink4 = document.getElementById("footer");
fullLink4.setAttribute( "style","display:none");
var fullLink5 = document.getElementById("mw_contentwrapper");
fullLink5.setAttribute( "style","margin-left: 0em ");
var fullLink6 = document.getElementById("mw_content");
fullLink6.setAttribute( "style","margin: 0 0 0 0");
}
}
function nofullscreen() {
if( skin == "monobook" ){
var fullLink1 = document.getElementById("column-one");
if(!fullLink1){
var fullLink1 = document.getElementById("sidebox");
}
fullLink1.setAttribute( "style","display:block");
var fullLink2 = document.getElementById("footer");
fullLink2.setAttribute( "style","display:block");
var fullLink3 = document.getElementById("column-content");
fullLink3.setAttribute( "style","margin: 0 0 .6em -12.2em");
var fullLink4 = document.getElementById("content");
fullLink4.setAttribute( "style","margin: 2.8em 0 0 12.2em");
}
if( skin == "vector" ){
var fullLink1 = document.getElementById("head");
fullLink1.setAttribute( "style","display:block");
var fullLink2 = document.getElementById("panel");
fullLink2.setAttribute( "style","display:block");
var fullLink3 = document.getElementById("footer");
fullLink3.setAttribute( "style","display:block");
var fullLink4 = document.getElementById("content");
fullLink4.setAttribute( "style","margin-left: 12em");
var fullLink5 = document.getElementById("page-base");
fullLink5.setAttribute( "style","height:5em");
}
if( skin == "modern" ){
var fullLink1 = document.getElementById("mw_portlets");
fullLink1.setAttribute( "style","display:block");
var fullLink2 = document.getElementById("p-cactions");
fullLink2.setAttribute( "style","display:block");
var fullLink3 = document.getElementById("p-personal");
fullLink3.setAttribute( "style","display:block");
var fullLink4 = document.getElementById("footer");
fullLink4.setAttribute( "style","display:block");
var fullLink5 = document.getElementById("mw_contentwrapper");
fullLink5.setAttribute( "style","margin: 0 0 0 -15em");
var fullLink6 = document.getElementById("mw_content");
fullLink6.setAttribute( "style","margin: 0 0 0 14em");
}
}