| 
				   | 
				
| Línia 55: | 
Línia 55: | 
 |       "sampleText": ""};  |  |       "sampleText": ""};  | 
 |   }  |  |   }  | 
 | 
  |  | 
 | // ============================================================
  |  | 
 | // BEGIN Dynamic Navigation Bars (experimantal)
  |  | 
 | // This script is from Wikipedia. For author attribution, please see http://en.wikipedia.org/w/index.php?title=MediaWiki:Common.js&action=history
  |  | 
 |  
  |  | 
 |  
  |  | 
 | /* Test if an element has a certain class **************************************
  |  | 
 |  *
  |  | 
 |  * Description: Uses regular expressions and caching for better performance.
  |  | 
 |  * Maintainers: User:Mike Dillon, User:R. Koot, User:SG
  |  | 
 |  */
  |  | 
 |  
  |  | 
 | var hasClass = (function () {
  |  | 
 |     var reCache = {};
  |  | 
 |     return function (element, className) {
  |  | 
 |         return (reCache[className] ? reCache[className] : (reCache[className] = new RegExp("(?:\\s|^)" + className + "(?:\\s|$)"))).test(element.className);
  |  | 
 |     };
  |  | 
 | })();
  |  | 
 |  
  |  | 
 |  /** Collapsible tables *********************************************************
  |  | 
 |   *
  |  | 
 |   *  Description: Allows tables to be collapsed, showing only the header. See
  |  | 
 |   *               [[Wikipedia:NavFrame]].
  |  | 
 |   *  Maintainers: [[User:R. Koot]]
  |  | 
 |   */
  |  | 
 |  
  |  | 
 |  var autoCollapse = 2;
  |  | 
 |  var collapseCaption = "-";
  |  | 
 |  var expandCaption = "+";
  |  | 
 |  
  |  | 
 |  function collapseTable( tableIndex )
  |  | 
 |  {
  |  | 
 |      var Button = document.getElementById( "collapseButton" + tableIndex );
  |  | 
 |      var Table = document.getElementById( "collapsibleTable" + tableIndex );
  |  | 
 |  
  |  | 
 |      if ( !Table || !Button ) {
  |  | 
 |          return false;
  |  | 
 |      }
  |  | 
 |  
  |  | 
 |      var Rows = Table.getElementsByTagName( "tr" ); 
  |  | 
 |  
  |  | 
 |      if ( Button.firstChild.data == collapseCaption ) {
  |  | 
 |          for ( var i = 1; i < Rows.length; i++ ) {
  |  | 
 |              Rows[i].style.display = "none";
  |  | 
 |          }
  |  | 
 |          Button.firstChild.data = expandCaption;
  |  | 
 |      } else {
  |  | 
 |          for ( var i = 1; i < Rows.length; i++ ) {
  |  | 
 |              Rows[i].style.display = Rows[0].style.display;
  |  | 
 |          }
  |  | 
 |          Button.firstChild.data = collapseCaption;
  |  | 
 |      }
  |  | 
 |  }
  |  | 
 |  
  |  | 
 |  function createCollapseButtons()
  |  | 
 |  {
  |  | 
 |      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" ) ) {
  |  | 
 |              NavigationBoxes[ tableIndex ] = Tables[i];
  |  | 
 |              Tables[i].setAttribute( "id", "collapsibleTable" + tableIndex );
  |  | 
 |  
  |  | 
 |              var Button     = document.createElement( "span" );
  |  | 
 |              var ButtonLink = document.createElement( "a" );
  |  | 
 |              var ButtonText = document.createTextNode( collapseCaption );
  |  | 
 |  
  |  | 
 |              Button.style.styleFloat = "right";
  |  | 
 |              Button.style.cssFloat = "right";
  |  | 
 |              Button.style.fontWeight = "normal";
  |  | 
 |              Button.style.textAlign = "right";
  |  | 
 |              Button.style.width = "6em";
  |  | 
 |  
  |  | 
 |              ButtonLink.setAttribute( "id", "collapseButton" + tableIndex );
  |  | 
 |              ButtonLink.setAttribute( "href", "javascript:collapseTable(" + tableIndex + ");" );
  |  | 
 |              ButtonLink.appendChild( ButtonText );
  |  | 
 |  
  |  | 
 |              Button.appendChild( document.createTextNode( "[" ) );
  |  | 
 |              Button.appendChild( ButtonLink );
  |  | 
 |              Button.appendChild( document.createTextNode( "]" ) );
  |  | 
 |  
  |  | 
 |              var Header = Tables[i].getElementsByTagName( "tr" )[0].getElementsByTagName( "th" )[0];
  |  | 
 |              /* only add button and increment count if there is a header row to work with */
  |  | 
 |              if (Header) {
  |  | 
 |                  Header.insertBefore( Button, Header.childNodes[0] );
  |  | 
 |                  tableIndex++;
  |  | 
 |              }
  |  | 
 |          }
  |  | 
 |      }
  |  | 
 |  
  |  | 
 |      for ( var i = 0;  i < tableIndex; i++ ) {
  |  | 
 |          if ( hasClass( NavigationBoxes[i], "collapsed" ) || ( tableIndex >= autoCollapse && hasClass( NavigationBoxes[i], "autocollapse" ) ) ) {
  |  | 
 |              collapseTable( i );
  |  | 
 |          }
  |  | 
 |      }
  |  | 
 |  }
  |  | 
 |  addOnloadHook( createCollapseButtons );
  |  | 
 |  
  |  | 
 |  /** Dynamic Navigation Bars (experimental) *************************************
  |  | 
 |   *
  |  | 
 |   *  Description: See [[Wikipedia:NavFrame]].
  |  | 
 |   *  Maintainers: UNMAINTAINED
  |  | 
 |   */
  |  | 
 |  
  |  | 
 |   // set up the words in your language
  |  | 
 |   var NavigationBarHide = '[' + collapseCaption + ']';
  |  | 
 |   var NavigationBarShow = '[' + expandCaption + ']';
  |  | 
 |  
  |  | 
 |   // set up max count of Navigation Bars on page,
  |  | 
 |   // if there are more, all will be hidden
  |  | 
 |   // NavigationBarShowDefault = 0; // all bars will be hidden
  |  | 
 |   // NavigationBarShowDefault = 1; // on pages with more than 1 bar all bars will be hidden
  |  | 
 |   var NavigationBarShowDefault = autoCollapse;
  |  | 
 |  
  |  | 
 |  
  |  | 
 |   // 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;
  |  | 
 |      }
  |  | 
 |  
  |  | 
 |      // if shown now
  |  | 
 |      if (NavToggle.firstChild.data == NavigationBarHide) {
  |  | 
 |          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';
  |  | 
 |              }
  |  | 
 |          }
  |  | 
 |      NavToggle.firstChild.data = NavigationBarShow;
  |  | 
 |  
  |  | 
 |      // if hidden now
  |  | 
 |      } else if (NavToggle.firstChild.data == NavigationBarShow) {
  |  | 
 |          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';
  |  | 
 |              }
  |  | 
 |          }
  |  | 
 |      NavToggle.firstChild.data = NavigationBarHide;
  |  | 
 |      }
  |  | 
 |   }
  |  | 
 |  
  |  | 
 |   // adds show/hide-button to navigation bars
  |  | 
 |   function createNavigationBarToggleButton()
  |  | 
 |   {
  |  | 
 |      var indexNavigationBar = 0;
  |  | 
 |      // iterate over all < div >-elements 
  |  | 
 |      var divs = document.getElementsByTagName("div");
  |  | 
 |      for(
  |  | 
 |              var i=0; 
  |  | 
 |              NavFrame = divs[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(NavigationBarHide);
  |  | 
 |              NavToggle.appendChild(NavToggleText);
  |  | 
 |              // Find the NavHead and attach the toggle link (Must be this complicated because Moz's firstChild handling is borked)
  |  | 
 |              for(
  |  | 
 |                var j=0; 
  |  | 
 |                j < NavFrame.childNodes.length; 
  |  | 
 |                j++
  |  | 
 |              ) {
  |  | 
 |                if (hasClass(NavFrame.childNodes[j], "NavHead")) {
  |  | 
 |                  NavFrame.childNodes[j].appendChild(NavToggle);
  |  | 
 |                }
  |  | 
 |              }
  |  | 
 |              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 );
  |  | 
 |  
  |  | 
 | // ==================================================
  |  | 
 | //  Folding Multi Wiki Tabs (experimental)
  |  | 
 | // ==================================================
  |  | 
 |  
  |  | 
 | function foldingTabsMulti() {
  |  | 
 |   var len=0;
  |  | 
 |   ftsets = getElementsByClassName(document, 'div', 'foldtabSet');  //global object array thingy
  |  | 
 |   if(ftsets.length==0) return
  |  | 
 |  
  |  | 
 |   for(var i=0;i<ftsets.length;i++) {  
  |  | 
 |     ftsets[i].head = getElementsByClassName(ftsets[i], 'div', 'foldtabHead')[0];
  |  | 
 |     ftsets[i].links = ftsets[i].head.getElementsByTagName('a');
  |  | 
 |     ftsets[i].boxen = getElementsByClassName(ftsets[i], 'div', 'foldtabBox');
  |  | 
 |  
  |  | 
 |     if(ftsets[i].links.length < ftsets[i].boxen.length) {
  |  | 
 |       len = ftsets[i].boxen.length;
  |  | 
 |     } else {
  |  | 
 |       len = ftsets[i].links.length;
  |  | 
 |     }
  |  | 
 |  
  |  | 
 |     for(var j=0;j<len;j++) {
  |  | 
 |       ftsets[i].links[j].href = 'javascript:showmultitab(\'' + i + '\',\'' + j + '\');';
  |  | 
 |       ftsets[i].links[j].title = 'click to display tab ' + j + ' of set ' + i;
  |  | 
 |     }
  |  | 
 |     showmultitab(i,'0');
  |  | 
 |     ftsets[i].head.style.display = 'block';
  |  | 
 |   }
  |  | 
 | }
  |  | 
 | addOnloadHook(foldingTabsMulti);
  |  | 
 |  
  |  | 
 | function showmultitab(set,num) {
  |  | 
 |   for(var j=0;j<ftsets[set].boxen.length;j++) {
  |  | 
 |     if(j==num) {
  |  | 
 |       ftsets[set].boxen[j].style.display = 'block';
  |  | 
 |     } else {
  |  | 
 |       ftsets[set].boxen[j].style.display = 'none';
  |  | 
 |     }
  |  | 
 |   }
  |  | 
 |   for(var j=0;j<ftsets[set].links.length;j++) {
  |  | 
 |     if(j==num) {
  |  | 
 |       ftsets[set].links[j].className = 'selected';
  |  | 
 |       ftsets[set].links[j].blur();
  |  | 
 |     } else {
  |  | 
 |       ftsets[set].links[j].className = '';
  |  | 
 |     }
  |  | 
 |   }
  |  | 
 | }
  |  | 
 |  
  |  | 
 | // ==================================================
  |  | 
 | //            END Folding Multi Wiki Tabs
  |  | 
 | // ==================================================
  |  | 
 |  
  |  | 
 |  
  |  | 
 | /* Any JavaScript here will be loaded for all users on every page load. */
  |  | 
 |  
  |  | 
 | // <syntax type="javascript">
  |  | 
 |  
  |  | 
 |     /** 
  |  | 
 |         Toggles the display of elements on a page 
  |  | 
 |         Author/contact: Austin Che http://openwetware.org/wiki/User:Austin_J._Che
  |  | 
 |         See http://openwetware.org/wiki/OpenWetWare:Toggle for examples and documentation
  |  | 
 |      */
  |  | 
 |  
  |  | 
 | // indexed array of toggler ids to array of associated toggle operations
  |  | 
 | // each operation is a two element array, the first being the type, the second a class name or array of elements
  |  | 
 | // operation types are strings like "_reset" or "" for the default toggle operation
  |  | 
 | var togglers = new Array();     
  |  | 
 | var allClasses = new Object(); // associative map of class names to page elements
  |  | 
 |  
  |  | 
 | function toggler(id)
  |  | 
 | {
  |  | 
 |     var toBeToggled = togglers[id];
  |  | 
 |     if (!toBeToggled)
  |  | 
 |         return;
  |  | 
 |  
  |  | 
 |     // if some element is in list more than once, it will be toggled multiple times
  |  | 
 |     for (var i = 0; i < toBeToggled.length; i++)
  |  | 
 |     {
  |  | 
 |         // get array of elements to operate on
  |  | 
 |         var toggles = toBeToggled[i][1];
  |  | 
 |         if (typeof(toggles) == "string")
  |  | 
 |         {
  |  | 
 |             if (toggles.charAt(0) == '-')
  |  | 
 |             {
  |  | 
 |                 // treat as an element ID, not as class
  |  | 
 |                 toggles = document.getElementById(toggles.substring(1));
  |  | 
 |                 if (toggles)
  |  | 
 |                     toggles = new Array(toggles);
  |  | 
 |             }
  |  | 
 |             else
  |  | 
 |                 toggles = allClasses[toggles];
  |  | 
 |         }
  |  | 
 |         if (!toggles || !toggles.length)
  |  | 
 |             continue;
  |  | 
 |  
  |  | 
 |         var op = toBeToggled[i][0]; // what the operation will be
  |  | 
 |  
  |  | 
 |         switch (op)
  |  | 
 |         {
  |  | 
 |             case "_reset":
  |  | 
 |                 for (var j in toggles)
  |  | 
 |                     toggles[j].style.display = toggles[j]._toggle_original_display;
  |  | 
 |                 break;
  |  | 
 |             case "_show":
  |  | 
 |                 for (var j in toggles)
  |  | 
 |                     toggles[j].style.display = '';
  |  | 
 |                 break;
  |  | 
 |             case "_hide":
  |  | 
 |                 for (var j in toggles)
  |  | 
 |                     toggles[j].style.display = 'none';
  |  | 
 |                 break;
  |  | 
 |             case "":
  |  | 
 |             default:
  |  | 
 |                 // Toggle
  |  | 
 |                 for (var j in toggles)
  |  | 
 |                     toggles[j].style.display = ((toggles[j].style.display == 'none') ? '' : 'none');
  |  | 
 |                 break;
  |  | 
 |         }
  |  | 
 |     }
  |  | 
 | }
  |  | 
 |  
  |  | 
 | function createTogglerLink(toggler, id)
  |  | 
 | {
  |  | 
 |     var toggle = document.createElement("a");
  |  | 
 |     toggle.className = 'toggler-link';
  |  | 
 |     toggle.setAttribute('id', 'toggler' + id);
  |  | 
 |     toggle.setAttribute('href', 'javascript:toggler("' + id + '");');
  |  | 
 |     var child = toggler.firstChild;
  |  | 
 |     toggler.removeChild(child);
  |  | 
 |     toggle.appendChild(child);
  |  | 
 |     toggler.insertBefore(toggle, toggler.firstChild);
  |  | 
 | }
  |  | 
 |  
  |  | 
 | function toggleInit()
  |  | 
 | {
  |  | 
 |     var togglerElems = new Array();
  |  | 
 |     var toggleGroup = new Array();
  |  | 
 |  
  |  | 
 |     // initialize/clear any old information
  |  | 
 |     togglers = new Array();     
  |  | 
 |     allClasses = new Object();
  |  | 
 |     allClasses.watch = undefined;
  |  | 
 |     allClasses.unwatch = undefined;
  |  | 
 |  
  |  | 
 |  
  |  | 
 |     // make list of all document classes
  |  | 
 |     var elems = document.getElementsByTagName("*");
  |  | 
 |     var numelems = elems.length;
  |  | 
 |     for (var i = 0; i < elems.length; i++)
  |  | 
 |     {
  |  | 
 |         var elem = elems[i];
  |  | 
 |         if (!elem.className)
  |  | 
 |             continue;
  |  | 
 |  
  |  | 
 |         elem._toggle_original_display = elem.style.display;
  |  | 
 |         var togglerID = -1;
  |  | 
 |         var elemClasses = elem.className.split(' '); // get list of classes
  |  | 
 |         for (var j = 0; j < elemClasses.length; j++)
  |  | 
 |         {
  |  | 
 |             var elemClass = elemClasses[j];
  |  | 
 |             if (! allClasses[elemClass])
  |  | 
 |                 allClasses[elemClass] = new Array();
  |  | 
 |             allClasses[elemClass].push(elem);
  |  | 
 |  
  |  | 
 |             // all the special classes begin with _toggle
  |  | 
 |             if (elemClass.substring(0, 7) != "_toggle")
  |  | 
 |                 continue;
  |  | 
 |  
  |  | 
 |             if (elemClass == "_togglegroup")
  |  | 
 |                 toggleGroup = new Array();
  |  | 
 |             else if (elemClass == "_toggle")
  |  | 
 |                 toggleGroup.push(elem);
  |  | 
 |             else if (elemClass.substring(0, 12) == "_toggle_init")
  |  | 
 |             {
  |  | 
 |                 // set initial value for display (ignore the original CSS set value)
  |  | 
 |                 // understands _toggle_initshow and _toggle_inithide
  |  | 
 |                 var disp = elemClass.substring(12);
  |  | 
 |                 if (disp == "show")
  |  | 
 |                     elem.style.display = '';
  |  | 
 |                 else if (disp == "hide")
  |  | 
 |                     elem.style.display = 'none';
  |  | 
 |                 elem._toggle_original_display = disp;
  |  | 
 |             }
  |  | 
 |             else if (elemClass.substring(0, 8) == "_toggler")
  |  | 
 |             {
  |  | 
 |                 if (togglerID == -1)
  |  | 
 |                 {
  |  | 
 |                     togglerID = togglers.length;
  |  | 
 |                     togglers[togglerID] = new Array();
  |  | 
 |                     togglerElems[togglerID] = elem;
  |  | 
 |                 }
  |  | 
 |  
  |  | 
 |                 // all classes are of form _toggler_op-CLASS
  |  | 
 |                 // figure out what class we're toggling
  |  | 
 |                 // if none is specified, then we use the current toggle group
  |  | 
 |                 var toBeToggled;
  |  | 
 |                 var hyphen = elemClass.indexOf('-');
  |  | 
 |                 if (hyphen != -1)
  |  | 
 |                     toBeToggled = elemClass.substring(hyphen+1);
  |  | 
 |                 else
  |  | 
 |                 {
  |  | 
 |                     toBeToggled = toggleGroup;
  |  | 
 |                     hyphen = elemClass.length;
  |  | 
 |                 }
  |  | 
 |  
  |  | 
 |                 var op = elemClass.substring(8, hyphen);
  |  | 
 |                 togglers[togglerID].push(new Array(op, toBeToggled));
  |  | 
 |             }
  |  | 
 |         }
  |  | 
 |     }
  |  | 
 |  
  |  | 
 |     // add javascript links to all toggler elements
  |  | 
 |     for (var i = 0; i < togglerElems.length; i++)
  |  | 
 |         createTogglerLink(togglerElems[i], i);
  |  | 
 | }
  |  | 
 |  
  |  | 
 |  
  |  | 
 | function owwsitesearch(f){
  |  | 
 |     f.q.value='site:http://openwetware.org/wiki/'+
  |  | 
 |         f.base.value+'++'+f.qfront.value
  |  | 
 | }
  |  | 
 |  
  |  | 
 |  
  |  | 
 | addOnloadHook(toggleInit);
  |  | 
 |  
  |  | 
 | // </syntax>
  |  | 
 |  
  |  | 
 |  
  |  | 
 |  
  |  | 
 | /** Archive edit tab disabling *************************************
  |  | 
 |  * Disables the edit tab on old forum topic pages to stop new people bumping old topics.
  |  | 
 |  * Page can still be edited by going via the edit tab on the history etc, or by 
  |  | 
 |  * typing the edit address manually.
  |  | 
 |  * By [[User:Spang|Spang]]
  |  | 
 |  * Monaco support by [[User:Uberfuzzy|Uberfuzzy]]
  |  | 
 |  * Oasis support by [[User:Uberfuzzy|Uberfuzzy]]
  |  | 
 |  */
  |  | 
 |  
  |  | 
 | if(wgNamespaceNumber == 110) {
  |  | 
 |  
  |  | 
 | function disableOldForumEdit() {
  |  | 
 | 	if( typeof( enableOldForumEdit ) != 'undefined' && enableOldForumEdit ) {
  |  | 
 | 		return;
  |  | 
 | 	}
  |  | 
 | 	if( !document.getElementById('old-forum-warning') ) {
  |  | 
 | 		return;
  |  | 
 | 	}
  |  | 
 |  
  |  | 
 | 	if( skin == 'oasis' )
  |  | 
 | 	{
  |  | 
 | 		$("#WikiaPageHeader .wikia-menu-button li a:first").html('Archived').removeAttr('href' );
  |  | 
 | 		$('#WikiaPageHeader .wikia-button').html('Archived').removeAttr('href');
  |  | 
 | 		return;
  |  | 
 | 	}
  |  | 
 |  
  |  | 
 | 	if( !document.getElementById('ca-edit') ) {
  |  | 
 | 		return;
  |  | 
 | 	}
  |  | 
 | 	var editLink = null;
  |  | 
 | 	if( skin == 'monaco' )
  |  | 
 | 	{
  |  | 
 | 		editLink = document.getElementById('ca-edit');
  |  | 
 | 	}
  |  | 
 | 	else if( skin == 'monobook' )
  |  | 
 | 	{
  |  | 
 | 		editLink = document.getElementById('ca-edit').firstChild;
  |  | 
 | 	}
  |  | 
 | 	else
  |  | 
 | 	{
  |  | 
 | 		return;
  |  | 
 | 	}
  |  | 
 |  
  |  | 
 |  
  |  | 
 | 	editLink.removeAttribute('href', 0);
  |  | 
 | 	editLink.removeAttribute('title', 0);
  |  | 
 | 	editLink.style.color = 'gray';
  |  | 
 | 	editLink.innerHTML = 'Archived';
  |  | 
 |  
  |  | 
 | 	$('span.editsection-upper').remove();
  |  | 
 |  
  |  | 
 | }
  |  | 
 | addOnloadHook( disableOldForumEdit );
  |  | 
 | }
  |  | 
 | 
  |  | 
  | 
 | // *****************************************************  |  | // *****************************************************  | 
| Línia 617: | 
Línia 122: | 
 | //  - end -  Experimental javascript countdown timer  |  | //  - end -  Experimental javascript countdown timer  | 
 | // **************************************************  |  | // **************************************************  | 
 | 
  |  | 
 | /** *************************************
  |  | 
 | /Dynamic Navigation Bars (experimental) 
  |  | 
 | /****************************************
  |  | 
 |  *
  |  | 
 |  *  Description: See [[Wikipedia:NavFrame]].
  |  | 
 |  *  Maintainers: UNMAINTAINED
  |  | 
 |  */
  |  | 
 |  
  |  | 
 | // set up the words in your language
  |  | 
 | var NavigationBarHide = '[' + collapseCaption + ']';
  |  | 
 | var NavigationBarShow = '[' + expandCaption + ']';
  |  | 
 |  
  |  | 
 | // 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;
  |  | 
 |     }
  |  | 
 |  
  |  | 
 |     // if shown now
  |  | 
 |     if (NavToggle.firstChild.data == NavigationBarHide) {
  |  | 
 |         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';
  |  | 
 |             }
  |  | 
 |         }
  |  | 
 |     NavToggle.firstChild.data = NavigationBarShow;
  |  | 
 |  
  |  | 
 |     // if hidden now
  |  | 
 |     } else if (NavToggle.firstChild.data == NavigationBarShow) {
  |  | 
 |         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';
  |  | 
 |             }
  |  | 
 |         }
  |  | 
 |         NavToggle.firstChild.data = NavigationBarHide;
  |  | 
 |     }
  |  | 
 | }
  |  | 
 |  
  |  | 
 | // adds show/hide-button to navigation bars
  |  | 
 | function createNavigationBarToggleButton()
  |  | 
 | {
  |  | 
 |     var indexNavigationBar = 0;
  |  | 
 |     // iterate over all < div >-elements 
  |  | 
 |     var divs = document.getElementsByTagName("div");
  |  | 
 |     for (var i = 0; NavFrame = divs[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 isCollapsed = hasClass( NavFrame, "collapsed" );
  |  | 
 |             /*
  |  | 
 |              * Check if any children are already hidden.  This loop is here for backwards compatibility:
  |  | 
 |              * the old way of making NavFrames start out collapsed was to manually add style="display:none"
  |  | 
 |              * to all the NavPic/NavContent elements.  Since this was bad for accessibility (no way to make
  |  | 
 |              * the content visible without JavaScript support), the new recommended way is to add the class
  |  | 
 |              * "collapsed" to the NavFrame itself, just like with collapsible tables.
  |  | 
 |              */
  |  | 
 |             for (var NavChild = NavFrame.firstChild; NavChild != null && !isCollapsed; NavChild = NavChild.nextSibling) {
  |  | 
 |                 if ( hasClass( NavChild, 'NavPic' ) || hasClass( NavChild, 'NavContent' ) ) {
  |  | 
 |                     if ( NavChild.style.display == 'none' ) {
  |  | 
 |                         isCollapsed = true;
  |  | 
 |                     }
  |  | 
 |                 }
  |  | 
 |             }
  |  | 
 |             if (isCollapsed) {
  |  | 
 |                 for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) {
  |  | 
 |                     if ( hasClass( NavChild, 'NavPic' ) || hasClass( NavChild, 'NavContent' ) ) {
  |  | 
 |                         NavChild.style.display = 'none';
  |  | 
 |                     }
  |  | 
 |                 }
  |  | 
 |             }
  |  | 
 |             var NavToggleText = document.createTextNode(isCollapsed ? NavigationBarShow : NavigationBarHide);
  |  | 
 |             NavToggle.appendChild(NavToggleText);
  |  | 
 |  
  |  | 
 |             // Find the NavHead and attach the toggle link (Must be this complicated because Moz's firstChild handling is borked)
  |  | 
 |             for(var j=0; j < NavFrame.childNodes.length; j++) {
  |  | 
 |                 if (hasClass(NavFrame.childNodes[j], "NavHead")) {
  |  | 
 |                     NavFrame.childNodes[j].appendChild(NavToggle);
  |  | 
 |                 }
  |  | 
 |             }
  |  | 
 |             NavFrame.setAttribute('id', 'NavFrame' + indexNavigationBar);
  |  | 
 |         }
  |  | 
 |     }
  |  | 
 | }
  |  | 
 |  
  |  | 
 | addOnloadHook( createNavigationBarToggleButton );
  |  | 
 | 
  |  | 
  | 
 | /****************************/  |  | /****************************/  |