Still working to recover. Please don't edit quite yet.

Difference between revisions of "MediaWiki:Monobook.js/test"

From Anarchopedia
Jump to: navigation, search
(Página substituída por '//<pre><nowiki> //Personalizado por Sir Lestaty de Lioncourt, para w:pt:User:Sir Lestaty de Lioncourt/Monobook-Suite //http://pt.wikipedia.org/wiki/Usuário:Sir Lestat...')
(Desfeita a edição 2404 de Sir Lestaty de Lioncourt (Discussão))
Line 1: Line 1:
//<pre><nowiki>
+
/* Any JavaScript here will be loaded for all users on every page load. */
//Personalizado por Sir Lestaty de Lioncourt, para [[w:pt:User:Sir Lestaty de Lioncourt/Monobook-Suite]]
+
//http://pt.wikipedia.org/wiki/Usuário:Sir Lestaty de Lioncourt/Monobook-Suite
+
  
  
document.write('<'+'script src="http://pt.wikipedia.org/w/index.php?'  
+
/** Tooltips ********************************************************************************
+  'title=User:Avalon/monobook-full.js'
+
  *  Descrição: JS para exibir os "tooltips" da Wikipédia.
+ '&action=raw&ctype=text/javascript&dontcountme=s"'  
+
  ********************************************************************************************/
+ 'type="text/javascript"><'+'/script>');
+
ta = new Object();
 +
 +
ta['pt-userpage'] = new Array('.','Minha página de usuário');
 +
ta['pt-anonuserpage'] = new Array('.','O número IP da página de usuário que está sendo editada é');
 +
ta['pt-mytalk'] = new Array('n','Minha discussão');
 +
ta['pt-anontalk'] = new Array('n','Discussão sobre este número IP');
 +
ta['pt-preferences'] = new Array('','Minhas preferências');
 +
ta['pt-watchlist'] = new Array('l','Lista de páginas vigiadas');
 +
ta['pt-mycontris'] = new Array('y','Lista de minhas contribuições');
 +
ta['pt-login'] = new Array('o','Você é encorajado a registrar-se ou autenticar-se, mas isso não é mandatório.');
 +
ta['pt-anonlogin'] = new Array('o','Você é encorajado a registrar-se ou autenticar-se, mas isso não é mandatório.');
 +
ta['pt-logout'] = new Array('o','Sair');
 +
ta['ca-talk'] = new Array('t','Discussão sobre o conteúdo da página');
 +
ta['ca-edit'] = new Array('e','Você pode editar esta página. Por favor, use o botão Mostrar Previsão antes de salvar.');
 +
ta['ca-addsection'] = new Array('+','Adicionar comentário a essa discussão');
 +
  ta['ca-viewsource'] = new Array('e','Esta página está protegida; você pode exibir seu código, no entanto.');
 +
ta['ca-history'] = new Array('h','Edições anteriores desta página.');
 +
  ta['ca-protect'] = new Array('=','Proteger esta página');
 +
ta['ca-delete'] = new Array('d','Apagar esta página');
 +
  ta['ca-undelete'] = new Array('d','Restaurar edições feitas a esta página antes de sua eliminação');
 +
ta['ca-move'] = new Array('m','Renomear esta página');
 +
ta['ca-nomove'] = new Array('','Você não tem permissões para mover esta página');
 +
ta['ca-watch'] = new Array('w','Adicionar esta página aos artigos vigiados');
 +
ta['ca-unwatch'] = new Array('w','Remover esta página dos artigos vigiados');
 +
ta['search'] = new Array('f','Procurar neste wiki');
 +
ta['p-logo'] = new Array('','Página principal');
 +
ta['n-mainpage'] = new Array('z','Visita a página principal');
 +
ta['n-portal'] = new Array('','Sobre o projeto e coisas que você poder fazer aqui');
 +
ta['n-currentevents'] = new Array('','Informação temática sobre eventos atuais');
 +
ta['n-recentchanges'] = new Array('r','A lista de mudanças recentes neste wiki');
 +
ta['n-randompage'] = new Array('x','Carregar página aleatória');
 +
ta['n-help'] = new Array('','Um local reservado para auxílio');
 +
ta['n-sitesupport'] = new Array('','Ajude-nos');
 +
ta['t-whatlinkshere'] = new Array('j','Lista de todas as páginas que ligam-se a esta');
 +
ta['t-recentchangeslinked'] = new Array('k','Mudanças recentes em páginas relacionadas a esta');
 +
ta['feed-rss'] = new Array('','Feed RSS desta página');
 +
ta['feed-atom'] = new Array('','Feed Atom desta página');
 +
ta['t-contributions'] = new Array('','Ver as contribuições deste usuário');
 +
ta['t-emailuser'] = new Array('','Enviar um e-mail para este usuário');
 +
ta['t-upload'] = new Array('u','Carregar imagens ou arquivos de mídia');
 +
ta['t-specialpages'] = new Array('q','Lista de páginas especiais');
 +
ta['ca-nstab-main'] = new Array('c','Ver o conteúdo da página');
 +
ta['ca-nstab-user'] = new Array('c','Ver a página de usuário');
 +
ta['ca-nstab-media'] = new Array('c','Ver a página de mídia');
 +
ta['ca-nstab-special'] = new Array('','Esta é uma página especial, não pode ser editada.');
 +
ta['ca-nstab-wp'] = new Array('a','Ver a página de projeto');
 +
ta['ca-nstab-image'] = new Array('c','Ver a página de imagem');
 +
ta['ca-nstab-mediawiki'] = new Array('c','Ver a mensagem do sistema');
 +
ta['ca-nstab-template'] = new Array('c','Ver a predefinição');
 +
ta['ca-nstab-help'] = new Array('c','Ver a página de ajuda');
 +
ta['ca-nstab-category'] = new Array('c','Ver a página da categoria');
 +
ta['ca-nstab-portal'] = new Array('p','Ver o Portal');
  
//</nowiki></pre>
+
 
 +
 +
/** Helpers ************************************************************************
 +
  *  Descrição:
 +
  *      Autor:
 +
  ********************************************************************************************/
 +
if (window.showModalDialog && document.compatMode && document.compatMode == "CSS1Compat")
 +
{
 +
  var oldWidth;
 +
  var docEl = document.documentElement;
 +
 +
  function fixIEScroll()
 +
  {
 +
    if (!oldWidth || docEl.clientWidth > oldWidth)
 +
      doFixIEScroll();
 +
    else
 +
      setTimeout(doFixIEScroll, 1);
 +
 +
    oldWidth = docEl.clientWidth;
 +
  }
 +
 +
  function doFixIEScroll() {
 +
    docEl.style.overflowX = (docEl.scrollWidth - docEl.clientWidth < 4) ? "hidden" : "";
 +
  }
 +
 +
  document.attachEvent("onreadystatechange", fixIEScroll);
 +
  attachEvent("onresize", fixIEScroll);
 +
}
 +
 +
function addLoadEvent(func)
 +
{
 +
  if (window.addEventListener)
 +
    window.addEventListener("load", func, false);
 +
  else if (window.attachEvent)
 +
    window.attachEvent("onload", func);
 +
}
 +
 
 +
 
 +
 
 +
/** Link destaque ***************************************************************************
 +
  *  Descrição: Adiciona estrela ao lado da ligação dos artigos destacados das outras Wikipédias
 +
  ********************************************************************************************/
 +
function LinkFA()
 +
{
 +
    if ( document.getElementById( "p-lang" ) ) {
 +
        var InterwikiLinks = document.getElementById( "p-lang" ).getElementsByTagName( "li" );
 +
 +
        for ( var i = 0; i < InterwikiLinks.length; i++ ) {
 +
            if ( document.getElementById( InterwikiLinks[i].className + "-fa" ) ) {
 +
                InterwikiLinks[i].className += " FA"
 +
                InterwikiLinks[i].title = "Este artigo recebeu estatuto de destaque.";
 +
            }
 +
        }
 +
    }
 +
}
 +
 +
addOnloadHook( LinkFA );
 +
 
 +
 
 +
 
 +
 +
/** Barra de navegação **********************************************************************
 +
  *  Descrição:
 +
  ********************************************************************************************/
 +
// set up the words in your language
 +
var NavigationBarHide = '[ Esconder ]';
 +
var NavigationBarShow = '[ Expandir ]';
 +
 +
// 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 = 1;
 +
 +
 +
// 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 (NavChild.className == 'NavPic') {
 +
                NavChild.style.display = 'none';
 +
            }
 +
            if (NavChild.className == '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 (NavChild.className == 'NavPic') {
 +
                NavChild.style.display = 'block';
 +
            }
 +
            if (NavChild.className == '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
 +
    for(
 +
            var i=0;
 +
            NavFrame = document.getElementsByTagName("div")[i];
 +
            i++
 +
        ) {
 +
        // if found a navigation bar
 +
        if (NavFrame.className == "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 (NavFrame.childNodes[j].className == "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);
 +
        }
 +
    }
 +
 +
}
 +
 +
addLoadEvent(createNavigationBarToggleButton);
 +
 
 +
 
 +
 +
/** Correlatos ******************************************************************************
 +
  *  Descrição:Correlatos no menu lateral. Código copiado do de:wikt
 +
  ********************************************************************************************/
 +
// InterProjekt-Links (vgl. [[MediaZilla:708]])
 +
document.write('<style type="text/css">#interProject {display: none; speak: none;} #p-tb .pBody {padding-right: 0;}<\/style>');
 +
function iProject() {
 +
  if (document.getElementById("interProject")) {
 +
  var iProject = document.getElementById("interProject").innerHTML;
 +
  var interProject = document.createElement("div");
 +
  interProject.style.marginTop = "0.7em";
 +
  interProject.innerHTML = '<h5>Correlatos<\/h5><div class="pBody">'+iProject+'<\/div>';
 +
  document.getElementById("p-tb").appendChild(interProject);
 +
  }
 +
}
 +
hookEvent("load", iProject);
 +
 +
 
 +
/** Importar módulos JavaScript e CSS *******************************************************
 +
  *    Origem: [[:w:en:MediaWiki:Common.js]]
 +
  * Descrição: Simplifica o código para instalação de módulos pessoais JavaScript e CSS
 +
  *    Autor: [[:w:en:User:AzaToth]]
 +
  ********************************************************************************************/
 +
importedScripts = {}; // object keeping track of included scripts, so a script ain't included twice
 +
function importScript( page ) {
 +
    if( importedScripts[page] ) {
 +
        return;
 +
    }
 +
    importedScripts[page] = true;
 +
    var url = wgScriptPath
 +
            + '/index.php?title='
 +
            + encodeURIComponent( page.replace( / /g, '_' ) )
 +
            + '&action=raw&ctype=text/javascript';
 +
    var scriptElem = document.createElement( 'script' );
 +
    scriptElem.setAttribute( 'src' , url );
 +
    scriptElem.setAttribute( 'type' , 'text/javascript' );
 +
    document.getElementsByTagName( 'head' )[0].appendChild( scriptElem );
 +
}
 +
 +
function importStylesheet( page ) {
 +
    var sheet = '@import "'
 +
              + wgScriptPath
 +
              + '/index.php?title='
 +
              + encodeURIComponent( page.replace( / /g, '_' ) )
 +
              + '&action=raw&ctype=text/css";'
 +
    var styleElem = document.createElement( 'style' );
 +
    styleElem.setAttribute( 'type' , 'text/css' );
 +
    styleElem.appendChild( document.createTextNode( sheet ) );
 +
    document.getElementsByTagName( 'head' )[0].appendChild( styleElem );
 +
}
 +
 
 +
 
 +
/** Importar módulos JavaScript de páginas da fr.wikipedia.org ******************************
 +
  * Obs: Importar os demais scripts utilizados da página francesa e utilizar o
 +
  * importScript() acima, que opossui a mesma função.
 +
  ********************************************************************************************/
 +
function loadJs(page)
 +
{
 +
  document.write('<script type="text/javascript" src="' +
 +
                'http://fr.wikipedia.org/w/index.php?title=' + page +
 +
                '&action=raw&ctype=text/javascript&dontcountme=s"></script>');
 +
}
 +
 
 +
 
 +
 
 +
/** Altera o título da página **************************************************************
 +
  *    Origem: [[:w:en:MediaWiki:Common.js]]
 +
  * Descrição: A função procura por um banner como:
 +
  * <nowiki><div id="RealTitleBanner">Div that is hidden</nowiki>
 +
  *  <nowiki><span id="RealTitle">title</span></nowiki>
 +
  * <nowiki></div></nowiki>
 +
  * An element with id=DisableRealTitle disables the function.
 +
  ********************************************************************************************/
 +
 
 +
rewritePageH1 = function() {
 +
    try {
 +
        var realTitleBanner = document.getElementById("RealTitleBanner");
 +
        if (realTitleBanner) {
 +
            if (!document.getElementById("DisableRealTitle")) {
 +
                var realTitle = document.getElementById("RealTitle");
 +
                var h1 = document.getElementsByTagName("h1")[0];
 +
                if (realTitle && h1) {
 +
                    h1.innerHTML = realTitle.innerHTML;
 +
                    realTitleBanner.style.display = "none";
 +
                }
 +
            }
 +
        }
 +
    }
 +
catch (e) {
 +
    /* Algo deu errado. */
 +
    }
 +
}
 +
addOnloadHook(rewritePageH1);
 +
 
 +
 
 +
 
 +
/** Pesquisa em vários motores de busca *****************************************************
 +
  *    Origem: [[:w:en:MediaWiki:Common.js]]
 +
  * Descrição: acrescenta um menu drop-down na página [[Especial:Search]] para pesquisar em vários motores de busca
 +
  *    Autor: [[:w:en:User:Gracenotes]]
 +
  ********************************************************************************************/
 +
if (wgPageName == "Especial:Search") {
 +
        var searchEngines = [];
 +
        addOnloadHook(SpecialSearchEnhanced);
 +
}
 +
 +
function SpecialSearchEnhanced() {
 +
        var createOption = function(site, action, mainQ, addQ, addV) {
 +
                var opt = document.createElement('option');
 +
                opt.appendChild(document.createTextNode(site));
 +
                searchEngines[searchEngines.length] = [action, mainQ, addQ, addV];
 +
                return opt;
 +
        }
 +
        var searchForm = document.forms['search'];
 +
        var selectBox = document.createElement('select');
 +
        selectBox.id = 'searchEngine';
 +
        searchForm.onsubmit = function() {
 +
                var optSelected = searchEngines[document.getElementById('searchEngine').selectedIndex];
 +
                searchForm.action = optSelected[0];
 +
                searchForm.lsearchbox.name = optSelected[1];
 +
                searchForm.title.value = optSelected[3];
 +
                searchForm.title.name = optSelected[2];
 +
        }
 +
        selectBox.appendChild(createOption('Wikipédia', wgScriptPath + '/index.php', 'search', 'title', 'Especial:Search'));
 +
        selectBox.appendChild(createOption('WikiWix', 'http://pt.wikiwix.com/', 'action', '', ''));
 +
        selectBox.appendChild(createOption('Google', 'http://www.google.pt/search', 'q', 'as_sitesearch', 'pt.wikipedia.org'));
 +
        selectBox.appendChild(createOption('Yahoo', 'http://search.yahoo.com/search', 'p', 'vs', 'pt.wikipedia.org'));
 +
        selectBox.appendChild(createOption('Windows Live', 'http://search.live.com/results.aspx', 'q', 'q1', 'site:http://pt.wikipedia.org'));
 +
 +
        searchForm.lsearchbox.style.marginLeft = '0px';
 +
        var lStat = document.getElementById('loadStatus');
 +
        lStat.parentNode.insertBefore(selectBox, lStat);
 +
}
 +
 
 +
 
 +
/** Wiki Mini Atlas ************************************************************************
 +
  *  Descrição: Mini atlas para artigos com geocoodernadas.
 +
  *      Autor: [[en:User:Dschwen]]
 +
  ********************************************************************************************/
 +
  document.write('<script type="text/javascript" src="'
 +
      + 'http://meta.wikimedia.org/w/index.php?title=MediaWiki:Wikiminiatlas.js'
 +
      + '&action=raw&ctype=text/javascript&dontcountme=s"></script>');
 +
  var wma_settings =
 +
  {
 +
      height : 400,
 +
      width : 600
 +
  }
 +
 
 +
if(document.getElementById && !document.location.href.match("action=edit") && !document.location.href.match("action=submit")) {
 +
function loadLoginForm() {
 +
  var box = document.getElementById("irclogin");
 +
  var html = null;
 +
  if(box) {
 +
    html  = '<form method="post" action="http://chatwikizine.memebot.com/cgi-bin/cgiirc/irc.cgi" target="_blank" id="loginform" name="loginform">';
 +
    html += '  <input type="hidden" id="interface" "name="interface" value="nonjs"/>';
 +
    html += '  <input type="text" size="25" id="Nickname" name="Nickname" value="' + nickify(wgUserName) + '" onfocus="clear_text(this)"/>';
 +
    html += '  <select id="metodo" name="metodo" onChange="setServer();"> <option value="Java">Java</option><option value="cgi">CGI</option> </select>';
 +
    html += '  <input type="hidden" name="Character_set" value="utf-8"/>';
 +
    html += '  <input type="hidden" id="rede" name="Server" value="irc.freenode.net"/>';
 +
    html += '  <input type="hidden" id="ch" name="Channel" value="#wikipedia-pt"/>';
 +
    html += '  <input type="submit" value="entrar" onclick="document.getElementById(\'loginform\').submit();"/>';
 +
    html += '</form>';
 +
    box.innerHTML = html;
 +
  }
 +
}
 +
function setServer() {
 +
  var selMetodo=document.getElementById("metodo");
 +
  var nmMetodo=selMetodo.options[selMetodo.selectedIndex].value;
 +
  if(nmMetodo == 'Java') {
 +
    document.getElementById("rede").name = 'h';
 +
    document.getElementById("Nickname").name = 'n';
 +
    document.getElementById("ch").name = 'ch';
 +
    document.getElementById("loginform").action = 'http://czat.computerserv.pl/';
 +
  }else if(nmMetodo == 'cgi') {
 +
        document.getElementById("rede").name = 'Server';
 +
        document.getElementById("Nickname").name = 'Nickname';
 +
        document.getElementById("ch").name = 'Channel';
 +
        document.getElementById("loginform").action = 'http://chatwikizine.memebot.com/cgi-bin/cgiirc/irc.cgi';
 +
        }
 +
  setjs();
 +
  }
 +
 
 +
 +
  function nickify(s) {
 +
    if(s == null) {
 +
      return "anon" + Math.floor(Math.random()*100);
 +
    }
 +
    s = s.toLowerCase();
 +
    s = s.replace(" ", "_");
 +
    s = s.replace(/á/g, 'a');
 +
    s = s.replace(/é/g, 'e');
 +
    s = s.replace(/í/g, 'i');
 +
    s = s.replace(/[óő]/g, 'o');
 +
    s = s.replace(/[úű]/g, 'u');
 +
    s = s.replace(/[^a-z0-9_-]/g, '');
 +
    return s;
 +
  }
 +
 +
  var irclogin_cleared = 0;
 +
  function clear_text(field) {
 +
    if(irclogin_cleared == 0) {
 +
      irclogin_cleared = 1;
 +
      field.value = "";
 +
    }
 +
  }
 +
  function setjs() {
 +
    if(navigator.product == 'Gecko') {
 +
      document.loginform["interface"].value = 'mozilla';
 +
    } else if(window.opera && document.childNodes) {
 +
      document.loginform["interface"].value = 'opera7';
 +
    } else if(navigator.appName == 'Microsoft Internet Explorer' &&
 +
      navigator.userAgent.indexOf("Mac_PowerPC") > 0) {
 +
      document.loginform["interface"].value = 'konqueror';
 +
    } else if(navigator.appName == 'Microsoft Internet Explorer') {
 +
      document.loginform["interface"].value = 'ie';
 +
    } else if(navigator.appName == 'Konqueror') {
 +
      document.loginform["interface"].value = 'konqueror';
 +
    } else if(window.opera) {
 +
      document.loginform["interface"].value = 'opera';
 +
    }
 +
  }
 +
 +
  addOnloadHook(loadLoginForm);
 +
}
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
/** Corretor de transparência de PNG em Win IE 5.5 & 6.*************************************
 +
  *      Autor: http://homepage.ntlworld.com/bobosola. Updated 18-Jan-2006.
 +
  *  Descrição: Mini atlas para artigos com geocoodernadas.
 +
                Adapted for Wikipedia by Remember_the_dot and Edokter
 +
                http://homepage.ntlworld.com/bobosola/pnginfo.htm states "This page contains more information for
 +
                the curious or those who wish to amend the script for special needs", which I take as permission to
 +
                modify or adapt this script freely. I release my changes into the public domain.
 +
  ********************************************************************************************/
 +
 +
function PngFix()
 +
{
 +
    if (document.body.filters)
 +
    {
 +
        var documentImages = document.images
 +
        for (var i = 0; i < documentImages.length;)
 +
        {
 +
            var img = documentImages[i]
 +
            var imgSrc = img.src
 +
            if (imgSrc.substr(imgSrc.length - 3).toLowerCase() == "png")
 +
            {
 +
                if (img.currentStyle.borderStyle == "none")
 +
                {
 +
                    img.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + encodeURI(imgSrc) + "')"
 +
                    img.src = "http://upload.wikimedia.org/wikipedia/commons/d/db/Must_left-click_image_again_before_saving.gif"
 +
                    i++
 +
                }
 +
                else
 +
                {
 +
                    var outerSpan = document.createElement("span")
 +
                    var innerSpan = document.createElement("span")
 +
                    var outerSpanStyle = outerSpan.style
 +
                    var innerSpanStyle = innerSpan.style
 +
                    var imgStyle = img.currentStyle
 +
 +
                    outerSpan.id = img.id
 +
                    outerSpan.className = img.className
 +
                    outerSpan.title = img.title
 +
                    outerSpanStyle.borderWidth = imgStyle.borderWidth
 +
                    outerSpanStyle.borderStyle = imgStyle.borderStyle
 +
                    outerSpanStyle.borderColor = imgStyle.borderColor
 +
                    outerSpanStyle.display = "inline-block"
 +
                    outerSpanStyle.fontSize = "0"
 +
                    outerSpanStyle.verticalAlign = "middle"
 +
                    if (img.parentElement.href) outerSpanStyle.cursor = "hand"
 +
 +
                    innerSpanStyle.width = img.width + "px"
 +
                    innerSpanStyle.height = img.height + "px"
 +
                    innerSpanStyle.display = "inline-block"
 +
                    innerSpanStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + encodeURI(imgSrc) + "')"
 +
 +
                    outerSpan.appendChild(innerSpan)
 +
                    img.parentNode.replaceChild(outerSpan, img)
 +
                }
 +
            }
 +
            else
 +
            {
 +
                i++
 +
            }
 +
        }
 +
    }
 +
}
 +
 +
if (navigator.appName == "Microsoft Internet Explorer")
 +
{
 +
  var version = navigator.appVersion.substr(22, 3)
 +
  if (version == "6.0" || version == "5.5")
 +
  {
 +
    window.attachEvent("onload", PngFix)
 +
  }
 +
}
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
/** Collapsible tables *********************************************************
 +
  *
 +
  *  Description: Allows tables to be collapsed, showing only the header. See
 +
  *              [[Wikipedia:NavFrame]].
 +
  *  Maintainers: [[User:R. Koot]]
 +
  */
 +
 
 +
 
 +
var autoCollapse = 2;
 +
var collapseCaption = "Esconder";
 +
var expandCaption = "Expandir";
 +
 +
function collapseTable( tableIndex )
 +
{
 +
    var Button = document.getElementById( "collapseButton" + tableIndex );
 +
    var Table = document.getElementById( "collapsibleTable" + tableIndex );
 +
 +
    if ( !Table || !Button ) {
 +
        return false;
 +
    }
 +
 +
    var Rows = Table.rows;
 +
 +
    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" ) ) {
 +
 +
            /* only add button and increment count if there is a header row to work with */
 +
            var HeaderRow = Tables[i].getElementsByTagName( "tr" )[0];
 +
            if (!HeaderRow) continue;
 +
            var Header = HeaderRow.getElementsByTagName( "th" )[0];
 +
            if (!Header) continue;
 +
 +
            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.style.color = Header.style.color;
 +
            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( "]" ) );
 +
 +
            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 );
 +
 
 +
 
 +
/* 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);
 +
    };
 +
})();
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
/* CÓDIGO JAVASCRIPT DE "METACAIXA"
 +
    Fonctionnement du [[Modèle:Cadre à onglets]]
 +
    Modèle implanté par User:Peleguer de http://ca.wikipedia.org
 +
    Actualisé par User:Joanjoc de http://ca.wikipedia.org
 +
    Traduction et adaptation User:Antaya de http://fr.wikipedia.org
 +
*/
 +
function CadreOngletInit(){
 +
// retour si ailleurs que sur l'espace utilisateur,
 +
// sachant que c'est une horreur au niveau de l'accessibilité
 +
// et qu'il est impossible de "récupérer" ou de recycler ce script
 +
// (celui-ci fonctionnant par inclusion de sous pages)
 +
if (wgCanonicalNamespace != 'User') return; 
 +
  var i=0     
 +
  for (i=0;i<=9;i++){
 +
    var vMb = document.getElementById("mb"+i);
 +
    if (!vMb) break;
 +
 +
    var j=1   
 +
    var vOgIni = 0 
 +
    for (j=1;j<=9;j++){
 +
        var vBt = document.getElementById("mb"+i+"bt"+j);
 +
        if (!vBt) break;
 +
        vBt.onclick = CadreOngletVoirOnglet;         
 +
        if (vBt.className=="mbBoutonSel") vOgIni=j; 
 +
    }
 +
 +
    if (vOgIni == 0) {
 +
        vOgIni = 1+Math.floor((j-1)*Math.random()) ;
 +
        document.getElementById("mb"+i+"og"+vOgIni).style.display = "block";
 +
        document.getElementById("mb"+i+"og"+vOgIni).style.visibility = "visible";
 +
        document.getElementById("mb"+i+"bt"+vOgIni).className="mbBoutonSel";
 +
    }
 +
  }
 +
}
 +
 +
function CadreOngletVoirOnglet(){
 +
  var vMbNom = this.id.substr(0,3);
 +
  var vIndex = this.id.substr(5,1);
 +
 +
  var i=1
 +
  for (i=1;i<=9;i++){       
 +
        var vOgElem = document.getElementById(vMbNom+"og"+i);
 +
        if (!vOgElem) break;
 +
        if (vIndex==i){
 +
                vOgElem.style.display = "block";
 +
                vOgElem.style.visibility = "visible";
 +
                document.getElementById(vMbNom+"bt"+i).className="mbBoutonSel";
 +
        } else {           
 +
                vOgElem.style.display = "none";
 +
                vOgElem.style.visibility = "hidden";
 +
                document.getElementById(vMbNom+"bt"+i).className="mbBouton";
 +
        }
 +
  }
 +
  return false;
 +
}
 +
 +
addOnloadHook(CadreOngletInit);
 +
 
 +
/* CÓDIGO JAVASCRIPT DE "METACAIXA" */

Revision as of 06:30, 10 Fevereiro 2008

/* Any JavaScript here will be loaded for all users on every page load. */


/** Tooltips ********************************************************************************
 *  Descrição: JS para exibir os "tooltips" da Wikipédia.
 ********************************************************************************************/
ta = new Object();

ta['pt-userpage'] = new Array('.','Minha página de usuário');
ta['pt-anonuserpage'] = new Array('.','O número IP da página de usuário que está sendo editada é');
ta['pt-mytalk'] = new Array('n','Minha discussão');
ta['pt-anontalk'] = new Array('n','Discussão sobre este número IP');
ta['pt-preferences'] = new Array(,'Minhas preferências');
ta['pt-watchlist'] = new Array('l','Lista de páginas vigiadas');
ta['pt-mycontris'] = new Array('y','Lista de minhas contribuições');
ta['pt-login'] = new Array('o','Você é encorajado a registrar-se ou autenticar-se, mas isso não é mandatório.');
ta['pt-anonlogin'] = new Array('o','Você é encorajado a registrar-se ou autenticar-se, mas isso não é mandatório.');
ta['pt-logout'] = new Array('o','Sair');
ta['ca-talk'] = new Array('t','Discussão sobre o conteúdo da página');
ta['ca-edit'] = new Array('e','Você pode editar esta página. Por favor, use o botão Mostrar Previsão antes de salvar.');
ta['ca-addsection'] = new Array('+','Adicionar comentário a essa discussão');
ta['ca-viewsource'] = new Array('e','Esta página está protegida; você pode exibir seu código, no entanto.');
ta['ca-history'] = new Array('h','Edições anteriores desta página.');
ta['ca-protect'] = new Array('=','Proteger esta página');
ta['ca-delete'] = new Array('d','Apagar esta página');
ta['ca-undelete'] = new Array('d','Restaurar edições feitas a esta página antes de sua eliminação');
ta['ca-move'] = new Array('m','Renomear esta página');
ta['ca-nomove'] = new Array(,'Você não tem permissões para mover esta página');
ta['ca-watch'] = new Array('w','Adicionar esta página aos artigos vigiados');
ta['ca-unwatch'] = new Array('w','Remover esta página dos artigos vigiados');
ta['search'] = new Array('f','Procurar neste wiki');
ta['p-logo'] = new Array(,'Página principal');
ta['n-mainpage'] = new Array('z','Visita a página principal');
ta['n-portal'] = new Array(,'Sobre o projeto e coisas que você poder fazer aqui');
ta['n-currentevents'] = new Array(,'Informação temática sobre eventos atuais');
ta['n-recentchanges'] = new Array('r','A lista de mudanças recentes neste wiki');
ta['n-randompage'] = new Array('x','Carregar página aleatória');
ta['n-help'] = new Array(,'Um local reservado para auxílio');
ta['n-sitesupport'] = new Array(,'Ajude-nos');
ta['t-whatlinkshere'] = new Array('j','Lista de todas as páginas que ligam-se a esta'); 
ta['t-recentchangeslinked'] = new Array('k','Mudanças recentes em páginas relacionadas a esta'); 
ta['feed-rss'] = new Array(,'Feed RSS desta página'); 
ta['feed-atom'] = new Array(,'Feed Atom desta página'); 
ta['t-contributions'] = new Array(,'Ver as contribuições deste usuário'); 
ta['t-emailuser'] = new Array(,'Enviar um e-mail para este usuário'); 
ta['t-upload'] = new Array('u','Carregar imagens ou arquivos de mídia'); 
ta['t-specialpages'] = new Array('q','Lista de páginas especiais'); 
ta['ca-nstab-main'] = new Array('c','Ver o conteúdo da página'); 
ta['ca-nstab-user'] = new Array('c','Ver a página de usuário'); 
ta['ca-nstab-media'] = new Array('c','Ver a página de mídia'); 
ta['ca-nstab-special'] = new Array(,'Esta é uma página especial, não pode ser editada.'); 
ta['ca-nstab-wp'] = new Array('a','Ver a página de projeto'); 
ta['ca-nstab-image'] = new Array('c','Ver a página de imagem'); 
ta['ca-nstab-mediawiki'] = new Array('c','Ver a mensagem do sistema'); 
ta['ca-nstab-template'] = new Array('c','Ver a predefinição'); 
ta['ca-nstab-help'] = new Array('c','Ver a página de ajuda'); 
ta['ca-nstab-category'] = new Array('c','Ver a página da categoria');
ta['ca-nstab-portal'] = new Array('p','Ver o Portal');


/** Helpers ************************************************************************
 *  Descrição:
 *      Autor:
 ********************************************************************************************/
if (window.showModalDialog && document.compatMode && document.compatMode == "CSS1Compat")
{
  var oldWidth;
  var docEl = document.documentElement;

  function fixIEScroll()
  {
    if (!oldWidth || docEl.clientWidth > oldWidth)
      doFixIEScroll();
    else
      setTimeout(doFixIEScroll, 1);

    oldWidth = docEl.clientWidth;
  }

  function doFixIEScroll() {
    docEl.style.overflowX = (docEl.scrollWidth - docEl.clientWidth < 4) ? "hidden" : "";
  } 

  document.attachEvent("onreadystatechange", fixIEScroll);
  attachEvent("onresize", fixIEScroll);
}

function addLoadEvent(func) 
{
  if (window.addEventListener) 
    window.addEventListener("load", func, false);
  else if (window.attachEvent) 
    window.attachEvent("onload", func);
}


/** Link destaque ***************************************************************************
 *  Descrição: Adiciona estrela ao lado da ligação dos artigos destacados das outras Wikipédias
 ********************************************************************************************/

function LinkFA()

{
    if ( document.getElementById( "p-lang" ) ) {
        var InterwikiLinks = document.getElementById( "p-lang" ).getElementsByTagName( "li" );

        for ( var i = 0; i < InterwikiLinks.length; i++ ) {
            if ( document.getElementById( InterwikiLinks[i].className + "-fa" ) ) {
                InterwikiLinks[i].className += " FA"
                InterwikiLinks[i].title = "Este artigo recebeu estatuto de destaque.";
            }
        }
    }
}

addOnloadHook( LinkFA );



/** Barra de navegação **********************************************************************
 *  Descrição:
 ********************************************************************************************/
// set up the words in your language
var NavigationBarHide = '[ Esconder ]';
var NavigationBarShow = '[ Expandir ]';

// 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 = 1;


// 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 (NavChild.className == 'NavPic') {
               NavChild.style.display = 'none';
           }
           if (NavChild.className == '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 (NavChild.className == 'NavPic') {
               NavChild.style.display = 'block';
           }
           if (NavChild.className == '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
   for(
           var i=0; 
           NavFrame = document.getElementsByTagName("div")[i]; 
           i++
       ) {
       // if found a navigation bar
       if (NavFrame.className == "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 (NavFrame.childNodes[j].className == "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);
       }
   }

}

addLoadEvent(createNavigationBarToggleButton);


/** Correlatos ******************************************************************************
 *  Descrição:Correlatos no menu lateral. Código copiado do de:wikt
 ********************************************************************************************/
// InterProjekt-Links (vgl. MediaZilla:708)
document.write('<style type="text/css">#interProject {display: none; speak: none;} #p-tb .pBody {padding-right: 0;}<\/style>');
function iProject() {
 if (document.getElementById("interProject")) {
  var iProject = document.getElementById("interProject").innerHTML;
  var interProject = document.createElement("div");
  interProject.style.marginTop = "0.7em";
interProject.innerHTML = '
Correlatos<\/h5>
'+iProject+'<\/div>';
  document.getElementById("p-tb").appendChild(interProject);
 }
}
hookEvent("load", iProject);

/** Importar módulos JavaScript e CSS *******************************************************
 *    Origem: w:en:MediaWiki:Common.js
 * Descrição: Simplifica o código para instalação de módulos pessoais JavaScript e CSS
 *     Autor: w:en:User:AzaToth
 ********************************************************************************************/
importedScripts = {}; // object keeping track of included scripts, so a script ain't included twice
function importScript( page ) {
    if( importedScripts[page] ) {
        return;
    }
    importedScripts[page] = true;
    var url = wgScriptPath
            + '/index.php?title='
            + encodeURIComponent( page.replace( / /g, '_' ) )
            + '&action=raw&ctype=text/javascript';
    var scriptElem = document.createElement( 'script' );
    scriptElem.setAttribute( 'src' , url );
    scriptElem.setAttribute( 'type' , 'text/javascript' );
    document.getElementsByTagName( 'head' )[0].appendChild( scriptElem );
}

function importStylesheet( page ) {
    var sheet = '@import "'
              + wgScriptPath
              + '/index.php?title='
              + encodeURIComponent( page.replace( / /g, '_' ) )
              + '&action=raw&ctype=text/css";'
    var styleElem = document.createElement( 'style' );
    styleElem.setAttribute( 'type' , 'text/css' );
    styleElem.appendChild( document.createTextNode( sheet ) );
    document.getElementsByTagName( 'head' )[0].appendChild( styleElem );
}


/** Importar módulos JavaScript de páginas da fr.wikipedia.org ******************************
 * Obs: Importar os demais scripts utilizados da página francesa e utilizar o
 * importScript() acima, que opossui a mesma função.
 ********************************************************************************************/
function loadJs(page)
{
 document.write('<script type="text/javascript" src="' +
               'http://fr.wikipedia.org/w/index.php?title=' + page +
               '&action=raw&ctype=text/javascript&dontcountme=s"></script>');
}


/** Altera o título da página **************************************************************
 *    Origem: w:en:MediaWiki:Common.js
 * Descrição: A função procura por um banner como:
 * <div id="RealTitleBanner">Div that is hidden
 *   <span id="RealTitle">title</span>
 * </div>
 * An element with id=DisableRealTitle disables the function.
 ********************************************************************************************/
rewritePageH1 = function() {
   try {
       var realTitleBanner = document.getElementById("RealTitleBanner");
       if (realTitleBanner) {
           if (!document.getElementById("DisableRealTitle")) {
               var realTitle = document.getElementById("RealTitle");
               var h1 = document.getElementsByTagName("h1")[0];
               if (realTitle && h1) {
                   h1.innerHTML = realTitle.innerHTML;
                   realTitleBanner.style.display = "none";
               }
           }
       }
   } 
catch (e) {
   /* Algo deu errado. */
   }
}
addOnloadHook(rewritePageH1);


/** Pesquisa em vários motores de busca *****************************************************
 *    Origem: w:en:MediaWiki:Common.js
 * Descrição: acrescenta um menu drop-down na página Especial:Search para pesquisar em vários motores de busca
 *     Autor: w:en:User:Gracenotes
 ********************************************************************************************/
if (wgPageName == "Especial:Search") {
        var searchEngines = [];
        addOnloadHook(SpecialSearchEnhanced);
}

function SpecialSearchEnhanced() {
        var createOption = function(site, action, mainQ, addQ, addV) {
                var opt = document.createElement('option');
                opt.appendChild(document.createTextNode(site));
                searchEngines[searchEngines.length] = [action, mainQ, addQ, addV];
                return opt;
        }
        var searchForm = document.forms['search'];
        var selectBox = document.createElement('select');
        selectBox.id = 'searchEngine';
        searchForm.onsubmit = function() {
                var optSelected = searchEngines[document.getElementById('searchEngine').selectedIndex];
                searchForm.action = optSelected[0];
                searchForm.lsearchbox.name = optSelected[1];
                searchForm.title.value = optSelected[3];
                searchForm.title.name = optSelected[2];
        }
        selectBox.appendChild(createOption('Wikipédia', wgScriptPath + '/index.php', 'search', 'title', 'Especial:Search'));
        selectBox.appendChild(createOption('WikiWix', 'http://pt.wikiwix.com/', 'action', , ));
        selectBox.appendChild(createOption('Google', 'http://www.google.pt/search', 'q', 'as_sitesearch', 'pt.wikipedia.org'));
        selectBox.appendChild(createOption('Yahoo', 'http://search.yahoo.com/search', 'p', 'vs', 'pt.wikipedia.org'));
        selectBox.appendChild(createOption('Windows Live', 'http://search.live.com/results.aspx', 'q', 'q1', 'site:http://pt.wikipedia.org'));

        searchForm.lsearchbox.style.marginLeft = '0px';
        var lStat = document.getElementById('loadStatus');
        lStat.parentNode.insertBefore(selectBox, lStat);
}


/** Wiki Mini Atlas ************************************************************************
 *  Descrição: Mini atlas para artigos com geocoodernadas.
 *      Autor:
 ********************************************************************************************/
 document.write('<script type="text/javascript" src="' 
     + 'http://meta.wikimedia.org/w/index.php?title=MediaWiki:Wikiminiatlas.js' 
     + '&action=raw&ctype=text/javascript&dontcountme=s"></script>');
 var wma_settings =
 {
     height : 400,
     width : 600
 }

if(document.getElementById && !document.location.href.match("action=edit") && !document.location.href.match("action=submit")) {

function loadLoginForm() {
 var box = document.getElementById("irclogin");
 var html = null;
 if(box) {
   html  = '<form method="post" action="http://chatwikizine.memebot.com/cgi-bin/cgiirc/irc.cgi" target="_blank" id="loginform" name="loginform">';
   html += '  <input type="hidden" id="interface" "name="interface" value="nonjs"/>';
   html += '  <input type="text" size="25" id="Nickname" name="Nickname" value="' + nickify(wgUserName) + '" onfocus="clear_text(this)"/>';
   html += '  <select id="metodo" name="metodo" onChange="setServer();"> <option value="Java">Java</option><option value="cgi">CGI</option> </select>';
   html += '  <input type="hidden" name="Character_set" value="utf-8"/>';
   html += '  <input type="hidden" id="rede" name="Server" value="irc.freenode.net"/>';
   html += '  <input type="hidden" id="ch" name="Channel" value="#wikipedia-pt"/>';
   html += '  <input type="submit" value="entrar" onclick="document.getElementById(\'loginform\').submit();"/>';
   html += '</form>';
   box.innerHTML = html;
 }
}
function setServer() {
 var selMetodo=document.getElementById("metodo");
 var nmMetodo=selMetodo.options[selMetodo.selectedIndex].value;
 if(nmMetodo == 'Java') {
    document.getElementById("rede").name = 'h';
    document.getElementById("Nickname").name = 'n';
    document.getElementById("ch").name = 'ch';
    document.getElementById("loginform").action = 'http://czat.computerserv.pl/';
 }else if(nmMetodo == 'cgi') {
        document.getElementById("rede").name = 'Server';
        document.getElementById("Nickname").name = 'Nickname';
        document.getElementById("ch").name = 'Channel';
        document.getElementById("loginform").action = 'http://chatwikizine.memebot.com/cgi-bin/cgiirc/irc.cgi';
       }
 setjs();
 }


 function nickify(s) {
   if(s == null) {
     return "anon" + Math.floor(Math.random()*100);
   }
   s = s.toLowerCase();
   s = s.replace(" ", "_");
   s = s.replace(/á/g, 'a');
   s = s.replace(/é/g, 'e');
   s = s.replace(/í/g, 'i');
   s = s.replace(/[óő]/g, 'o');
   s = s.replace(/[úű]/g, 'u');
   s = s.replace(/[^a-z0-9_-]/g, );
   return s;
 }

 var irclogin_cleared = 0;
 function clear_text(field) {
   if(irclogin_cleared == 0) {
     irclogin_cleared = 1;
     field.value = "";
   }
 }
 function setjs() {
   if(navigator.product == 'Gecko') {
     document.loginform["interface"].value = 'mozilla';
   } else if(window.opera && document.childNodes) {
     document.loginform["interface"].value = 'opera7';
   } else if(navigator.appName == 'Microsoft Internet Explorer' &&
     navigator.userAgent.indexOf("Mac_PowerPC") > 0) {
     document.loginform["interface"].value = 'konqueror';
   } else if(navigator.appName == 'Microsoft Internet Explorer') {
     document.loginform["interface"].value = 'ie';
   } else if(navigator.appName == 'Konqueror') {
     document.loginform["interface"].value = 'konqueror';
   } else if(window.opera) {
     document.loginform["interface"].value = 'opera';
   }
 }

 addOnloadHook(loadLoginForm);

}




/** Corretor de transparência de PNG em Win IE 5.5 & 6.*************************************
 *      Autor: http://homepage.ntlworld.com/bobosola. Updated 18-Jan-2006.
 *  Descrição: Mini atlas para artigos com geocoodernadas.
               Adapted for Wikipedia by Remember_the_dot and Edokter
               http://homepage.ntlworld.com/bobosola/pnginfo.htm states "This page contains more information for
               the curious or those who wish to amend the script for special needs", which I take as permission to
               modify or adapt this script freely. I release my changes into the public domain.
 ********************************************************************************************/

function PngFix() {

   if (document.body.filters)
   {
       var documentImages = document.images
       for (var i = 0; i < documentImages.length;)
       {
           var img = documentImages[i]
           var imgSrc = img.src
           if (imgSrc.substr(imgSrc.length - 3).toLowerCase() == "png")
           {
               if (img.currentStyle.borderStyle == "none")
               {
                   img.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + encodeURI(imgSrc) + "')"
                   img.src = "http://upload.wikimedia.org/wikipedia/commons/d/db/Must_left-click_image_again_before_saving.gif"
                   i++
               }
               else
               {
                   var outerSpan = document.createElement("span")
                   var innerSpan = document.createElement("span")
                   var outerSpanStyle = outerSpan.style
                   var innerSpanStyle = innerSpan.style
                   var imgStyle = img.currentStyle

                   outerSpan.id = img.id
                   outerSpan.className = img.className
                   outerSpan.title = img.title
                   outerSpanStyle.borderWidth = imgStyle.borderWidth
                   outerSpanStyle.borderStyle = imgStyle.borderStyle
                   outerSpanStyle.borderColor = imgStyle.borderColor
                   outerSpanStyle.display = "inline-block"
                   outerSpanStyle.fontSize = "0"
                   outerSpanStyle.verticalAlign = "middle"
                   if (img.parentElement.href) outerSpanStyle.cursor = "hand"

                   innerSpanStyle.width = img.width + "px"
                   innerSpanStyle.height = img.height + "px"
                   innerSpanStyle.display = "inline-block"
                   innerSpanStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + encodeURI(imgSrc) + "')"

                   outerSpan.appendChild(innerSpan)
                   img.parentNode.replaceChild(outerSpan, img)
               }
           }
           else
           {
               i++
           }
       }
   }

}

if (navigator.appName == "Microsoft Internet Explorer") {

 var version = navigator.appVersion.substr(22, 3)
 if (version == "6.0" || version == "5.5")
 {
   window.attachEvent("onload", PngFix)
 }

}




/** Collapsible tables *********************************************************
 *
 *  Description: Allows tables to be collapsed, showing only the header. See
 *               Wikipedia:NavFrame.
 *  Maintainers: User:R. Koot
 */


var autoCollapse = 2;
var collapseCaption = "Esconder";
var expandCaption = "Expandir";

function collapseTable( tableIndex )
{
    var Button = document.getElementById( "collapseButton" + tableIndex );
    var Table = document.getElementById( "collapsibleTable" + tableIndex );

    if ( !Table || !Button ) {
        return false;
    }

    var Rows = Table.rows;

    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" ) ) {

            /* only add button and increment count if there is a header row to work with */
            var HeaderRow = Tables[i].getElementsByTagName( "tr" )[0];
            if (!HeaderRow) continue;
            var Header = HeaderRow.getElementsByTagName( "th" )[0];
            if (!Header) continue;

            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.style.color = Header.style.color;
            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( "]" ) );

            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 );


/* 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);
    };
})();




/* CÓDIGO JAVASCRIPT DE "METACAIXA"

   Fonctionnement du Modèle:Cadre à onglets
   Modèle implanté par User:Peleguer de http://ca.wikipedia.org
   Actualisé par User:Joanjoc de http://ca.wikipedia.org
   Traduction et adaptation User:Antaya de http://fr.wikipedia.org
  • /

function CadreOngletInit(){

// retour si ailleurs que sur l'espace utilisateur, 
// sachant que c'est une horreur au niveau de l'accessibilité
// et qu'il est impossible de "récupérer" ou de recycler ce script
// (celui-ci fonctionnant par inclusion de sous pages)
if (wgCanonicalNamespace != 'User') return;  
 var i=0       
 for (i=0;i<=9;i++){
    var vMb = document.getElementById("mb"+i);
    if (!vMb) break;

    var j=1    
    var vOgIni = 0  
    for (j=1;j<=9;j++){
       var vBt = document.getElementById("mb"+i+"bt"+j);
       if (!vBt) break;
       vBt.onclick = CadreOngletVoirOnglet;          
       if (vBt.className=="mbBoutonSel") vOgIni=j;  
    }

    if (vOgIni == 0) { 
        vOgIni = 1+Math.floor((j-1)*Math.random()) ;
        document.getElementById("mb"+i+"og"+vOgIni).style.display = "block";
        document.getElementById("mb"+i+"og"+vOgIni).style.visibility = "visible";
        document.getElementById("mb"+i+"bt"+vOgIni).className="mbBoutonSel";
    } 
 }
}

function CadreOngletVoirOnglet(){
 var vMbNom = this.id.substr(0,3); 
 var vIndex = this.id.substr(5,1); 

 var i=1
 for (i=1;i<=9;i++){        
       var vOgElem = document.getElementById(vMbNom+"og"+i);
       if (!vOgElem) break;
       if (vIndex==i){ 
               vOgElem.style.display = "block";
               vOgElem.style.visibility = "visible";
               document.getElementById(vMbNom+"bt"+i).className="mbBoutonSel";
       } else {             
               vOgElem.style.display = "none";
               vOgElem.style.visibility = "hidden";
               document.getElementById(vMbNom+"bt"+i).className="mbBouton";
       }
 }
 return false; 
}

addOnloadHook(CadreOngletInit);
/* CÓDIGO JAVASCRIPT DE "METACAIXA" */