<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>http://helpdesk.ieinternet.com/help/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3ACommon.js</id>
	<title>MediaWiki:Common.js - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://helpdesk.ieinternet.com/help/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3ACommon.js"/>
	<link rel="alternate" type="text/html" href="http://helpdesk.ieinternet.com/help/index.php?title=MediaWiki:Common.js&amp;action=history"/>
	<updated>2026-04-07T01:29:42Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.1</generator>
	<entry>
		<id>http://helpdesk.ieinternet.com/help/index.php?title=MediaWiki:Common.js&amp;diff=59&amp;oldid=prev</id>
		<title>Peter: Created page with '//&lt;source lang=&quot;javascript&quot;&gt;   /*  * Description: Redirects from /User:UserName/skin.js or .css to the user's actual skin page  * Maintainer: Cacycle  */ if (wgArticleId == 0 &amp;&amp; …'</title>
		<link rel="alternate" type="text/html" href="http://helpdesk.ieinternet.com/help/index.php?title=MediaWiki:Common.js&amp;diff=59&amp;oldid=prev"/>
		<updated>2010-04-26T11:40:18Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;#039;//&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;   &lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;* Description: Redirects from /User:UserName/skin.js or .css to the user&amp;#039;s actual skin page  * Maintainer: Cacycle: &lt;/span&gt; if (wgArticleId == 0 &amp;amp;&amp;amp; …&amp;#039;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;//&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
/*&lt;br /&gt;
 * Description: Redirects from /User:UserName/skin.js or .css to the user's actual skin page&lt;br /&gt;
 * Maintainer: Cacycle&lt;br /&gt;
 */&lt;br /&gt;
if (wgArticleId == 0 &amp;amp;&amp;amp; wgUserName) {&lt;br /&gt;
  var slash = wgPageName.indexOf('/');&lt;br /&gt;
  var norm = wgPageName.substr(0, slash) + wgPageName.substr(slash).toLowerCase();&lt;br /&gt;
  var test = 'User:' + wgUserName.replace(/ /g, '_') + '/skin.';&lt;br /&gt;
  var ext = null;&lt;br /&gt;
  if (norm == test + 'js') ext = 'js';&lt;br /&gt;
  else if (norm == test + 'css') ext = 'css';&lt;br /&gt;
  if (ext != null) window.location.href = window.location.href.replace(/\/skin.(css|js)/i, '/' + skin + '.' + ext);&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
/** extract a URL parameter from the current URL **********&lt;br /&gt;
 * From [[en:User:Lupin/autoedit.js]]&lt;br /&gt;
 *&lt;br /&gt;
 * paramName  : the name of the parameter to extract&lt;br /&gt;
 */&lt;br /&gt;
function getURLParamValue( paramName, url) &lt;br /&gt;
{&lt;br /&gt;
 if (typeof (url) == 'undefined'  || url === null) url = document.location.href;&lt;br /&gt;
 var cmdRe=RegExp( '[&amp;amp;?]' + paramName + '=([^&amp;amp;#]*)' ); // Stop at hash&lt;br /&gt;
 var m=cmdRe.exec(url);&lt;br /&gt;
 if (m &amp;amp;&amp;amp; m.length &amp;gt; 1) return decodeURIComponent(m[1]);&lt;br /&gt;
 return null;&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
/** &amp;amp;withJS= URL parameter *******&lt;br /&gt;
 * Allow to try custom scripts from MediaWiki space &lt;br /&gt;
 * without editing [[Special:Mypage/monobook.js]]&lt;br /&gt;
 */&lt;br /&gt;
var extraJS = getURLParamValue(&amp;quot;withJS&amp;quot;);&lt;br /&gt;
if ( extraJS &amp;amp;&amp;amp; extraJS.match(&amp;quot;^MediaWiki:[^&amp;amp;&amp;lt;&amp;gt;=%]*\.js$&amp;quot;) ) {&lt;br /&gt;
  importScript(extraJS);&lt;br /&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;
else if (wgPageName == &amp;quot;Special:Watchlist&amp;quot;) //watchlist scripts&lt;br /&gt;
{&lt;br /&gt;
    importScript(&amp;quot;MediaWiki:Common.js/watchlist.js&amp;quot;)&lt;br /&gt;
}&lt;br /&gt;
if( wgNamespaceNumber == 6 ) {&lt;br /&gt;
    importScript('MediaWiki:Common.js/file.js');&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
/** For sysops and accountcreators *****************************************&lt;br /&gt;
 *&lt;br /&gt;
 *  Description: Allows for sysop-specific Javascript at [[MediaWiki:Sysop.js]],&lt;br /&gt;
 *               and accountcreator-specific CSS at [[MediaWiki:Accountcreator.css]].&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;
    else if ( wgUserGroups[g] == &amp;quot;accountcreator&amp;quot; ) {&lt;br /&gt;
      importStylesheet(&amp;quot;MediaWiki:Accountcreator.css&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
/** WikiMiniAtlas *******************************************************&lt;br /&gt;
  *&lt;br /&gt;
  *  Description: WikiMiniAtlas is a popup click and drag world map.&lt;br /&gt;
  *               This script causes all of our coordinate links to display the WikiMiniAtlas popup button.&lt;br /&gt;
  *               The script itself is located on meta because it is used by many projects.&lt;br /&gt;
  *               See [[Meta:WikiMiniAtlas]] for more information. &lt;br /&gt;
  *  Maintainers: [[User:Dschwen]]&lt;br /&gt;
  */&lt;br /&gt;
 &lt;br /&gt;
if (wgServer == &amp;quot;https://secure.wikimedia.org&amp;quot;) {&lt;br /&gt;
    var metaBase = &amp;quot;https://secure.wikimedia.org/wikipedia/meta&amp;quot;;&lt;br /&gt;
} else {&lt;br /&gt;
    var metaBase = &amp;quot;http://meta.wikimedia.org&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
importScriptURI(metaBase+&amp;quot;/w/index.php?title=MediaWiki:Wikiminiatlas.js&amp;amp;action=raw&amp;amp;ctype=text/javascript&amp;amp;smaxage=21600&amp;amp;maxage=86400&amp;quot;)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
/** Mobile Redirect Helper ************************************************&lt;br /&gt;
 *&lt;br /&gt;
 *  Redirects to the mobile-optimized gateway at en.m.wikimedia.org&lt;br /&gt;
 *  for viewers on iPhone, iPod Touch, Palm Pre, and Android devices.&lt;br /&gt;
 *&lt;br /&gt;
 *  You can turn off the redirect by setting the cookie &amp;quot;stopMobileRedirect=true&amp;quot;&lt;br /&gt;
 *&lt;br /&gt;
 *  This code cannot be imported, because the JS only loads after all other files&lt;br /&gt;
 *  and this was causing major issues for users with mobile devices. Must be loaded&lt;br /&gt;
 *  *before* the images and etc of the page on all mobile devices.&lt;br /&gt;
 *&lt;br /&gt;
 *  Maintainer: [[User:Brion VIBBER]], [[User:hcatlin]]&lt;br /&gt;
 */&lt;br /&gt;
if (/(Android|iPhone|iPod|webOS|NetFront|Opera Mini|SEMC-Browser|PlayStation Portable|Nintendo Wii)/.test(navigator.userAgent)) {&lt;br /&gt;
 &lt;br /&gt;
  var wgMainPageName = 'Main_Page';&lt;br /&gt;
 &lt;br /&gt;
  var stopMobileRedirectCookieExists = function() {&lt;br /&gt;
    return (document.cookie.indexOf(&amp;quot;stopMobileRedirect=true&amp;quot;) &amp;gt;= 0);&lt;br /&gt;
  }&lt;br /&gt;
 &lt;br /&gt;
  var mobileSiteLink = function() {&lt;br /&gt;
    if (wgCanonicalNamespace == 'Special' &amp;amp;&amp;amp; wgCanonicalSpecialPageName == 'Search') {&lt;br /&gt;
        var pageLink = '?search=' + encodeURIComponent(document.getElementById('searchText').value);&lt;br /&gt;
    } else if (wgPageName == wgMainPageName) {&lt;br /&gt;
        var pageLink = '::Home'; // Special case&lt;br /&gt;
    } else {&lt;br /&gt;
        var pageLink = encodeURIComponent(wgPageName).replace('%2F','/').replace('%3A',':');&lt;br /&gt;
    }&lt;br /&gt;
    return 'http://' + wgContentLanguage + '.m.wikipedia.org/wiki/' + pageLink + &amp;quot;?wasRedirected=true&amp;quot;&lt;br /&gt;
  }&lt;br /&gt;
 &lt;br /&gt;
  if (!stopMobileRedirectCookieExists()) {&lt;br /&gt;
    document.location = mobileSiteLink();&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;
 &lt;br /&gt;
    /**&lt;br /&gt;
     * Remove need for CSS hacks regarding MSIE and IPA.&lt;br /&gt;
     */&lt;br /&gt;
    if (document.createStyleSheet) {&lt;br /&gt;
        document.createStyleSheet().addRule('.IPA', 'font-family: &amp;quot;Doulos SIL&amp;quot;, &amp;quot;Charis SIL&amp;quot;, Gentium, &amp;quot;DejaVu Sans&amp;quot;, Code2000, &amp;quot;TITUS Cyberbit Basic&amp;quot;, &amp;quot;Arial Unicode MS&amp;quot;, &amp;quot;Lucida Sans Unicode&amp;quot;, &amp;quot;Chrysanthi Unicode&amp;quot;;');&lt;br /&gt;
    }&lt;br /&gt;
 &lt;br /&gt;
    // In print IE (7?) does not like line-height&lt;br /&gt;
    appendCSS( '@media print { sup, sub, p, .documentDescription { line-height: normal; }}');&lt;br /&gt;
 &lt;br /&gt;
    // IE overflow bug&lt;br /&gt;
    appendCSS('div.overflowbugx { overflow-x: scroll !important; overflow-y: hidden !important; } div.overflowbugy { overflow-y: scroll !important; overflow-x: hidden !important; }');&lt;br /&gt;
 &lt;br /&gt;
    // IE zoomfix&lt;br /&gt;
    //Use to fix right floating div/table inside tables.&lt;br /&gt;
    appendCSS('.iezoomfix div, .iezoomfix table { zoom: 1;}' );&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;
 &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;
/** Interwiki links to featured articles ***************************************&lt;br /&gt;
 *&lt;br /&gt;
 *  Description: Highlights interwiki links to featured articles (or&lt;br /&gt;
 *               equivalents) by changing the bullet before the interwiki link&lt;br /&gt;
 *               into a star.&lt;br /&gt;
 *  Maintainers: [[User:R. Koot]]&lt;br /&gt;
 */&lt;br /&gt;
 &lt;br /&gt;
function LinkFA() &lt;br /&gt;
{&lt;br /&gt;
    if ( document.getElementById( &amp;quot;p-lang&amp;quot; ) ) {&lt;br /&gt;
        var InterwikiLinks = document.getElementById( &amp;quot;p-lang&amp;quot; ).getElementsByTagName( &amp;quot;li&amp;quot; );&lt;br /&gt;
 &lt;br /&gt;
        for ( var i = 0; i &amp;lt; InterwikiLinks.length; i++ ) {&lt;br /&gt;
            if ( document.getElementById( InterwikiLinks[i].className + &amp;quot;-fa&amp;quot; ) ) {&lt;br /&gt;
                InterwikiLinks[i].className += &amp;quot; FA&amp;quot;&lt;br /&gt;
                InterwikiLinks[i].title = &amp;quot;This is a featured article in another language.&amp;quot;;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
addOnloadHook( LinkFA );&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;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;
        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 = '[' + collapseCaption + ']';&lt;br /&gt;
var NavigationBarShow = '[' + expandCaption + ']';&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, 'NavContent') || hasClass(NavChild, 'NavPic')) {&lt;br /&gt;
                NavChild.style.display = 'none';&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, 'NavContent') || hasClass(NavChild, 'NavPic')) {&lt;br /&gt;
                NavChild.style.display = 'block';&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 = 'NavToggle';&lt;br /&gt;
            NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar);&lt;br /&gt;
            NavToggle.setAttribute('href', 'javascript:toggleNavigationBar(' + indexNavigationBar + ');');&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, 'NavPic' ) || hasClass( NavChild, 'NavContent' ) ) {&lt;br /&gt;
                    if ( NavChild.style.display == 'none' ) {&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, 'NavPic' ) || hasClass( NavChild, 'NavContent' ) ) {&lt;br /&gt;
                        NavChild.style.display = 'none';&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'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('id', 'NavFrame' + indexNavigationBar);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
addOnloadHook( createNavigationBarToggleButton );&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
/** Main Page layout fixes *********************************************************&lt;br /&gt;
 *&lt;br /&gt;
 *  Description: Adds an additional link to the complete list of languages available.&lt;br /&gt;
 *  Maintainers: [[User:AzaToth]], [[User:R. Koot]], [[User:Alex Smotrov]]&lt;br /&gt;
 */&lt;br /&gt;
 &lt;br /&gt;
if (wgPageName == 'Main_Page' || wgPageName == 'Talk:Main_Page') &lt;br /&gt;
    addOnloadHook(function () {&lt;br /&gt;
        addPortletLink('p-lang', 'http://meta.wikimedia.org/wiki/List_of_Wikipedias',&lt;br /&gt;
                 'Complete list', 'interwiki-completelist', 'Complete list of Wikipedias')&lt;br /&gt;
        var nstab = document.getElementById('ca-nstab-main')&lt;br /&gt;
        if (nstab &amp;amp;&amp;amp; wgUserLanguage=='en') {&lt;br /&gt;
            while (nstab.firstChild) nstab = nstab.firstChild&lt;br /&gt;
            nstab.nodeValue = 'Main Page'&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
/** Table sorting fixes ************************************************&lt;br /&gt;
  *&lt;br /&gt;
  *  Description: Disables code in table sorting routine to set classes on even/odd rows&lt;br /&gt;
  *  Maintainers: [[User:Random832]]&lt;br /&gt;
  */&lt;br /&gt;
 &lt;br /&gt;
ts_alternate_row_colors = false;&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
/***** uploadwizard_newusers ********&lt;br /&gt;
 * Switches in a message for non-autoconfirmed users at [[Wikipedia:Upload]]&lt;br /&gt;
 *&lt;br /&gt;
 *  Maintainers: [[User:Krimpet]]&lt;br /&gt;
 ****/&lt;br /&gt;
function uploadwizard_newusers() {&lt;br /&gt;
  if (wgNamespaceNumber == 4 &amp;amp;&amp;amp; wgTitle == &amp;quot;Upload&amp;quot; &amp;amp;&amp;amp; wgAction == &amp;quot;view&amp;quot;) {&lt;br /&gt;
    var oldDiv = document.getElementById(&amp;quot;autoconfirmedusers&amp;quot;),&lt;br /&gt;
        newDiv = document.getElementById(&amp;quot;newusers&amp;quot;);&lt;br /&gt;
    if (oldDiv &amp;amp;&amp;amp; newDiv) {&lt;br /&gt;
      if (typeof wgUserGroups == &amp;quot;object&amp;quot; &amp;amp;&amp;amp; wgUserGroups) {&lt;br /&gt;
        for (i = 0; i &amp;lt; wgUserGroups.length; i++) {&lt;br /&gt;
          if (wgUserGroups[i] == &amp;quot;autoconfirmed&amp;quot;) {&lt;br /&gt;
            oldDiv.style.display = &amp;quot;block&amp;quot;;&lt;br /&gt;
            newDiv.style.display = &amp;quot;none&amp;quot;;&lt;br /&gt;
            return;&lt;br /&gt;
          }&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
      oldDiv.style.display = &amp;quot;none&amp;quot;;&lt;br /&gt;
      newDiv.style.display = &amp;quot;block&amp;quot;;&lt;br /&gt;
      return;&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
addOnloadHook(uploadwizard_newusers);&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
/** IPv6 AAAA connectivity testing **/&lt;br /&gt;
 &lt;br /&gt;
var __ipv6wwwtest_factor = 100;&lt;br /&gt;
var __ipv6wwwtest_done = 0;&lt;br /&gt;
if ((wgServer != &amp;quot;https://secure.wikimedia.org&amp;quot;) &amp;amp;&amp;amp; (Math.floor(Math.random()*__ipv6wwwtest_factor)==42)) {&lt;br /&gt;
    importScript(&amp;quot;MediaWiki:Common.js/IPv6.js&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
/** Magic editintros ****************************************************&lt;br /&gt;
 *&lt;br /&gt;
 *  Description: Adds editintros on disambiguation pages and BLP pages.&lt;br /&gt;
 *  Maintainers: [[User:RockMFR]]&lt;br /&gt;
 */&lt;br /&gt;
 &lt;br /&gt;
function addEditIntro(name)&lt;br /&gt;
{&lt;br /&gt;
  var el = document.getElementById('ca-edit');&lt;br /&gt;
  if (!el)&lt;br /&gt;
    return;&lt;br /&gt;
  el = el.getElementsByTagName('a')[0];&lt;br /&gt;
  if (el)&lt;br /&gt;
    el.href += '&amp;amp;editintro=' + name;&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
if (wgNamespaceNumber == 0) {&lt;br /&gt;
  addOnloadHook(function(){&lt;br /&gt;
    if (document.getElementById('disambigbox'))&lt;br /&gt;
      addEditIntro('Template:Disambig_editintro');&lt;br /&gt;
  });&lt;br /&gt;
 &lt;br /&gt;
  addOnloadHook(function(){&lt;br /&gt;
    var cats = document.getElementById('mw-normal-catlinks');&lt;br /&gt;
    if (!cats)&lt;br /&gt;
      return;&lt;br /&gt;
    cats = cats.getElementsByTagName('a');&lt;br /&gt;
    for (var i = 0; i &amp;lt; cats.length; i++) {&lt;br /&gt;
      if (cats[i].title == 'Category:Living people' || cats[i].title == 'Category:Possibly living people') {&lt;br /&gt;
        addEditIntro('Template:BLP_editintro');&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;
 * Description: Stay on the secure server as much as possible&lt;br /&gt;
 * Maintainers: [[User:TheDJ]]&lt;br /&gt;
 */&lt;br /&gt;
if(wgServer == 'https://secure.wikimedia.org') {&lt;br /&gt;
    importScript( 'MediaWiki:Common.js/secure.js');&lt;br /&gt;
}&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;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Peter</name></author>
	</entry>
</feed>