MediaWiki:Gadget-IRC.js
Origem: Wikilivros, livros abertos por um mundo aberto.
Nota: Após gravar, terá de limpar a cache do seu navegador para ver as alterações. Mozilla / Firefox / Safari: pressione Shift enquanto clica em Recarregar, ou pressione Ctrl-F5 ou Ctrl-R (Command-R num Macintosh); Konqueror:: clique no botão Recarregar ou pressione F5; Opera: limpe a cache em Ferramentas → Preferências (Tools → Preferences); Internet Explorer: pressione Ctrl enquanto clica em Recarregar ou pressione Ctrl-F5.
//<source lang="javascript"> /** Script para bate papo via IRC ** * Origem: [[w:MediaWiki:Common.js]] * Mantido por: [[User:Heldergeovane]] (e na pt.wp, quem???) * Adaptado por: [[User:Heldergeovane]] */ 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="#wikibooks-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); } //</source>