<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>http://wiki.sage.fr/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3ACommun.js</id>
	<title>MediaWiki:Commun.js - Historique des versions</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.sage.fr/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3ACommun.js"/>
	<link rel="alternate" type="text/html" href="http://wiki.sage.fr/index.php?title=MediaWiki:Commun.js&amp;action=history"/>
	<updated>2026-04-18T17:51:42Z</updated>
	<subtitle>Historique des versions pour cette page sur le wiki</subtitle>
	<generator>MediaWiki 1.41.1</generator>
	<entry>
		<id>http://wiki.sage.fr/index.php?title=MediaWiki:Commun.js&amp;diff=453&amp;oldid=prev</id>
		<title>Syfre : Nouvelle page : /* Any JavaScript here will be loaded for all users on every page load. */   if ( /^MediaWiki(\/.+)?$/.test( wgPageName ) &amp;&amp; wgAction == &quot;view&quot; ) {     addOnloadHook(function(){     ...</title>
		<link rel="alternate" type="text/html" href="http://wiki.sage.fr/index.php?title=MediaWiki:Commun.js&amp;diff=453&amp;oldid=prev"/>
		<updated>2009-06-09T09:21:25Z</updated>

		<summary type="html">&lt;p&gt;Nouvelle page : &lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Any JavaScript here will be loaded for all users on every page load. : &lt;/span&gt;   if ( /^MediaWiki(\/.+)?$/.test( wgPageName ) &amp;amp;&amp;amp; wgAction == &amp;quot;view&amp;quot; ) {     addOnloadHook(function(){     ...&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nouvelle page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;/* Any JavaScript here will be loaded for all users on every page load. */&lt;br /&gt;
 &lt;br /&gt;
if ( /^MediaWiki(\/.+)?$/.test( wgPageName ) &amp;amp;&amp;amp; wgAction == &amp;quot;view&amp;quot; ) {&lt;br /&gt;
    addOnloadHook(function(){&lt;br /&gt;
        document.body.className+=&amp;quot; mainpage&amp;quot;;&lt;br /&gt;
        document.write(&amp;#039;&amp;lt;style type=&amp;quot;text/css&amp;quot;&amp;gt;/*&amp;lt;![CDATA[*/ #lastmod, #siteSub, h1.firstHeading { display: none !important; } #content { padding-top: 1em; }/*]]&amp;gt;*/&amp;lt;/style&amp;gt;&amp;#039;); /*REMOVE THIS LINE AFTER 22/01/2009 */&lt;br /&gt;
    })&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
/* Force preview for anons */&lt;br /&gt;
/* by Marc Mongenet, 2006, fr.wikipedia */&lt;br /&gt;
 &lt;br /&gt;
function forcePreview() {&lt;br /&gt;
  if (wgUserName != null || wgAction != &amp;quot;edit&amp;quot;) return;&lt;br /&gt;
  saveButton = document.getElementById(&amp;quot;wpSave&amp;quot;);&lt;br /&gt;
  if (!saveButton) return;&lt;br /&gt;
  saveButton.disabled = true;&lt;br /&gt;
  saveButton.value = &amp;quot;Save page (use preview first)&amp;quot;;&lt;br /&gt;
  saveButton.style.fontWeight = &amp;quot;normal&amp;quot;;&lt;br /&gt;
  document.getElementById(&amp;quot;wpPreview&amp;quot;).style.fontWeight = &amp;quot;bold&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
addOnloadHook(forcePreview);&lt;br /&gt;
 &lt;br /&gt;
/* End of forcePreview */&lt;br /&gt;
 &lt;br /&gt;
/** includePage ************&lt;br /&gt;
 * force the loading of another JavaScript file&lt;br /&gt;
 *&lt;br /&gt;
 * Maintainer: [[Commons:User:Dschwen]]&lt;br /&gt;
 */&lt;br /&gt;
 &lt;br /&gt;
function includePage( name )&lt;br /&gt;
{&lt;br /&gt;
 document.write(&amp;#039;&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;&amp;#039; + wgScript + &amp;#039;?title=&amp;#039;&lt;br /&gt;
  + name &lt;br /&gt;
  + &amp;#039;&amp;amp;action=raw&amp;amp;ctype=text/javascript&amp;quot;&amp;gt;&amp;lt;\/script&amp;gt;&amp;#039; &lt;br /&gt;
 );&lt;br /&gt;
}&lt;br /&gt;
/* End of includePage */&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
/* Including extra .js pages */ &lt;br /&gt;
 &lt;br /&gt;
// switches for scripts&lt;br /&gt;
// TODO: migrate to JSConfig&lt;br /&gt;
// var load_extratabs = true;&lt;br /&gt;
var load_edittools = true;&lt;br /&gt;
 &lt;br /&gt;
// extra drop down menu on editing for adding special characters&lt;br /&gt;
includePage( &amp;#039;MediaWiki:Edittools.js&amp;#039; );&lt;br /&gt;
 &lt;br /&gt;
//Editpage scripts&lt;br /&gt;
if (wgAction==&amp;#039;edit&amp;#039; || wgAction == &amp;#039;submit&amp;#039;)&lt;br /&gt;
  importScript(&amp;#039;MediaWiki:Editpage.js&amp;#039;)&lt;br /&gt;
 &lt;br /&gt;
/* End of extra pages */&lt;br /&gt;
 &lt;br /&gt;
/* Test if an element has a certain class **************************************&lt;br /&gt;
 *&lt;br /&gt;
 * From English Wikipedia, 2008-09-15&lt;br /&gt;
 *&lt;br /&gt;
 * Description: Uses regular expressions and caching for better performance.&lt;br /&gt;
 * Maintainers: [[User:Mike Dillon]], [[User:R. Koot]], [[User:SG]]&lt;br /&gt;
 */&lt;br /&gt;
 &lt;br /&gt;
var hasClass = (function () {&lt;br /&gt;
    var reCache = {};&lt;br /&gt;
    return function (element, className) {&lt;br /&gt;
        return (reCache[className] ? reCache[className] : (reCache[className] = new RegExp(&amp;quot;(?:\\s|^)&amp;quot; + className + &amp;quot;(?:\\s|$)&amp;quot;))).test(element.className);&lt;br /&gt;
    };&lt;br /&gt;
})();&lt;br /&gt;
 &lt;br /&gt;
/** Collapsible tables *********************************************************&lt;br /&gt;
 *&lt;br /&gt;
 * From English Wikipedia, 2008-09-15&lt;br /&gt;
 *&lt;br /&gt;
 *  Description: Allows tables to be collapsed, showing only the header. See&lt;br /&gt;
 *               [[Wikipedia:NavFrame]].&lt;br /&gt;
 *  Maintainers: [[User:R. Koot]]&lt;br /&gt;
 */&lt;br /&gt;
 &lt;br /&gt;
var autoCollapse = 2;&lt;br /&gt;
var collapseCaption = &amp;quot;hide&amp;quot;;&lt;br /&gt;
var expandCaption = &amp;quot;show&amp;quot;;&lt;br /&gt;
 &lt;br /&gt;
function collapseTable( tableIndex )&lt;br /&gt;
{&lt;br /&gt;
    var Button = document.getElementById( &amp;quot;collapseButton&amp;quot; + tableIndex );&lt;br /&gt;
    var Table = document.getElementById( &amp;quot;collapsibleTable&amp;quot; + tableIndex );&lt;br /&gt;
 &lt;br /&gt;
    if ( !Table || !Button ) {&lt;br /&gt;
        return false;&lt;br /&gt;
    }&lt;br /&gt;
 &lt;br /&gt;
    var Rows = Table.rows;&lt;br /&gt;
 &lt;br /&gt;
    if ( Button.firstChild.data == collapseCaption ) {&lt;br /&gt;
        for ( var i = 1; i &amp;lt; Rows.length; i++ ) {&lt;br /&gt;
            Rows[i].style.display = &amp;quot;none&amp;quot;;&lt;br /&gt;
        }&lt;br /&gt;
        Button.firstChild.data = expandCaption;&lt;br /&gt;
    } else {&lt;br /&gt;
        for ( var i = 1; i &amp;lt; Rows.length; i++ ) {&lt;br /&gt;
            Rows[i].style.display = Rows[0].style.display;&lt;br /&gt;
        }&lt;br /&gt;
        Button.firstChild.data = collapseCaption;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
function createCollapseButtons()&lt;br /&gt;
{&lt;br /&gt;
    var tableIndex = 0;&lt;br /&gt;
    var NavigationBoxes = new Object();&lt;br /&gt;
    var Tables = document.getElementsByTagName( &amp;quot;table&amp;quot; );&lt;br /&gt;
 &lt;br /&gt;
    for ( var i = 0; i &amp;lt; Tables.length; i++ ) {&lt;br /&gt;
        if ( hasClass( Tables[i], &amp;quot;collapsible&amp;quot; ) ) {&lt;br /&gt;
 &lt;br /&gt;
            /* only add button and increment count if there is a header row to work with */&lt;br /&gt;
            var HeaderRow = Tables[i].getElementsByTagName( &amp;quot;tr&amp;quot; )[0];&lt;br /&gt;
            if (!HeaderRow) continue;&lt;br /&gt;
            var Header = HeaderRow.getElementsByTagName( &amp;quot;th&amp;quot; )[0];&lt;br /&gt;
            if (!Header) continue;&lt;br /&gt;
 &lt;br /&gt;
            NavigationBoxes[ tableIndex ] = Tables[i];&lt;br /&gt;
            Tables[i].setAttribute( &amp;quot;id&amp;quot;, &amp;quot;collapsibleTable&amp;quot; + tableIndex );&lt;br /&gt;
 &lt;br /&gt;
            var Button     = document.createElement( &amp;quot;span&amp;quot; );&lt;br /&gt;
            var ButtonLink = document.createElement( &amp;quot;a&amp;quot; );&lt;br /&gt;
            var ButtonText = document.createTextNode( collapseCaption );&lt;br /&gt;
 &lt;br /&gt;
            Button.style.styleFloat = &amp;quot;right&amp;quot;;&lt;br /&gt;
            Button.style.cssFloat = &amp;quot;right&amp;quot;;&lt;br /&gt;
            Button.style.fontWeight = &amp;quot;normal&amp;quot;;&lt;br /&gt;
            Button.style.textAlign = &amp;quot;right&amp;quot;;&lt;br /&gt;
            Button.style.width = &amp;quot;6em&amp;quot;;&lt;br /&gt;
 &lt;br /&gt;
            ButtonLink.style.color = Header.style.color;&lt;br /&gt;
            ButtonLink.setAttribute( &amp;quot;id&amp;quot;, &amp;quot;collapseButton&amp;quot; + tableIndex );&lt;br /&gt;
            ButtonLink.setAttribute( &amp;quot;href&amp;quot;, &amp;quot;javascript:collapseTable(&amp;quot; + tableIndex + &amp;quot;);&amp;quot; );&lt;br /&gt;
            ButtonLink.appendChild( ButtonText );&lt;br /&gt;
 &lt;br /&gt;
            Button.appendChild( document.createTextNode( &amp;quot;[&amp;quot; ) );&lt;br /&gt;
            Button.appendChild( ButtonLink );&lt;br /&gt;
            Button.appendChild( document.createTextNode( &amp;quot;]&amp;quot; ) );&lt;br /&gt;
 &lt;br /&gt;
            Header.insertBefore( Button, Header.childNodes[0] );&lt;br /&gt;
            tableIndex++;&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
 &lt;br /&gt;
    for ( var i = 0;  i &amp;lt; tableIndex; i++ ) {&lt;br /&gt;
        if ( hasClass( NavigationBoxes[i], &amp;quot;collapsed&amp;quot; ) || ( tableIndex &amp;gt;= autoCollapse &amp;amp;&amp;amp; hasClass( NavigationBoxes[i], &amp;quot;autocollapse&amp;quot; ) ) ) {&lt;br /&gt;
            collapseTable( i );&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
addOnloadHook( createCollapseButtons );&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
/** Dynamic Navigation Bars (experimental) *************************************&lt;br /&gt;
 *&lt;br /&gt;
 * From English Wikipedia, 2008-09-15&lt;br /&gt;
 *&lt;br /&gt;
 *  Description: See [[Wikipedia:NavFrame]].&lt;br /&gt;
 *  Maintainers: UNMAINTAINED&lt;br /&gt;
 */&lt;br /&gt;
 &lt;br /&gt;
// set up the words in your language&lt;br /&gt;
var NavigationBarHide = &amp;#039;[&amp;#039; + collapseCaption + &amp;#039;]&amp;#039;;&lt;br /&gt;
var NavigationBarShow = &amp;#039;[&amp;#039; + expandCaption + &amp;#039;]&amp;#039;;&lt;br /&gt;
 &lt;br /&gt;
// shows and hides content and picture (if available) of navigation bars&lt;br /&gt;
// Parameters:&lt;br /&gt;
//     indexNavigationBar: the index of navigation bar to be toggled&lt;br /&gt;
function toggleNavigationBar(indexNavigationBar)&lt;br /&gt;
{&lt;br /&gt;
    var NavToggle = document.getElementById(&amp;quot;NavToggle&amp;quot; + indexNavigationBar);&lt;br /&gt;
    var NavFrame = document.getElementById(&amp;quot;NavFrame&amp;quot; + indexNavigationBar);&lt;br /&gt;
 &lt;br /&gt;
    if (!NavFrame || !NavToggle) {&lt;br /&gt;
        return false;&lt;br /&gt;
    }&lt;br /&gt;
 &lt;br /&gt;
    // if shown now&lt;br /&gt;
    if (NavToggle.firstChild.data == NavigationBarHide) {&lt;br /&gt;
        for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) {&lt;br /&gt;
            if ( hasClass( NavChild, &amp;#039;NavPic&amp;#039; ) ) {&lt;br /&gt;
                NavChild.style.display = &amp;#039;none&amp;#039;;&lt;br /&gt;
            }&lt;br /&gt;
            if ( hasClass( NavChild, &amp;#039;NavContent&amp;#039;) ) {&lt;br /&gt;
                NavChild.style.display = &amp;#039;none&amp;#039;;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    NavToggle.firstChild.data = NavigationBarShow;&lt;br /&gt;
 &lt;br /&gt;
    // if hidden now&lt;br /&gt;
    } else if (NavToggle.firstChild.data == NavigationBarShow) {&lt;br /&gt;
        for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) {&lt;br /&gt;
            if (hasClass(NavChild, &amp;#039;NavPic&amp;#039;)) {&lt;br /&gt;
                NavChild.style.display = &amp;#039;block&amp;#039;;&lt;br /&gt;
            }&lt;br /&gt;
            if (hasClass(NavChild, &amp;#039;NavContent&amp;#039;)) {&lt;br /&gt;
                NavChild.style.display = &amp;#039;block&amp;#039;;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
        NavToggle.firstChild.data = NavigationBarHide;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
// adds show/hide-button to navigation bars&lt;br /&gt;
function createNavigationBarToggleButton()&lt;br /&gt;
{&lt;br /&gt;
    var indexNavigationBar = 0;&lt;br /&gt;
    // iterate over all &amp;lt; div &amp;gt;-elements &lt;br /&gt;
    var divs = document.getElementsByTagName(&amp;quot;div&amp;quot;);&lt;br /&gt;
    for (var i = 0; NavFrame = divs[i]; i++) {&lt;br /&gt;
        // if found a navigation bar&lt;br /&gt;
        if (hasClass(NavFrame, &amp;quot;NavFrame&amp;quot;)) {&lt;br /&gt;
 &lt;br /&gt;
            indexNavigationBar++;&lt;br /&gt;
            var NavToggle = document.createElement(&amp;quot;a&amp;quot;);&lt;br /&gt;
            NavToggle.className = &amp;#039;NavToggle&amp;#039;;&lt;br /&gt;
            NavToggle.setAttribute(&amp;#039;id&amp;#039;, &amp;#039;NavToggle&amp;#039; + indexNavigationBar);&lt;br /&gt;
            NavToggle.setAttribute(&amp;#039;href&amp;#039;, &amp;#039;javascript:toggleNavigationBar(&amp;#039; + indexNavigationBar + &amp;#039;);&amp;#039;);&lt;br /&gt;
 &lt;br /&gt;
            var NavToggleText = document.createTextNode(NavigationBarHide);&lt;br /&gt;
            for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) {&lt;br /&gt;
                if ( hasClass( NavChild, &amp;#039;NavPic&amp;#039; ) || hasClass( NavChild, &amp;#039;NavContent&amp;#039; ) ) {&lt;br /&gt;
                    if (NavChild.style.display == &amp;#039;none&amp;#039;) {&lt;br /&gt;
                        NavToggleText = document.createTextNode(NavigationBarShow);&lt;br /&gt;
                        break;&lt;br /&gt;
                    }&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
 &lt;br /&gt;
            NavToggle.appendChild(NavToggleText);&lt;br /&gt;
            // Find the NavHead and attach the toggle link (Must be this complicated because Moz&amp;#039;s firstChild handling is borked)&lt;br /&gt;
            for(var j=0; j &amp;lt; NavFrame.childNodes.length; j++) {&lt;br /&gt;
                if (hasClass(NavFrame.childNodes[j], &amp;quot;NavHead&amp;quot;)) {&lt;br /&gt;
                    NavFrame.childNodes[j].appendChild(NavToggle);&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            NavFrame.setAttribute(&amp;#039;id&amp;#039;, &amp;#039;NavFrame&amp;#039; + indexNavigationBar);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
addOnloadHook( createNavigationBarToggleButton );&lt;/div&gt;</summary>
		<author><name>Syfre</name></author>
	</entry>
</feed>