Ao acessar a página Elementos de Arithmetica o Firefox 3.6.6 está reportanto este erro no console de erros:

Erro: td is not defined
Arquivo-fonte: http://pt.wikisource.org/w/index.php?title=-&action=raw&smaxage=0&gen=js&useskin=vector&283j
Linha: 540

A linha 540 corresponde ao código negritado abaixo, que está definido na função DisplayFooter() do MediaWiki:Common.js

		}
		tr.appendChild(td);

		//create the 'top' link
		td = document.createElement('td');

Alguém poderia corrigir? (provavelmente acrescentando um "if (td)" em algum lugar irá resolver...) Helder 01h18min de 1 de Julho de 2010 (UTC)

Atualizei o código conforme o código da en.wp, e o problema foi corrigido. Giro720 msg 03h20min de 2 de Julho de 2010 (UTC)

Seria bom fazer mais algumas atualizações nos scripts do commons.js:

  • A TransformeEnDiscussion foi movida para o monobook.js. A aparência das discussões fica ruim quando estamos nos demais skins (não lembro)? Não seria melhor só adaptar a formatação, mas manter no common.js?
  • As funções addOCR, addOCRButton são definidas/mantidas no Wikisource multilingual (oldwikisource:MediaWiki:OCR.js), então em vez de termos uma cópia (que poderá ficar desatualizada - e acho que já está) é melhor usar um importScript, como é feito nos demais Wikisources (francês, inglês, italiano).
  • Há vários outros scripts que costumam ser hospedados no wikisource multilingual e que podem ser simplesmente importados (o DisplayFooter é mais um exemplo que atualmente está copiado em vez de importado), e ter suas mensagens traduzidas localmente. Uma boa ideia seria adicionar o que está na seção /*scripts imported from wikisource.org*/ do en:MediaWiki:Common.js, que inclui em particular o código que falta para fazer os números das páginas aparecerem em páginas como Elementos_de_Arithmetica/Capítulo_1 (isto é, a importacão do oldwikisource:MediaWiki:PageNumbers.js). Os estilos dinâmicos (dynamic layouts) para a exibição das páginas também são uma novidade que é interessante termos aqui.
    • Aqui está a tradução das mensagens:
/* Tradução das mensagens usadas pelos diversos JavaScripts */
self.ws_messages = {
	'optlist':'Opções de exibição',
	'hide_page_numbers':'Ocultar links para as paginas',
	'show_page_numbers':'Links para as paginas',
	'layout':'Estilo',
	'author':'Autor',
	'translator':'Tradutor',
	'editor':'Editor',
	'publisher':'Editora',
	'place':'Local',
	'volume':'Volume',
	'school':'Escola',
	'book':'Livro',
	'collection':'Coleção',
	'journal':'Jornal ou revista',
	'phdthesis':'Tese, relatório',
	'dictionary':'Dicionário',
	'progress':'Progresso',
	'progress_T':'Pronto',
	'progress_V':'A ser validado',
	'progress_C':'A ser revisto',
	'progress_MS':'Pronto para corresponder e dividir',
	'progress_OCR':'Precisa de uma camada de OCR',
	'progress_X':'O arquivo-fonte é um excerto de um volume maior, ou uma mistura de várias fontes',
	'progress_L':'O arquivo-fonte está incorreto (faltando páginas, com páginas fora de ordem, etc)',
	'▲':'Votar ao topo da página',

	'corr_list':"Lista de correções realizadas nesta página" ,
	'corr_link':"Correções" ,
	'corr_one':"Um erro de digitação</a> foi corrigido." ,
	'corr_many':" erros de digitação</a> foram corrigidos." ,
	'corr_close':"Fechar." ,
 
	'iwtrans':'O texto vem de',
	'iwtrans2':'O texto vem de outros subdomínios do Wikisource.',
}
  • Há algumas funções comuns (como SetCookie, GetCookie, OptionText e displayOptionText que atualmente estão copiadas no nosso common.js), que podem ser usadas por vários scripts, no oldwikisource:MediaWiki:Base.js. Então pode-se tirar ele do gadget de modernização (no qual já não é necessário), colocar um import no Commons.js (a minha subpágina pode ser apagada também, pois acho que não precisarei dela).
  • Está a parecendo este erro desde que o Common.js sofreu as últimas atualizações:
wgWikiEditorEnabledModules is not defined
http://pt.wikisource.org/w/index.php?title=-&action=raw&smaxage=0&gen=js&useskin=vector&283t
Line 614
  • É importante dar crédito aos autores do /* Correlatos na lateral */ (by wikt:de:User:Melancholie aparentemente), e movê-lo para o monobook.js, já que ainda não parece ser compatível com o vector.
  • A função getElementsByClassName do nosso commons.js está sobrescrevendo a do wikibits.js (que é uma versão bem melhor, já que usa uma implementação nativa dos browsers quando possível). Sendo assim, é bom removê-la, para que quando os scripts tentem usá-la, tenham a versão mais aprimorada a disposição.

Helder 14h29min de 24 de Setembro de 2010 (UTC)

PS: Vejo que estávamos pensando a mesma coisa =P. Helder 14h32min de 24 de Setembro de 2010 (UTC)

Respondendo:

  • Ok (a fazer). Não vi efeito no vector, por isso movi ao monobook.js. Mas mesmo no monobook não está funcionando agora.
  • Estava planejando fazer as importações desses scripts do oldwikisource, mas como eu mudei outros detalhes no common.js, eu estava esperando para ver se o resto continua a funcionar normalmente. Importei essas mensagens na minha subpágina mas nenhuma mágica aconteceu (e tudo permaneceu como estava) =/.
  • Estou com dificuldades para corrigir o wgWikiEditorEnabledModules. Essa é uma variável que só aparece no modo de edição de páginas. Alguma sugestão? Aparentemente resolvido.
  • A barra de projetos correlatos aparece normalmente mas passa a ser uma "filha" da barra imediatamente acima (se a barra acima é fechada, fecha-se também a de correlatos).
  • getElementsByClassName ok.

Giro720 msg 15h35min de 24 de Setembro de 2010 (UTC)

    • A "transformação em páginas de discussão" consiste apenas em formatar os comentários conforme o nível de indentação, e é visível por exemplo nesta página. O estilo atualmente está definido somente no MediaWiki:Monobook.css, então não funcionaria para o vector até que o css fosse movido para o MediaWiki:Common.css (ou que se criasse um análogo no MediaWiki:Vector.css). Como a formatação baseada na indentação é aplicada por padrão somente às páginas de discussão (detectáveis pela classe ns-talk), o script que estava no commons.js permite que marquemos páginas específicas do projeto como sendo de discussão (no caso em que elas não estejam em tal domínio - e por isso não tenham ns-talk por padrão). A classe que o script procura para saber se deve "converter" a página é a "transformeEnPageDeDiscussion" mas no Wikilivros a gente optou por traduzir para "PaginaDeDiscussao". Assim, adicionando {{Página de Discussão}} a página deveria ser formatada como se fosse uma de discussão. Só falta arrumar uma coisa: o script está inserindo "ns-1" mas o css está tentando usar "ns-talk". Se o CSS for alterado funcionará direito (eu fui o culpado indiretamente, pois fui eu quem pediu esta alteração - só não tinha notado que ns-1 estava sendo mudado para ns-talk =/). Helder 16h51min de 24 de Setembro de 2010 (UTC)
    • Parece que sua edição resolveu o erro no js mesmo.
    • Na verdade, nós já temos o jQuery há uns tempos! Mas quase ninguém está usando ainda (o Wikimedia Commons usa). Helder 17h16min de 24 de Setembro de 2010 (UTC)
    • O MediaWiki:PageNumbers.js funcionou: Elementos_de_Arithmetica/Capítulo_1 exibe os números de página e aparece um menu lateral para quem quiser ocultá-los. Agora que está lá, achei que o texto exibido ficou meio longo. Talvez fique melhor assim:
	'hide_page_numbers':'Ocultar numeração',
	'show_page_numbers':'Ocultar numeração',
    • As opções de estilo são visíveis no texto inglês en:The Elizabethan People/Chapter 1 (clique no menu lateral). Falta copiar a seção "self.ws_layouts" do en:MediaWiki:Common.js (e posteriormente adaptarmos conforme nosso gosto ;-) ), para que as opções de estilos dinâmicos fiquem visíveis por aqui também... Helder 17h30min de 24 de Setembro de 2010 (UTC)
Feito. Se não estou enganado, está pendente apenas a parte dos correlatos. O base.js implementa corretamente o código semelhante para 'opção de exibição'. Mas é uma pena que não possa ser aproveitado diretamente (o código terá que ser "duplicado" e alterado para os correlatos). Eu estava errado; o append do jQuery não iria ajudar (não é trivial colocar divs logo após um determinado div do html). Giro720 msg 21h27min de 24 de Setembro de 2010 (UTC)