Utilisateur:Daniel-pierre/monobook.js
De Mystpedia.
(Différences entre les versions)
| Ligne 1 : | Ligne 1 : | ||
| - | /* | + | /** |
| + | * Pour [[Modèle:Boîte déroulante]] | ||
| + | */ | ||
| + | var NavigationBarShowDefault = 0; | ||
| + | |||
| + | function toggleNavigationBar(indexNavigationBar) { | ||
| + | var NavToggle = document.getElementById("NavToggle" + indexNavigationBar); | ||
| + | var NavFrame = document.getElementById("NavFrame" + indexNavigationBar); | ||
| + | |||
| + | if (!NavFrame || !NavToggle) return; | ||
| + | |||
| + | // 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 = expandCaption; | ||
| + | } else { | ||
| + | ShowText = NavFrame.title; | ||
| + | } | ||
| + | |||
| + | // if shown now | ||
| + | if (NavToggle.firstChild.data == collapseCaption) { | ||
| + | for ( var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling ) { | ||
| + | if (hasClass(NavChild, 'NavPic')) NavChild.style.display = 'none'; | ||
| + | if (hasClass(NavChild, 'NavContent')) NavChild.style.display = 'none'; | ||
| + | if (hasClass(NavChild, '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 (hasClass(NavChild, 'NavPic')) NavChild.style.display = 'block'; | ||
| + | if (hasClass(NavChild, 'NavContent')) NavChild.style.display = 'block'; | ||
| + | if (hasClass(NavChild, 'NavToggle')) NavChild.firstChild.data = collapseCaption; | ||
| + | } | ||
| + | } | ||
| + | } | ||
| + | |||
| + | // adds show/hide-button to navigation bars | ||
| + | function createNavigationBarToggleButton() { | ||
| + | var indexNavigationBar = 0; | ||
| + | var NavFrame; | ||
| + | // iterate over all < div >-elements | ||
| + | for( var i=0; NavFrame = document.getElementsByTagName("div")[i]; i++ ) { | ||
| + | // if found a navigation bar | ||
| + | if (hasClass(NavFrame, "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(collapseCaption); | ||
| + | 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); | ||
| + | |||
| + | /* ------------------------------------------- */ | ||
| + | |||
| + | /* | ||
* OngletPurge | * OngletPurge | ||
* | * | ||
Version du 10 décembre 2007 à 22:43
/**
* Pour [[Modèle:Boîte déroulante]]
*/
var NavigationBarShowDefault = 0;
function toggleNavigationBar(indexNavigationBar) {
var NavToggle = document.getElementById("NavToggle" + indexNavigationBar);
var NavFrame = document.getElementById("NavFrame" + indexNavigationBar);
if (!NavFrame || !NavToggle) return;
// 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 = expandCaption;
} else {
ShowText = NavFrame.title;
}
// if shown now
if (NavToggle.firstChild.data == collapseCaption) {
for ( var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling ) {
if (hasClass(NavChild, 'NavPic')) NavChild.style.display = 'none';
if (hasClass(NavChild, 'NavContent')) NavChild.style.display = 'none';
if (hasClass(NavChild, '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 (hasClass(NavChild, 'NavPic')) NavChild.style.display = 'block';
if (hasClass(NavChild, 'NavContent')) NavChild.style.display = 'block';
if (hasClass(NavChild, 'NavToggle')) NavChild.firstChild.data = collapseCaption;
}
}
}
// adds show/hide-button to navigation bars
function createNavigationBarToggleButton() {
var indexNavigationBar = 0;
var NavFrame;
// iterate over all < div >-elements
for( var i=0; NavFrame = document.getElementsByTagName("div")[i]; i++ ) {
// if found a navigation bar
if (hasClass(NavFrame, "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(collapseCaption);
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);
/* ------------------------------------------- */
/*
* OngletPurge
*
* Onglet permettant de réaliser une purge du cache
*
* Auteur : ??
* Dernière révision : 7 juin 2007
* [[Catégorie:MediaWiki:Fonction Monobook en JavaScript]]
*/
function OngletPurge() {
if (wgNamespaceNumber >= 0 && !document.getElementById('toolbar')) {
addPortletLink('p-cactions', wgScriptPath + '/index.php?title=' + wgPageName + '&action=purge', 'purger', 'ca-purge', 'purger le cache de la page', 'p');
}
}
addOnloadHook(OngletPurge);
