Inscris-toi pour écrire dans l'encyclopédie Wikimini!

MediaWiki:Common.js

Version datée du 30 septembre 2009 à 17:19 par Dodoïste (Lui parler | contributions) (Nouvelle page : →‎Tout JavaScript ici sera chargé avec chaque page accédée par n’importe quel utilisateur. : // remove original createCollapseButtons functions from onload hook for demo var c...)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Jump to navigation Jump to search

Note : après avoir enregistré tes préférences, tu devras forcer son rechargement complet en ignorant le contenu actuel du cache de ton explorateur pour voir les changements : Mozilla / Firefox / Konqueror / Safari : maintiens la touche Majuscule (Shift) en cliquant le bouton Actualiser (Reload,) ou presse Maj-Ctrl-R (Maj-Cmd-R sur Apple Mac) ; Internet Explorer / Opera : maintiens la touche Ctrl en cliquant le bouton Actualiser ou presse Ctrl-F5.

/* Tout JavaScript ici sera chargé avec chaque page accédée par n’importe quel utilisateur. */
// remove original createCollapseButtons functions from onload hook for demo
var createCollapseButtonsOrig = createCollapseButtons;
for (var i = 0; i < onloadFuncts.length; i ++) {
  if (onloadFuncts[i] == createCollapseButtonsOrig) {
    onloadFuncts.splice(i, 1);
  }
}
addOnloadHook(
    function() {
      for (var i = 0; i < onloadFuncts.length; i ++) {
        if (onloadFuncts[i] == createCollapseButtonsOrig) {
           onloadFuncts.splice(i, 1);
        }
      }
    }
);
 
 
/** Collapsible tables *********************************************************
 *
 *  Description: Allows tables to be collapsed, showing only the header. See
 *               [[Wikipedia:NavFrame]].
 *  Maintainers: [[User:R. Koot]]
 *  Changed for better usability by [[User:Cacycle]]
 */
 
 
var autoCollapseTest = 2;
var expandCaptionTest = '<a class="collapseButtonContent"><span class="collapseButtonShow">&nbsp;</span>afficher</a>';
var collapseCaptionTest = '<a class="collapseButtonContent"><span class="collapseButtonHide">&nbsp;</span>masquer</a>';
var expandTitle = 'Afficher le contenu masqué';
var collapseTitle = 'Masquer le contenu';
 
// detect MS-IE < 7
if (window.showModalDialog && window.clipboardData && window.createPopup) {
 
// ignore MS-IE >= 7 in compatibility mode
  var agent = navigator.userAgent.match(/(MSIE)\W+(\d+\.\d+)/i);
  if ( (agent == null) || (parseFloat(agent[2]) < 7) ) {
    expandCaptionTest = '<a class="collapseButtonContent"><span class="collapseButtonShowIE6">&nbsp;</span>afficher</a>';
    collapseCaptionTest = '<a class="collapseButtonContent"><span class="collapseButtonHideIE6">&nbsp;</span>masquer</a>';
  }
}
 
 
collapseTableTest = function( tableIndex )
{
    var Button = document.getElementById( "collapseButton" + tableIndex );
    var Table = document.getElementById( "collapsibleTable" + tableIndex );
 
    if ( !Table || !Button ) {
        return false;
    }
 
    var Rows = Table.rows;
 
    if ( Button.title == collapseTitle ) {
        for ( var i = 1; i < Rows.length; i++ ) {
            Rows[i].style.display = "none";
        }
        Button.innerHTML = expandCaptionTest;
        Button.title = expandTitle;
    } else {
        for ( var i = 1; i < Rows.length; i++ ) {
            Rows[i].style.display = Rows[0].style.display;
        }
        Button.innerHTML = collapseCaptionTest;
        Button.title = collapseTitle;
    }
    window.getSelection().removeAllRanges();
}
 
function createCollapseButtonsTest()
{
    var tableIndex = 0;
    var NavigationBoxes = new Object();
    var Tables = document.getElementsByTagName( "table" );
 
    for ( var i = 0; i < Tables.length; i++ ) {
        if ( hasClass( Tables[i], "collapsible" ) ) {
 
// only add button and increment count if there is a header row to work with
            var HeaderRow = Tables[i].getElementsByTagName( "tr" )[0];
            if (!HeaderRow) continue;
            var Header = HeaderRow.getElementsByTagName( "th" )[0];
            if (!Header) continue;
 
// insert space-balancing empty span left of the title
            var span = document.createElement('span');
            span.className = 'collapseButtonBalance';
            Header.insertBefore(span, Header.lastChild);
 
            NavigationBoxes[ tableIndex ] = Tables[i];
            Tables[i].setAttribute( "id", "collapsibleTable" + tableIndex );
 
// Styles are declared in Common.css
            Header.innerHTML += '<span id="collapseButton' + tableIndex + '" class="collapseButtonTest" onclick="javascript:collapseTableTest(' + tableIndex + ')" title="' + collapseTitle + '">' + collapseCaptionTest + '</span>';
            tableIndex++;
        }
    }
 
    for ( var i = 0;  i < tableIndex; i++ ) {
        if ( hasClass( NavigationBoxes[i], "collapsed" ) || ( tableIndex >= autoCollapseTest && hasClass( NavigationBoxes[i], "autocollapse" ) ) ) {
            collapseTableTest( i );
        }
        else if ( hasClass( NavigationBoxes[i], "innercollapse" ) ) {
            var element = NavigationBoxes[i];
            while (element = element.parentNode) {
                if ( hasClass( element, "outercollapse" ) ) {
                    collapseTableTest ( i );
                    break;
                }
            }
        }
    }
}
 
addOnloadHook(createCollapseButtonsTest);
Wikiboo Outils personnels