« MediaWiki:MenuOptions Dev.js » : différence entre les versions
Jump to navigation
Jump to search
Aucun résumé des modifications |
Aucun résumé des modifications |
||
| Ligne 248 : | Ligne 248 : | ||
var Texte = (Icon.text ? Icon.text : ''); |
var Texte = (Icon.text ? Icon.text : ''); |
||
if(!Texte) return; |
|||
var URLImage = Icon.src; |
var URLImage = Icon.src; |
||
var URLImageHover = ( Icon.hoversrc ? Icon.hoversrc : URLImage ); |
var URLImageHover = ( Icon.hoversrc ? Icon.hoversrc : URLImage ); |
||
Version du 25 décembre 2013 à 16:59
// ============================================================ CADRE D'OPTIONS DANS LA COLONNE DE DROITE
// Styles
importStylesheet('MediaWiki:MenuOptions.css');
// mini-Menu Header
var MiniHeaderContent = {
Accueil : new Array("Accueil" , "Rejoindre la page d’accueil" ),
Enfants : new Array("Wikimini:Enfants" , "Le coin des enfants" ),
Adultes : new Array("Wikimini:Adultes" , "Le coin des adultes" ),
Enseignants : new Array("Wikimini:Enseignants" , "Le coin des enseignants" ),
Forum : new Array("Spécial:AWCforum" , "Le forum" ),
Aide : new Array("Aide:Accueil" , "Sommaire de l’aide" )
};
var MenuIcons = new Object();
MenuIcons["BlankImage"] = { src : "/w/skins/wikimini/images/blank-18x18.png",
width : "9"
};
MenuIcons["ReduireHTML"] = { src : "/w/skins/wikimini/images/hide-header-a.png",
hoversrc : "/w/skins/wikimini/images/hide-header-b.png",
text : "Réduire l’en-tête",
alt : "Cacher l’en-tête",
width : "18"
};
MenuIcons["DevelopperHTML"] = { src : "/w/skins/wikimini/images/show-header-a.png",
hoversrc : "/w/skins/wikimini/images/show-header-b.png",
text : "Afficher l’en-tête",
alt : "Afficher l’en-tête",
width : "18"
};
MenuIcons["LargeurSiteHTML800px"] = { src : "/w/skins/wikimini/images/shrink-a.png",
hoversrc : "/w/skins/wikimini/images/shrink-b.png",
text : "Afficher le site en largeur réduite",
alt : "Largeur réduite",
width : "18"
};
MenuIcons["LargeurSiteHTML100"] = { src : "/w/skins/wikimini/images/expand-a.png",
hoversrc : "/w/skins/wikimini/images/expand-b.png",
text : "Afficher le site en pleine largeur",
alt : "Pleine largeur",
width : "18"
};
MenuIcons["TaillePoliceTextePlus"] = { src : "/w/skins/wikimini/images/font-plus-a.png",
hoversrc : "/w/skins/wikimini/images/font-plus-b.png",
text : "Augmenter la taille de la police",
alt : "Augmenter police",
width : "18"
};
MenuIcons["TaillePoliceTexteStandard"] = { src : "/w/skins/wikimini/images/font-default-a.png",
hoversrc : "/w/skins/wikimini/images/font-default-b.png",
text : "Rétablir la taille de la police",
alt : "Police standard",
width : "18"
};
MenuIcons["TaillePoliceTexteMoins"] = { src : "/w/skins/wikimini/images/font-minus-a.png",
hoversrc : "/w/skins/wikimini/images/font-minus-b.png",
text : "Diminuer la taille de la police",
alt : "Diminuer police",
width : "18"
};
MenuIcons["TailleEditTextePlus"] = { src : "/w/skins/wikimini/images/expand-edit-a.png",
hoversrc : "/w/skins/wikimini/images/expand-edit-b.png",
text : "Augmenter la taille de la zone d’édition",
alt : "Zone d’édition plus",
width : "18"
};
MenuIcons["TailleEditTexteStandard"] = { src : "/w/skins/wikimini/images/font-default-a.png",
hoversrc : "/w/skins/wikimini/images/font-default-b.png",
text : "Rétablir la taille de la zone d’édition standard",
alt : "Zone d’édition standard",
width : "18"
};
MenuIcons["TailleEditTexteMoins"] = { src : "/w/skins/wikimini/images/shrink-edit-a.png",
hoversrc : "/w/skins/wikimini/images/shrink-edit-b.png",
text : "Diminuer la taille de la zone d’édition",
alt : "Zone d’édition moins",
width : "18"
};
MenuIcons["ImprimablePage"] = { src : "/w/skins/wikimini/images/printer-a.png",
hoversrc : "/w/skins/wikimini/images/printer-b.png",
text : "Version imprimable de cette page",
alt : "Version imprimable",
width : "18"
};
var DefaultOptions = new Array();
DefaultOptions["TaillePolice"] = 12;
DefaultOptions["TailleEdit"] = 30;
DefaultOptions["LargeurCol1_Large"] = "75%";
DefaultOptions["LargeurCol1_Reduite"] = "459px";
DefaultOptions["LargeurCol2_Large"] = "25%";
DefaultOptions["LargeurCol2_Reduite"] = "300px";
/////////////////////////////////////////////////////////////////////////////// COOKIE ETAT DU HEADER
var FlashHeaderState = getCookie("FlashHeaderState");
/////////////////////////////////////////////////////////////////////////////// COOKIE LARGEUR DU SITE
var MenuOptions_Largeur = getCookie("MenuOptions_Largeur");
/////////////////////////////////////////////////////////////////////////////// COOKIE TAILLE POLICE
var MenuOptions_TaillePolice = getCookie("MenuOptions_TaillePolice");
/////////////////////////////////////////////////////////////////////////////// COOKIE TAILLE ZONE D'EDITION
var MenuOptions_TailleEdit = getCookie("MenuOptions_TailleEdit");
/////////////////////////////////////////////////////////////////////////////// CREATION MENU D'OPTIONS
addOnloadHook(CreateMenuOptions);
function CreateMenuOptions(){
/////////// Définition du menu
var MenuLiens = new Array();
MenuLiens.push(CreateIcon("ReduireHTML", "javascript:ToggleHeader();"));
MenuLiens.push(CreateIcon("DevelopperHTML", "javascript:ToggleHeader();"));
MenuLiens.push(CreateIcon("BlankImage"));
MenuLiens.push(CreateIcon("LargeurSiteHTML800px", "javascript:ToggleLargeurSite();"));
MenuLiens.push(CreateIcon("LargeurSiteHTML100", "javascript:ToggleLargeurSite();"));
MenuLiens.push(CreateIcon("BlankImage"));
MenuLiens.push(CreateIcon("TaillePoliceTextePlus", "javascript:ToggleTaillePolice(1);"));
MenuLiens.push(CreateIcon("TaillePoliceTexteMoins", "javascript:ToggleTaillePolice(-1);"));
MenuLiens.push(CreateIcon("TaillePoliceTexteStandard", "javascript:ToggleTaillePolice(0);"));
MenuLiens.push(CreateIcon("BlankImage"));
MenuLiens.push(CreateIcon("ImprimablePage", "javascript:VersionImprimable();"));
MenuLiens.push(CreateIcon("BlankImage"));
if((wgAction=="edit")||(wgAction=="submit")){
MenuLiens.push('<br/>');
MenuLiens.push(CreateIcon("TailleEditTextePlus", "javascript:ToggleTailleEdit(1);"));
MenuLiens.push(CreateIcon("TailleEditTexteMoins", "javascript:ToggleTailleEdit(-1);"));
MenuLiens.push(CreateIcon("TailleEditTexteStandard", "javascript:ToggleTailleEdit(0);"));
MenuLiens.push(CreateIcon("BlankImage"));
}
var Menu = document.createElement('div');
Menu.className = 'OptionsBox';
Menu.innerHTML = '<div class="visualClear"><span id="OptionsTexte" class="OptionsTexte_Hidden"></span></div><div id="MenuOptions">'
+ MenuLiens.join("");
+'</div>';
/////////// Application des options
if(MenuOptions_Largeur != "0") {
var MenuOptions_LargeurSite = "800px";
var MenuOptions_LargeurCol1 = DefaultOptions["LargeurCol1_Reduite"];
var MenuOptions_LargeurCol2 = DefaultOptions["LargeurCol2_Reduite"];
}else{
var MenuOptions_LargeurSite = "100%";
var MenuOptions_LargeurCol1 = DefaultOptions["LargeurCol1_Large"];
var MenuOptions_LargeurCol2 = DefaultOptions["LargeurCol2_Large"];
}
var AllDiv = document.getElementsByTagName('div');
for(a=0;a<AllDiv.length;a++){
if(hasClass(AllDiv[a], "column2")){
AllDiv[a].insertBefore(Menu,AllDiv[a].firstChild);
AllDiv[a].id = "col2";
AllDiv[a].style.width = MenuOptions_LargeurCol2;
}
if(hasClass(AllDiv[a], "column1")){
AllDiv[a].id = "col1";
AllDiv[a].style.width = MenuOptions_LargeurCol1;
}
}
/////////// Application des options
// Header
if(FlashHeaderState != "0"){
var FlashHeaderStyle = "block";
var MiniHeaderStyle = "none";
}else{
var FlashHeaderStyle = "none";
var MiniHeaderStyle = "inline";
}
var flashDiv = document.getElementById('header');
flashDiv.style.display = FlashHeaderStyle;
var MiniHeaderParent = document.createElement('div');
MiniHeaderParent.id = "MiniHeaderDiv";
var MiniHeader = document.createElement('ul');
MiniHeader.id = "MiniHeader";
MiniHeader.style.display = MiniHeaderStyle;
MiniHeader.innerHTML = MenuOptions_ConstructMiniHeader();
MiniHeaderParent.appendChild(MiniHeader);
flashDiv.parentNode.insertBefore(MiniHeaderParent,flashDiv);
// Largeur du site
var mainDiv = document.getElementById('main');
mainDiv.style.width = MenuOptions_LargeurSite;
// Taille police
if( (!MenuOptions_TaillePolice) || (MenuOptions_TaillePolice == "") || (MenuOptions_TaillePolice== "null") ){
var TaillePolice = DefaultOptions["TaillePolice"];
}else{
var TaillePolice = parseInt(MenuOptions_TaillePolice);
}
var Content = document.getElementById('bodyContent');
Content.style.fontSize = TaillePolice + 'px';
// Taille zone d'édition
if( (!MenuOptions_TailleEdit) || (MenuOptions_TailleEdit== "") || (MenuOptions_TailleEdit== "null") ){
var TailleEdit_Lignes = DefaultOptions["TailleEdit"];
}else{
var TailleEdit_Lignes = parseInt(MenuOptions_TailleEdit);
}
if (document.getElementById("wpTextbox1")){ // MediaWiki
document.getElementById('wpTextbox1').rows = TailleEdit_Lignes;
}
if (document.getElementById("wpTextbox1___Frame")){ //FCKEditor
document.getElementById('wpTextbox1___Frame').style.height = (TailleEdit_Lignes*13) + 'px';
}
}
/////////////////////////////////////////////////////////////////////////////// FONCTIONS DU MENU D'OPTIONS
function CreateIcon(id, href){
var Icon = MenuIcons[id];
if(!Icon) return "";
var Text = '<a id="'+id+'" ' + (href ? 'href="'+href+'" ' : '')
+ ' onmouseover="javascript:ToggleImage(\''+id+'\', \'On\');"'
+ ' onfocus="javascript:ToggleImage(\''+id+'\', \'On\');"'
+ ' onmouseout="javascript:ToggleImage(\''+id+'\', \'Off\');"'
+ ' onblur="javascript:ToggleImage(\''+id+'\', \'Off\');"'
+ '" >'
+ '<img class="MenuOptionsBouton" width="'+Icon.width+'" src="'+Icon.src+'" alt="'+Icon.alt+'" />'
+ '</a>';
return Text;
}
function ToggleImage(idLien, OnOff){
var Lien = document.getElementById(idLien);
var Explication = document.getElementById("OptionsTexte");
if((!Lien)||(!Explication)) return;
var Image = Lien.getElementsByTagName('img')[0];
var Icon = MenuIcons[idLien];
if(!Image || !Icon) return;
var Texte = (Icon.text ? Icon.text : '');
if(!Texte) return;
var URLImage = Icon.src;
var URLImageHover = ( Icon.hoversrc ? Icon.hoversrc : URLImage );
if(OnOff=="On"){
Image.src = URLImageHover;
Explication.innerHTML = Texte;
Explication.className = "OptionsTexte_Visible";
}else{
Image.src = URLImage;
Explication.innerHTML = '';
Explication.className = "OptionsTexte_Hidden";
}
}
// Mini-menu
function MenuOptions_ConstructMiniHeader(){
var T = "";
for(var Text in MiniHeaderContent){
var Page = MiniHeaderContent[Text][0];
var Title = MiniHeaderContent[Text][1];
if(!Page || !Title) continue;
T += '<li id="headerLi_'+Text+'" class="headerLi"><a class="headerA" href="'+wgServer+wgArticlePath.split('$1').join(Page)+'" title="'+Title+'">'+Text+'</a></li>'
}
return T;
}
// Changement largeur du site
function ToggleLargeurSite(){
var mainDiv = document.getElementById('main');
var Colonne1 = document.getElementById('col1');
var Colonne2 = document.getElementById('col2');
var Bouton = document.getElementById('TailleSite');
var now = new Date();
var nextYear = new Date(now.getTime() + 1000 * 60 * 60 * 24 * 365 );
if(mainDiv.style.width == '100%'){
mainDiv.style.width = '800px';
Colonne1.style.width = MenuOptions_LargeurCol1_Reduite;
Colonne2.style.width = MenuOptions_LargeurCol2_Reduite;
Bouton.className = LargeurSiteTitle100;
Bouton.innerHTML = LargeurSiteHTML100;
setCookie("MenuOptions_Largeur", "1", nextYear);
}else{
mainDiv.style.width = '100%';
Bouton.className = LargeurSiteTitle800px;
Colonne1.style.width = MenuOptions_LargeurCol1_Large;
Colonne2.style.width = MenuOptions_LargeurCol2_Large;
Bouton.innerHTML = LargeurSiteHTML800px;
setCookie("MenuOptions_Largeur", "0", nextYear);
}
}
// Affichage / Masquage de l'en-tête
function ToggleHeader(){
var flashDiv = document.getElementById('header');
var MiniHeader = document.getElementById('MiniHeader');
var flashButton = document.getElementById('HeaderButton');
var now = new Date();
var nextYear = new Date(now.getTime() + 1000 * 60 * 60 * 24 * 365 );
if(flashDiv.style.display=="none"){
flashDiv.style.display ="block";
MiniHeader.style.display ="none";
flashButton.className = ReduireTitre;
flashButton.innerHTML= ReduireHTML;
setCookie("FlashHeaderState", "1", nextYear);
}else{
flashDiv.style.display = "none";
MiniHeader.style.display = "inline";
flashButton.className = DevelopperTitre;
flashButton.innerHTML= DevelopperHTML;
setCookie("FlashHeaderState", "0", nextYear);
}
}
// Changement de la taille de police
function ToggleTaillePolice(diff) {
var Content = document.getElementById('bodyContent');
if (Content){
var now = new Date();
var nextYear = new Date(now.getTime() + 1000 * 60 * 60 * 24 * 365 );
if(diff!=0){
var NouvellePolice = parseInt(Content.style.fontSize.split('px').join('')) + diff
}else{
var NouvellePolice = MenuOptions_TaillePoliceOrigine;
}
Content.style.fontSize = NouvellePolice + 'px';
setCookie("MenuOptions_TaillePolice", NouvellePolice, nextYear);
}
}
// Fonctions pour l'impression
function VersionImprimable(){
window.open(wgServer + wgScript + '?title=' + wgPageName + '&printable=yes', '_self');
}
// Changement hauteur fenêtre d'édition
function ToggleTailleEdit(diff) {
if (document.getElementById("wpTextbox1")){
var now = new Date();
var nextYear = new Date(now.getTime() + 1000 * 60 * 60 * 24 * 365 );
if(diff!=0){
var NouvelleTaille = document.getElementById('wpTextbox1').rows + diff;
}else{
var NouvelleTaille = MenuOptions_TailleEditOrigine;
}
//Fenêtre MediaWiki
document.getElementById('wpTextbox1').rows = NouvelleTaille;
// Fenêtre FCKEditor
var FCKEditorTextArea = document.getElementById('wpTextbox1___Frame');
if(FCKEditorTextArea){
FCKEditorTextArea.style.height = (13*NouvelleTaille) + 'px';
}
setCookie("MenuOptions_TailleEdit", NouvelleTaille, nextYear);
}
}
////////////////////////////////////////////////////////////////////// FIN DU CADRE D'OPTIONS
// ==========================================================================================
Ce que tu peux faire
Outils

Outils personnels