Différences entre les versions de « MediaWiki:Monobook.js »

De Oniropædia
Aller à la navigationAller à la recherche
(modif pour les caractères spéciaux)
m (ajout boîtes déroulantes)
Ligne 1 : Ligne 1 :
 +
/* <pre> <nowiki> */
 +
 
//============================================================
 
//============================================================
 
//  
 
//  
Ligne 54 : Ligne 56 :
 
ta['ca-nstab-help'] = new Array('c','Voir la page d’aide');
 
ta['ca-nstab-help'] = new Array('c','Voir la page d’aide');
 
ta['ca-nstab-category'] = new Array('c','Voir la page de la catégorie');
 
ta['ca-nstab-category'] = new Array('c','Voir la page de la catégorie');
 +
 +
 +
//============================================================
 +
//
 +
// Boîtes déroulantes
 +
//
 +
//============================================================
 +
// BEGIN Dynamic Navigation Bars (experimantal)
 +
 +
// set up the words in your language
 +
var NavigationBarHide = '[ Enrouler ]';
 +
var NavigationBarShow = '[ Dérouler ]';
 +
 +
var NavigationBarShowDefault = 0;
 +
 +
// shows and hides content and picture (if available) of navigation bars
 +
// Parameters:
 +
//    indexNavigationBar: the index of navigation bar to be toggled
 +
function toggleNavigationBar(indexNavigationBar)
 +
{
 +
  var NavToggle = document.getElementById("NavToggle" + indexNavigationBar);
 +
  var NavFrame = document.getElementById("NavFrame" + indexNavigationBar);
 +
 +
  if (!NavFrame || !NavToggle) {
 +
      return false;
 +
  }
 +
 +
  // ajout par Dake
 +
  // permet de créer un titre en lieu et place du "Dérouler" grâce
 +
  // à l'attribut "title" du tag.
 +
  var ShowText;
 +
 +
  if (NavFrame.title == undefined || NavFrame.title.length == 0 ) {
 +
    ShowText = NavigationBarShow;
 +
  } else {
 +
    ShowText = NavFrame.title;
 +
  }
 +
 +
  // if shown now
 +
  if (NavToggle.firstChild.data == NavigationBarHide) {
 +
      for (
 +
              var NavChild = NavFrame.firstChild;
 +
              NavChild != null;
 +
              NavChild = NavChild.nextSibling
 +
          ) {
 +
          if (NavChild.className == 'NavPic') {
 +
              NavChild.style.display = 'none';
 +
          }
 +
          if (NavChild.className == 'NavContent') {
 +
              NavChild.style.display = 'none';
 +
          }
 +
          if (NavChild.className == 'NavToggle') {
 +
              NavChild.firstChild.data = ShowText;
 +
          }
 +
      }
 +
 +
  // if hidden now
 +
  } else if (NavToggle.firstChild.data == ShowText) {
 +
      for (
 +
              var NavChild = NavFrame.firstChild;
 +
              NavChild != null;
 +
              NavChild = NavChild.nextSibling
 +
          ) {
 +
          if (NavChild.className == 'NavPic') {
 +
              NavChild.style.display = 'block';
 +
          }
 +
          if (NavChild.className == 'NavContent') {
 +
              NavChild.style.display = 'block';
 +
          }
 +
          if (NavChild.className == 'NavToggle') {
 +
              NavChild.firstChild.data = NavigationBarHide;
 +
          }
 +
      }
 +
  }
 +
}
 +
 +
// adds show/hide-button to navigation bars
 +
function createNavigationBarToggleButton()
 +
{
 +
  var indexNavigationBar = 0;
 +
  // iterate over all < div >-elements
 +
  for(
 +
          var i=0;
 +
          NavFrame = document.getElementsByTagName("div")[i];
 +
          i++
 +
      ) {
 +
      // if found a navigation bar
 +
      if (NavFrame.className == "NavFrame") {
 +
 +
          indexNavigationBar++;
 +
          var NavToggle = document.createElement("a");
 +
          NavToggle.className = 'NavToggle';
 +
          NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar);
 +
          NavToggle.setAttribute('href', 'javascript:toggleNavigationBar(' + indexNavigationBar + ');');
 +
 +
          var NavToggleText = document.createTextNode(NavigationBarHide);
 +
          NavToggle.appendChild(NavToggleText);
 +
 +
          // add NavToggle-Button as first div-element
 +
          // in < div class="NavFrame" >
 +
          NavFrame.insertBefore(
 +
              NavToggle,
 +
              NavFrame.firstChild
 +
          );
 +
          NavFrame.setAttribute('id', 'NavFrame' + indexNavigationBar);
 +
      }
 +
  }
 +
  // if more Navigation Bars found than Default: hide all
 +
  if (NavigationBarShowDefault < indexNavigationBar) {
 +
      for(
 +
              var i=1;
 +
              i<=indexNavigationBar;
 +
              i++
 +
      ) {
 +
          toggleNavigationBar(i);
 +
      }
 +
  }
 +
 +
}
 +
 +
addOnloadHook(createNavigationBarToggleButton);
 +
 +
// END Dynamic Navigation Bars
  
  
Ligne 129 : Ligne 254 :
  
 
addOnloadHook(addCharSubsetMenu);
 
addOnloadHook(addCharSubsetMenu);
 +
 +
/* </nowiki> </pre> */

Version du 26 octobre 2006 à 19:37

/* <pre> <nowiki> */

//============================================================
// 
// Info-bulle et touches de raccourci
// 
//============================================================

var ta = new Object();
ta['pt-userpage'] = new Array('.','Ma page utilisateur');
ta['pt-anonuserpage'] = new Array('.','La page utilisateur de l’IP avec laquelle vous contribuez');
ta['pt-mytalk'] = new Array('n','Ma page de discussion');
ta['pt-anontalk'] = new Array('n','Discussion à propos des modifications depuis cette adresse IP');
ta['pt-preferences'] = new Array('','Mes préférences');
ta['pt-watchlist'] = new Array('l','liste des pages dont vous suivez les modifications.');
ta['pt-mycontris'] = new Array('y','Liste de mes contributions');
ta['pt-login'] = new Array('o','Vous êtes invité à vous identifier, mais ce n’est pas obligatoire.');
ta['pt-anonlogin'] = new Array('o','Vous êtes invité à vous identifier, mais ce n’est pas obligatoire.');
ta['pt-logout'] = new Array('o','Se déconnecter');
ta['ca-talk'] = new Array('t','Discussion à propos de l’article');
ta['ca-edit'] = new Array('e','Vous pouvez modifier cette page. Merci d’utiliser le bouton de prévisualisation avant de sauvegarder.');
ta['ca-addsection'] = new Array('+','Ajouter un commentaire à cette discussion.');
ta['ca-viewsource'] = new Array('e','Cette page est protégée. Vous pouvez voir sa source.');
ta['ca-history'] = new Array('h','Anciennes versions de cette page.');
ta['ca-protect'] = new Array('=','Protéger cette page');
ta['ca-delete'] = new Array('d','Supprimer cette page');
ta['ca-undelete'] = new Array('d','Restaurer les modifications effectuées sur cette page avant sa suppression');
ta['ca-move'] = new Array('m','Renommer cette page');
ta['ca-watch'] = new Array('w','Ajouter cette page à votre liste de suivi');
ta['ca-unwatch'] = new Array('w','Retirer cette page de votre liste de suivi');
ta['search'] = new Array('f','Chercher dans ce wiki');
ta['p-logo'] = new Array('','Page principale');
ta['n-mainpage'] = new Array('z','Visitez la page principale');
ta['n-portal'] = new Array('','À propos de ce projet, ce que vous pouvez faire, où trouver les choses');
ta['n-currentevents'] = new Array('','Trouver des informations sur les évènements actuels');
ta['n-recentchanges'] = new Array('r','Liste des changements récents sur le wiki');
ta['n-randompage'] = new Array('x','Charger une page aléatoire');
ta['n-help'] = new Array('','Aide');
ta['n-sitesupport'] = new Array('','Aidez-nous');
ta['t-whatlinkshere'] = new Array('j','Liste de tous les wikis qui lient vers cette page');
ta['t-recentchangeslinked'] = new Array('k','Changements récents dans les pages qui lient vers cette page');
ta['feed-rss'] = new Array('','Flux RSS pour cette page');
ta['feed-atom'] = new Array('','Flux Atom pour cette page');
ta['t-contributions'] = new Array('','Voir la liste de contributions de cet utilisateur');
ta['t-emailuser'] = new Array('','Envoyer un courriel à cet utilisateur');
ta['t-upload'] = new Array('u','Télécharger une image ou des fichiers');
ta['t-specialpages'] = new Array('q','Liste de toutes les pages spéciales');
ta['ca-nstab-main'] = new Array('c','Voir l’article');
ta['ca-nstab-user'] = new Array('c','Voir la page utilisateur');
ta['ca-nstab-media'] = new Array('c','Voir la page du média');
ta['ca-nstab-special'] = new Array('','Ceci est une page spéciale, vous ne pouvez la modifier.');
ta['ca-nstab-project'] = new Array('a','Voir la page du projet');
ta['ca-nstab-image'] = new Array('c','Voir la page de l’image');
ta['ca-nstab-mediawiki'] = new Array('c','Voir le message système');
ta['ca-nstab-template'] = new Array('c','Voir le modèle');
ta['ca-nstab-help'] = new Array('c','Voir la page d’aide');
ta['ca-nstab-category'] = new Array('c','Voir la page de la catégorie');


//============================================================
//
// Boîtes déroulantes
//
//============================================================
 // BEGIN Dynamic Navigation Bars (experimantal)
 
 // set up the words in your language
 var NavigationBarHide = '[ Enrouler ]';
 var NavigationBarShow = '[ Dérouler ]';
 
 var NavigationBarShowDefault = 0;
 
 // shows and hides content and picture (if available) of navigation bars
 // Parameters:
 //     indexNavigationBar: the index of navigation bar to be toggled
 function toggleNavigationBar(indexNavigationBar)
{
   var NavToggle = document.getElementById("NavToggle" + indexNavigationBar);
   var NavFrame = document.getElementById("NavFrame" + indexNavigationBar);

   if (!NavFrame || !NavToggle) {
       return false;
   }

   // ajout par Dake
   // permet de créer un titre en lieu et place du "Dérouler" grâce
   // à l'attribut "title" du tag.
   var ShowText;

   if (NavFrame.title == undefined || NavFrame.title.length == 0 ) {
    ShowText = NavigationBarShow;
   } else {
    ShowText = NavFrame.title;
   }

   // if shown now
   if (NavToggle.firstChild.data == NavigationBarHide) {
       for (
               var NavChild = NavFrame.firstChild;
               NavChild != null;
               NavChild = NavChild.nextSibling
           ) {
           if (NavChild.className == 'NavPic') {
               NavChild.style.display = 'none';
           }
           if (NavChild.className == 'NavContent') {
               NavChild.style.display = 'none';
           }
           if (NavChild.className == 'NavToggle') {
               NavChild.firstChild.data = ShowText;
           }
       }

   // if hidden now
   } else if (NavToggle.firstChild.data == ShowText) {
       for (
               var NavChild = NavFrame.firstChild;
               NavChild != null;
               NavChild = NavChild.nextSibling
           ) {
           if (NavChild.className == 'NavPic') {
               NavChild.style.display = 'block';
           }
           if (NavChild.className == 'NavContent') {
               NavChild.style.display = 'block';
           }
           if (NavChild.className == 'NavToggle') {
               NavChild.firstChild.data = NavigationBarHide;
           }
       }
   }
}

// adds show/hide-button to navigation bars
function createNavigationBarToggleButton()
{
   var indexNavigationBar = 0;
   // iterate over all < div >-elements
   for(
           var i=0;
           NavFrame = document.getElementsByTagName("div")[i];
           i++
       ) {
       // if found a navigation bar
       if (NavFrame.className == "NavFrame") {

           indexNavigationBar++;
           var NavToggle = document.createElement("a");
           NavToggle.className = 'NavToggle';
           NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar);
           NavToggle.setAttribute('href', 'javascript:toggleNavigationBar(' + indexNavigationBar + ');');

           var NavToggleText = document.createTextNode(NavigationBarHide);
           NavToggle.appendChild(NavToggleText);

           // add NavToggle-Button as first div-element 
           // in < div class="NavFrame" >
           NavFrame.insertBefore(
               NavToggle,
               NavFrame.firstChild
           );
           NavFrame.setAttribute('id', 'NavFrame' + indexNavigationBar);
       }
   }
   // if more Navigation Bars found than Default: hide all
   if (NavigationBarShowDefault < indexNavigationBar) {
       for(
               var i=1; 
               i<=indexNavigationBar; 
               i++
       ) {
           toggleNavigationBar(i);
       }
   }

}
 
addOnloadHook(createNavigationBarToggleButton);
 
 // END Dynamic Navigation Bars


//============================================================
//
// Caractères spéciaux
//
//============================================================

/**
 * Ajoutez le menu pour choisir des sous-ensembles de caractères spéciaux
 * @note	L'ordre de cette liste doit correspondre a celui de MediaWiki:Edittools !
 */
function addCharSubsetMenu() {
  var specialchars = document.getElementById('specialchars');

  if (specialchars) {
    var menu = "<select style=\"display:inline\" onChange=\"chooseCharSubset(selectedIndex)\">";
    menu += "<option>Wiki</option>";
    menu += "<option>Mathématiques</option>";
    menu += "<option>API</option>";
    menu += "<option>Latin/Romain</option>";
    menu += "<option>Grec</option>";
    menu += "<option>Cyrillique</option>";
    menu += "<option>AHD</option>";
    menu += "<option>Allemand</option>";
    menu += "<option>Arabe</option>";
    menu += "<option>Catalan</option>";
    menu += "<option>Croate</option>";
    menu += "<option>Espagnol</option>";
    menu += "<option>Espéranto</option>";
    menu += "<option>Estonien</option>";
    menu += "<option>Gallois</option>";
    menu += "<option>Hawaien</option>";
    menu += "<option>Hébreu</option>";
    menu += "<option>Hiéroglyphe</option>";
    menu += "<option>Hollandais</option>";
    menu += "<option>Hongrois</option>";
    menu += "<option>Indo-européen</option>";
    menu += "<option>Irlandais</option>";
    menu += "<option>Islandais</option>";
    menu += "<option>Italien</option>";
    menu += "<option>Letton</option>";
    menu += "<option>Lituanien</option>";
    menu += "<option>Maltais</option>";
    menu += "<option>Navajo & Apache</option>";
    menu += "<option>Pinyin</option>";
    menu += "<option>Polonais</option>";
    menu += "<option>Portugais</option>";
    menu += "<option>Rōmaji</option>";
    menu += "<option>Roumain</option>";
    menu += "<option>Scandinave</option>";
    menu += "<option>Serbe</option>";
    menu += "<option>Tchèque</option>";
    menu += "<option>Turc</option>";
    menu += "<option>Vieil anglais</option>";
    menu += "<option>Vietnamien</option>";
    menu += "<option>Yiddish</option>";
    menu += "</select>";
    specialchars.innerHTML = menu + specialchars.innerHTML;

    /* default subset - try to use a cookie some day */
    chooseCharSubset(0);
  }
}

/* select subsection of special characters */
function chooseCharSubset(s) {
  var l = document.getElementById('specialchars').getElementsByTagName('p');
  for (var i = 0; i < l.length ; i++) {
    l[i].style.display = i == s ? 'inline' : 'none';
    l[i].style.visibility = i == s ? 'visible' : 'hidden';
  }
}

addOnloadHook(addCharSubsetMenu);

/* </nowiki> </pre> */