<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.xentax.spektr.name:443/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=FullSpektr</id>
	<title>XentaxWiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.xentax.spektr.name:443/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=FullSpektr"/>
	<link rel="alternate" type="text/html" href="https://wiki.xentax.spektr.name:443/index.php/Special:Contributions/FullSpektr"/>
	<updated>2026-05-30T01:57:22Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.41.0</generator>
	<entry>
		<id>https://wiki.xentax.spektr.name:443/index.php?title=MediaWiki:Common.js&amp;diff=58051</id>
		<title>MediaWiki:Common.js</title>
		<link rel="alternate" type="text/html" href="https://wiki.xentax.spektr.name:443/index.php?title=MediaWiki:Common.js&amp;diff=58051"/>
		<updated>2024-01-12T19:59:16Z</updated>

		<summary type="html">&lt;p&gt;FullSpektr: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;// &amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
/* Import more specific scripts if necessary */&lt;br /&gt;
 &lt;br /&gt;
/*if (wgAction == &amp;quot;edit&amp;quot; || wgAction == &amp;quot;submit&amp;quot; || wgPageName == &amp;quot;Special:Upload&amp;quot;) //scripts specific to editing pages&lt;br /&gt;
{&lt;br /&gt;
    importScript(&amp;quot;MediaWiki:Common.js/edit.js&amp;quot;)&lt;br /&gt;
}*/&lt;br /&gt;
 &lt;br /&gt;
/** For sysops *****************************************&lt;br /&gt;
 *&lt;br /&gt;
 *  Description: Allows for sysop-specific Javascript at [[MediaWiki:Sysop.js]].&lt;br /&gt;
 */&lt;br /&gt;
/*if ( wgUserGroups ) {&lt;br /&gt;
  for ( var g = 0; g &amp;lt; wgUserGroups.length; ++g ) {&lt;br /&gt;
    if ( wgUserGroups[g] == &amp;quot;sysop&amp;quot; ) {&lt;br /&gt;
      importStylesheet(&amp;quot;MediaWiki:Sysop.css&amp;quot;);&lt;br /&gt;
      addOnloadHook( function() {&lt;br /&gt;
        if ( !window.disableSysopJS ) {&lt;br /&gt;
          importScript(&amp;quot;MediaWiki:Sysop.js&amp;quot;);&lt;br /&gt;
        }&lt;br /&gt;
      } );&lt;br /&gt;
    } &lt;br /&gt;
  }&lt;br /&gt;
}*/&lt;br /&gt;
&lt;br /&gt;
/* Scripts specific to Internet Explorer */&lt;br /&gt;
 &lt;br /&gt;
if (navigator.appName == &amp;quot;Microsoft Internet Explorer&amp;quot;)&lt;br /&gt;
{&lt;br /&gt;
    /** Internet Explorer bug fix **************************************************&lt;br /&gt;
     *&lt;br /&gt;
     *  Description: Fixes IE horizontal scrollbar bug&lt;br /&gt;
     *  Maintainers: [[User:Tom-]]?&lt;br /&gt;
     */&lt;br /&gt;
 &lt;br /&gt;
    var oldWidth;&lt;br /&gt;
    var docEl = document.documentElement;&lt;br /&gt;
 &lt;br /&gt;
    function fixIEScroll()&lt;br /&gt;
    {&lt;br /&gt;
        if (!oldWidth || docEl.clientWidth &amp;gt; oldWidth)&lt;br /&gt;
            doFixIEScroll();&lt;br /&gt;
        else&lt;br /&gt;
            setTimeout(doFixIEScroll, 1);&lt;br /&gt;
 &lt;br /&gt;
        oldWidth = docEl.clientWidth;&lt;br /&gt;
    }&lt;br /&gt;
 &lt;br /&gt;
    function doFixIEScroll() {&lt;br /&gt;
        docEl.style.overflowX = (docEl.scrollWidth - docEl.clientWidth &amp;lt; 4) ? &amp;quot;hidden&amp;quot; : &amp;quot;&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
 &lt;br /&gt;
    document.attachEvent(&amp;quot;onreadystatechange&amp;quot;, fixIEScroll);&lt;br /&gt;
    document.attachEvent(&amp;quot;onresize&amp;quot;, fixIEScroll);&lt;br /&gt;
 &lt;br /&gt;
    // In print IE (7?) does not like line-height&lt;br /&gt;
    appendCSS( &#039;@media print { sup, sub, p, .documentDescription { line-height: normal; }}&#039;);&lt;br /&gt;
 &lt;br /&gt;
    // IE overflow bug&lt;br /&gt;
    appendCSS(&#039;div.overflowbugx { overflow-x: scroll !important; overflow-y: hidden !important; } div.overflowbugy { overflow-y: scroll !important; overflow-x: hidden !important; }&#039;);&lt;br /&gt;
 &lt;br /&gt;
    // IE zoomfix&lt;br /&gt;
    //Use to fix right floating div/table inside tables.&lt;br /&gt;
    appendCSS(&#039;.iezoomfix div, .iezoomfix table { zoom: 1;}&#039; );&lt;br /&gt;
 &lt;br /&gt;
    //Import scripts specific to Internet Explorer 6&lt;br /&gt;
    if (navigator.appVersion.substr(22, 1) == &amp;quot;6&amp;quot;) {&lt;br /&gt;
        importScript(&amp;quot;MediaWiki:Common.js/IE60Fixes.js&amp;quot;)&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
/* Test if an element has a certain class **************************************&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;
 &lt;br /&gt;
/** Collapsible tables *********************************************************&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.className = &amp;quot;collapseButton&amp;quot;;  //Styles are declared in Common.css&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;#&amp;quot; );&lt;br /&gt;
            addHandler( ButtonLink,  &amp;quot;click&amp;quot;, new Function( &amp;quot;evt&amp;quot;, &amp;quot;collapseTable(&amp;quot; + tableIndex + &amp;quot; ); return killEvt( evt );&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;
        else if ( hasClass( NavigationBoxes[i], &amp;quot;innercollapse&amp;quot; ) ) {&lt;br /&gt;
            var element = NavigationBoxes[i];&lt;br /&gt;
            while (element = element.parentNode) {&lt;br /&gt;
                if ( hasClass( element, &amp;quot;outercollapse&amp;quot; ) ) {&lt;br /&gt;
                    collapseTable ( i );&lt;br /&gt;
                    break;&lt;br /&gt;
                }&lt;br /&gt;
            }&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;
 *  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 = &#039;[&#039; + collapseCaption + &#039;]&#039;;&lt;br /&gt;
var NavigationBarShow = &#039;[&#039; + expandCaption + &#039;]&#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, &#039;NavContent&#039;) || hasClass(NavChild, &#039;NavPic&#039;)) {&lt;br /&gt;
                NavChild.style.display = &#039;none&#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, &#039;NavContent&#039;) || hasClass(NavChild, &#039;NavPic&#039;)) {&lt;br /&gt;
                NavChild.style.display = &#039;block&#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 = &#039;NavToggle&#039;;&lt;br /&gt;
            NavToggle.setAttribute(&#039;id&#039;, &#039;NavToggle&#039; + indexNavigationBar);&lt;br /&gt;
            NavToggle.setAttribute(&#039;href&#039;, &#039;javascript:toggleNavigationBar(&#039; + indexNavigationBar + &#039;);&#039;);&lt;br /&gt;
 &lt;br /&gt;
            var isCollapsed = hasClass( NavFrame, &amp;quot;collapsed&amp;quot; );&lt;br /&gt;
            /*&lt;br /&gt;
             * Check if any children are already hidden.  This loop is here for backwards compatibility:&lt;br /&gt;
             * the old way of making NavFrames start out collapsed was to manually add style=&amp;quot;display:none&amp;quot;&lt;br /&gt;
             * to all the NavPic/NavContent elements.  Since this was bad for accessibility (no way to make&lt;br /&gt;
             * the content visible without JavaScript support), the new recommended way is to add the class&lt;br /&gt;
             * &amp;quot;collapsed&amp;quot; to the NavFrame itself, just like with collapsible tables.&lt;br /&gt;
             */&lt;br /&gt;
            for (var NavChild = NavFrame.firstChild; NavChild != null &amp;amp;&amp;amp; !isCollapsed; NavChild = NavChild.nextSibling) {&lt;br /&gt;
                if ( hasClass( NavChild, &#039;NavPic&#039; ) || hasClass( NavChild, &#039;NavContent&#039; ) ) {&lt;br /&gt;
                    if ( NavChild.style.display == &#039;none&#039; ) {&lt;br /&gt;
                        isCollapsed = true;&lt;br /&gt;
                    }&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            if (isCollapsed) {&lt;br /&gt;
                for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) {&lt;br /&gt;
                    if ( hasClass( NavChild, &#039;NavPic&#039; ) || hasClass( NavChild, &#039;NavContent&#039; ) ) {&lt;br /&gt;
                        NavChild.style.display = &#039;none&#039;;&lt;br /&gt;
                    }&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            var NavToggleText = document.createTextNode(isCollapsed ? NavigationBarShow : NavigationBarHide);&lt;br /&gt;
            NavToggle.appendChild(NavToggleText);&lt;br /&gt;
 &lt;br /&gt;
            // Find the NavHead and attach the toggle link (Must be this complicated because Moz&#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;
                    NavToggle.style.color = NavFrame.childNodes[j].style.color;&lt;br /&gt;
                    NavFrame.childNodes[j].appendChild(NavToggle);&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            NavFrame.setAttribute(&#039;id&#039;, &#039;NavFrame&#039; + indexNavigationBar);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
addOnloadHook( createNavigationBarToggleButton );&lt;br /&gt;
 &lt;br /&gt;
// Define ta for now. Bugzilla 23175&lt;br /&gt;
window.ta = [];&lt;br /&gt;
 &lt;br /&gt;
// &amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>FullSpektr</name></author>
	</entry>
	<entry>
		<id>https://wiki.xentax.spektr.name:443/index.php?title=MediaWiki:Common.js&amp;diff=58050</id>
		<title>MediaWiki:Common.js</title>
		<link rel="alternate" type="text/html" href="https://wiki.xentax.spektr.name:443/index.php?title=MediaWiki:Common.js&amp;diff=58050"/>
		<updated>2024-01-12T19:57:33Z</updated>

		<summary type="html">&lt;p&gt;FullSpektr: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;// &amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
/* Import more specific scripts if necessary */&lt;br /&gt;
 &lt;br /&gt;
/*if (wgAction == &amp;quot;edit&amp;quot; || wgAction == &amp;quot;submit&amp;quot; || wgPageName == &amp;quot;Special:Upload&amp;quot;) //scripts specific to editing pages&lt;br /&gt;
{&lt;br /&gt;
    importScript(&amp;quot;MediaWiki:Common.js/edit.js&amp;quot;)&lt;br /&gt;
}*/&lt;br /&gt;
 &lt;br /&gt;
/** For sysops *****************************************&lt;br /&gt;
 *&lt;br /&gt;
 *  Description: Allows for sysop-specific Javascript at [[MediaWiki:Sysop.js]].&lt;br /&gt;
 */&lt;br /&gt;
if ( wgUserGroups ) {&lt;br /&gt;
  for ( var g = 0; g &amp;lt; wgUserGroups.length; ++g ) {&lt;br /&gt;
    if ( wgUserGroups[g] == &amp;quot;sysop&amp;quot; ) {&lt;br /&gt;
      importStylesheet(&amp;quot;MediaWiki:Sysop.css&amp;quot;);&lt;br /&gt;
      addOnloadHook( function() {&lt;br /&gt;
        if ( !window.disableSysopJS ) {&lt;br /&gt;
          importScript(&amp;quot;MediaWiki:Sysop.js&amp;quot;);&lt;br /&gt;
        }&lt;br /&gt;
      } );&lt;br /&gt;
    } &lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Scripts specific to Internet Explorer */&lt;br /&gt;
 &lt;br /&gt;
if (navigator.appName == &amp;quot;Microsoft Internet Explorer&amp;quot;)&lt;br /&gt;
{&lt;br /&gt;
    /** Internet Explorer bug fix **************************************************&lt;br /&gt;
     *&lt;br /&gt;
     *  Description: Fixes IE horizontal scrollbar bug&lt;br /&gt;
     *  Maintainers: [[User:Tom-]]?&lt;br /&gt;
     */&lt;br /&gt;
 &lt;br /&gt;
    var oldWidth;&lt;br /&gt;
    var docEl = document.documentElement;&lt;br /&gt;
 &lt;br /&gt;
    function fixIEScroll()&lt;br /&gt;
    {&lt;br /&gt;
        if (!oldWidth || docEl.clientWidth &amp;gt; oldWidth)&lt;br /&gt;
            doFixIEScroll();&lt;br /&gt;
        else&lt;br /&gt;
            setTimeout(doFixIEScroll, 1);&lt;br /&gt;
 &lt;br /&gt;
        oldWidth = docEl.clientWidth;&lt;br /&gt;
    }&lt;br /&gt;
 &lt;br /&gt;
    function doFixIEScroll() {&lt;br /&gt;
        docEl.style.overflowX = (docEl.scrollWidth - docEl.clientWidth &amp;lt; 4) ? &amp;quot;hidden&amp;quot; : &amp;quot;&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
 &lt;br /&gt;
    document.attachEvent(&amp;quot;onreadystatechange&amp;quot;, fixIEScroll);&lt;br /&gt;
    document.attachEvent(&amp;quot;onresize&amp;quot;, fixIEScroll);&lt;br /&gt;
 &lt;br /&gt;
    // In print IE (7?) does not like line-height&lt;br /&gt;
    appendCSS( &#039;@media print { sup, sub, p, .documentDescription { line-height: normal; }}&#039;);&lt;br /&gt;
 &lt;br /&gt;
    // IE overflow bug&lt;br /&gt;
    appendCSS(&#039;div.overflowbugx { overflow-x: scroll !important; overflow-y: hidden !important; } div.overflowbugy { overflow-y: scroll !important; overflow-x: hidden !important; }&#039;);&lt;br /&gt;
 &lt;br /&gt;
    // IE zoomfix&lt;br /&gt;
    //Use to fix right floating div/table inside tables.&lt;br /&gt;
    appendCSS(&#039;.iezoomfix div, .iezoomfix table { zoom: 1;}&#039; );&lt;br /&gt;
 &lt;br /&gt;
    //Import scripts specific to Internet Explorer 6&lt;br /&gt;
    if (navigator.appVersion.substr(22, 1) == &amp;quot;6&amp;quot;) {&lt;br /&gt;
        importScript(&amp;quot;MediaWiki:Common.js/IE60Fixes.js&amp;quot;)&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
/* Test if an element has a certain class **************************************&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;
 &lt;br /&gt;
/** Collapsible tables *********************************************************&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.className = &amp;quot;collapseButton&amp;quot;;  //Styles are declared in Common.css&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;#&amp;quot; );&lt;br /&gt;
            addHandler( ButtonLink,  &amp;quot;click&amp;quot;, new Function( &amp;quot;evt&amp;quot;, &amp;quot;collapseTable(&amp;quot; + tableIndex + &amp;quot; ); return killEvt( evt );&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;
        else if ( hasClass( NavigationBoxes[i], &amp;quot;innercollapse&amp;quot; ) ) {&lt;br /&gt;
            var element = NavigationBoxes[i];&lt;br /&gt;
            while (element = element.parentNode) {&lt;br /&gt;
                if ( hasClass( element, &amp;quot;outercollapse&amp;quot; ) ) {&lt;br /&gt;
                    collapseTable ( i );&lt;br /&gt;
                    break;&lt;br /&gt;
                }&lt;br /&gt;
            }&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;
 *  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 = &#039;[&#039; + collapseCaption + &#039;]&#039;;&lt;br /&gt;
var NavigationBarShow = &#039;[&#039; + expandCaption + &#039;]&#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, &#039;NavContent&#039;) || hasClass(NavChild, &#039;NavPic&#039;)) {&lt;br /&gt;
                NavChild.style.display = &#039;none&#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, &#039;NavContent&#039;) || hasClass(NavChild, &#039;NavPic&#039;)) {&lt;br /&gt;
                NavChild.style.display = &#039;block&#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 = &#039;NavToggle&#039;;&lt;br /&gt;
            NavToggle.setAttribute(&#039;id&#039;, &#039;NavToggle&#039; + indexNavigationBar);&lt;br /&gt;
            NavToggle.setAttribute(&#039;href&#039;, &#039;javascript:toggleNavigationBar(&#039; + indexNavigationBar + &#039;);&#039;);&lt;br /&gt;
 &lt;br /&gt;
            var isCollapsed = hasClass( NavFrame, &amp;quot;collapsed&amp;quot; );&lt;br /&gt;
            /*&lt;br /&gt;
             * Check if any children are already hidden.  This loop is here for backwards compatibility:&lt;br /&gt;
             * the old way of making NavFrames start out collapsed was to manually add style=&amp;quot;display:none&amp;quot;&lt;br /&gt;
             * to all the NavPic/NavContent elements.  Since this was bad for accessibility (no way to make&lt;br /&gt;
             * the content visible without JavaScript support), the new recommended way is to add the class&lt;br /&gt;
             * &amp;quot;collapsed&amp;quot; to the NavFrame itself, just like with collapsible tables.&lt;br /&gt;
             */&lt;br /&gt;
            for (var NavChild = NavFrame.firstChild; NavChild != null &amp;amp;&amp;amp; !isCollapsed; NavChild = NavChild.nextSibling) {&lt;br /&gt;
                if ( hasClass( NavChild, &#039;NavPic&#039; ) || hasClass( NavChild, &#039;NavContent&#039; ) ) {&lt;br /&gt;
                    if ( NavChild.style.display == &#039;none&#039; ) {&lt;br /&gt;
                        isCollapsed = true;&lt;br /&gt;
                    }&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            if (isCollapsed) {&lt;br /&gt;
                for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) {&lt;br /&gt;
                    if ( hasClass( NavChild, &#039;NavPic&#039; ) || hasClass( NavChild, &#039;NavContent&#039; ) ) {&lt;br /&gt;
                        NavChild.style.display = &#039;none&#039;;&lt;br /&gt;
                    }&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            var NavToggleText = document.createTextNode(isCollapsed ? NavigationBarShow : NavigationBarHide);&lt;br /&gt;
            NavToggle.appendChild(NavToggleText);&lt;br /&gt;
 &lt;br /&gt;
            // Find the NavHead and attach the toggle link (Must be this complicated because Moz&#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;
                    NavToggle.style.color = NavFrame.childNodes[j].style.color;&lt;br /&gt;
                    NavFrame.childNodes[j].appendChild(NavToggle);&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            NavFrame.setAttribute(&#039;id&#039;, &#039;NavFrame&#039; + indexNavigationBar);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
addOnloadHook( createNavigationBarToggleButton );&lt;br /&gt;
 &lt;br /&gt;
// Define ta for now. Bugzilla 23175&lt;br /&gt;
window.ta = [];&lt;br /&gt;
 &lt;br /&gt;
// &amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>FullSpektr</name></author>
	</entry>
</feed>