« MediaWiki:Monobook.js » : différence entre les versions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
Ligne 1 : | Ligne 1 : | ||
/* Tout JavaScript ici sera chargé avec les pages accédées par les utilisateurs de l’habillage MonoBook uniquement. */ | /* Tout JavaScript ici sera chargé avec les pages accédées par les utilisateurs de l’habillage MonoBook uniquement. */ | ||
/** | |||
* Pour [[Modèle:Boîte déroulante]] | |||
*/ | |||
var BoiteDeroulante_Enrouler = '[masquer]'; | |||
var BoiteDeroulante_Derouler = '[afficher]'; | |||
var BoiteDeroulante_max = 0; | |||
var BoiteDeroulante_index = -1; | |||
function BoiteDeroulante_toggle(indexBoiteDeroulante){ | |||
var NavFrame = document.getElementById("NavFrame" + indexBoiteDeroulante); | |||
var NavToggle = document.getElementById("NavToggle" + indexBoiteDeroulante); | |||
var CaptionContainer = document.getElementById("NavCaption" + indexBoiteDeroulante); | |||
if (!NavFrame || !NavToggle || !CaptionContainer) return; | |||
var caption = new Array(); | |||
var CaptionSpans = CaptionContainer.getElementsByTagName('span'); | |||
caption[0] = CaptionSpans[0].innerHTML; | |||
caption[1] = CaptionSpans[1].innerHTML; | |||
var Contents = NavFrame.getElementsByTagName('div'); | |||
if (NavToggle.innerHTML == caption[1]) { | |||
NavToggle.innerHTML = caption[0]; | |||
for(var a=0,m=Contents.length;a<m;a++){ | |||
if(hasClass(Contents[a], "NavContent")){ | |||
Contents[a].style.display = 'none'; | |||
return; | |||
} | |||
} | |||
}else{ | |||
NavToggle.innerHTML = caption[1]; | |||
for(var a=0,m=Contents.length;a<m;a++){ | |||
if(hasClass(Contents[a], "NavContent")){ | |||
Contents[a].style.display = 'block'; | |||
return; | |||
} | |||
} | |||
} | |||
} | |||
function BoiteDeroulante(Element){ | |||
if(!Element) Element = document; | |||
var NavFrameCount = -1; | |||
var NavFrames = Element.getElementsByTagName("div"); | |||
for(var i=0,l=NavFrames.length;i<l;i++){ | |||
if(hasClass(NavFrames[i], "NavFrame")){ | |||
var NavFrame = NavFrames[i]; | |||
NavFrameCount++; | |||
BoiteDeroulante_index++; | |||
if (NavFrame.title && NavFrame.title.indexOf("/")!=-1) { | |||
var Enrouler = NavFrame.title.HTMLize().split("/")[1]; | |||
var Derouler = NavFrame.title.HTMLize().split("/")[0]; | |||
}else{ | |||
var Enrouler = BoiteDeroulante_Enrouler; | |||
var Derouler = BoiteDeroulante_Derouler; | |||
} | |||
NavFrame.title=''; | |||
var CaptionContainer = document.createElement('span'); | |||
CaptionContainer.id = 'NavCaption' + BoiteDeroulante_index; | |||
CaptionContainer.style.display = "none"; | |||
CaptionContainer.innerHTML = '<span>' + Derouler + '</span><span>' + Enrouler + '</span>'; | |||
NavFrame.appendChild(CaptionContainer); | |||
var NavToggle = document.createElement("a"); | |||
NavToggle.className = 'NavToggle'; | |||
NavToggle.id = 'NavToggle' + BoiteDeroulante_index; | |||
NavToggle.href = 'javascript:BoiteDeroulante_toggle(' + BoiteDeroulante_index + ');'; | |||
var NavToggleText = document.createTextNode(Enrouler); | |||
NavToggle.appendChild(NavToggleText); | |||
NavFrame.insertBefore( NavToggle, NavFrame.firstChild ); | |||
NavFrame.id = 'NavFrame' + BoiteDeroulante_index; | |||
if (BoiteDeroulante_max <= NavFrameCount) { | |||
BoiteDeroulante_toggle(BoiteDeroulante_index); | |||
} | |||
} | |||
} | |||
} | |||
addOnloadHook(BoiteDeroulante); | |||
/** | /** |
Version du 29 janvier 2013 à 17:26
/* Tout JavaScript ici sera chargé avec les pages accédées par les utilisateurs de l’habillage MonoBook uniquement. */
/**
* Pour [[Modèle:Boîte déroulante]]
*/
var BoiteDeroulante_Enrouler = '[masquer]';
var BoiteDeroulante_Derouler = '[afficher]';
var BoiteDeroulante_max = 0;
var BoiteDeroulante_index = -1;
function BoiteDeroulante_toggle(indexBoiteDeroulante){
var NavFrame = document.getElementById("NavFrame" + indexBoiteDeroulante);
var NavToggle = document.getElementById("NavToggle" + indexBoiteDeroulante);
var CaptionContainer = document.getElementById("NavCaption" + indexBoiteDeroulante);
if (!NavFrame || !NavToggle || !CaptionContainer) return;
var caption = new Array();
var CaptionSpans = CaptionContainer.getElementsByTagName('span');
caption[0] = CaptionSpans[0].innerHTML;
caption[1] = CaptionSpans[1].innerHTML;
var Contents = NavFrame.getElementsByTagName('div');
if (NavToggle.innerHTML == caption[1]) {
NavToggle.innerHTML = caption[0];
for(var a=0,m=Contents.length;a<m;a++){
if(hasClass(Contents[a], "NavContent")){
Contents[a].style.display = 'none';
return;
}
}
}else{
NavToggle.innerHTML = caption[1];
for(var a=0,m=Contents.length;a<m;a++){
if(hasClass(Contents[a], "NavContent")){
Contents[a].style.display = 'block';
return;
}
}
}
}
function BoiteDeroulante(Element){
if(!Element) Element = document;
var NavFrameCount = -1;
var NavFrames = Element.getElementsByTagName("div");
for(var i=0,l=NavFrames.length;i<l;i++){
if(hasClass(NavFrames[i], "NavFrame")){
var NavFrame = NavFrames[i];
NavFrameCount++;
BoiteDeroulante_index++;
if (NavFrame.title && NavFrame.title.indexOf("/")!=-1) {
var Enrouler = NavFrame.title.HTMLize().split("/")[1];
var Derouler = NavFrame.title.HTMLize().split("/")[0];
}else{
var Enrouler = BoiteDeroulante_Enrouler;
var Derouler = BoiteDeroulante_Derouler;
}
NavFrame.title='';
var CaptionContainer = document.createElement('span');
CaptionContainer.id = 'NavCaption' + BoiteDeroulante_index;
CaptionContainer.style.display = "none";
CaptionContainer.innerHTML = '<span>' + Derouler + '</span><span>' + Enrouler + '</span>';
NavFrame.appendChild(CaptionContainer);
var NavToggle = document.createElement("a");
NavToggle.className = 'NavToggle';
NavToggle.id = 'NavToggle' + BoiteDeroulante_index;
NavToggle.href = 'javascript:BoiteDeroulante_toggle(' + BoiteDeroulante_index + ');';
var NavToggleText = document.createTextNode(Enrouler);
NavToggle.appendChild(NavToggleText);
NavFrame.insertBefore( NavToggle, NavFrame.firstChild );
NavFrame.id = 'NavFrame' + BoiteDeroulante_index;
if (BoiteDeroulante_max <= NavFrameCount) {
BoiteDeroulante_toggle(BoiteDeroulante_index);
}
}
}
}
addOnloadHook(BoiteDeroulante);
/**
* Ajouter un bouton à la fin de la barre d'outils
*/
function addCustomButton(imageFile, speedTip, tagOpen, tagClose, sampleText, imageId) {
mwCustomEditButtons[mwCustomEditButtons.length] =
{"imageId": imageId,
"imageFile": imageFile,
"speedTip": speedTip,
"tagOpen": tagOpen,
"tagClose": tagClose,
"sampleText": sampleText};
}
/**
* Insertion de nouveaux boutons dans la barre d'outil
*/
addCustomButton('http://upload.wikimedia.org/wikipedia/commons/0/04/Button_array.png',
'Tableau',
'{|\n|-\n|\n|\n|}',
'',
'',
'mw-editbutton-array');
addCustomButton('http://upload.wikimedia.org/wikipedia/commons/c/c9/Button_strike.png',
'Rayer',
'<s>',
'</s>',
'',
'mw-editbutton-strike');
addCustomButton('http://upload.wikimedia.org/wikipedia/commons/4/47/Button_redir.png',
'Redirection',
'#REDIRECT [[',
']]',
'nom de la destination',
'mw-editbutton-redir');
addCustomButton('http://upload.wikimedia.org/wikipedia/commons/b/b4/Button_category03.png',
'Catégorie',
'[[Catégorie:',
']]',
'nom de la catégorie',
'mw-editbutton-category');
addCustomButton('http://upload.wikimedia.org/wikipedia/commons/c/c4/Button_ref.png',
'Référence',
'<ref>',
'</ref>',
'référence, citation ou lien',
'mw-editbutton-ref');
addCustomButton('http://upload.wikimedia.org/wikipedia/commons/6/64/Buttonrefvs8.png',
'Index des références',
'== Notes et références ==\n<references />',
'',
'',
'mw-editbutton-references');
addCustomButton('http://upload.wikimedia.org/wikipedia/commons/3/38/Button_plume.png',
'Insérer une adresse mail',
'[mailto:exemple@exemple.fr Le texte à afficher]',
'',
'',
'mw-editbutton-plume');