Wikipédia Discussão:Software/Scripts/HotCat.js

message: Seria muito útil adicionar ao código a expressão regular para categorias adicionadas usando Category:, isto ocorre me muitos artigos, não só nos traduzidos da Wikipédia Anglófona, que por si só já são muitos. Daemorris discussão 18h03min de 31 de janeiro de 2010 (UTC)
thread_title:  Categorias com Category 

message: De tempos em tempos o HotCat é usado para fazer manutenção de predefinições, mas ele não é capaz de substituir categorias respeitando as localizações originais, e com isso adiciona categorias fora das tags <noinclude>. Isso faz com que não só a predefinição seja categorizada, mas também todos os artigos que a utilizam (já alertei sobre isso anteriormente). Com o código abaixo acredito que o HotCat será automaticamente desabilitado para o namespace Predefinição, por isso peço que seja incluido, possivelmente logo abaixo da definição da função hotcat():
function hotcat () {
  if ( hotcat_check_action() ) return ; // Edited page, reloading anyway
  // Não adicionar a interface a páginas de predefinição, pois ela não respeita
  // o posicionamento das categorias dentro de tags <noinclude>. Capmo, 2010-02-19
  if( wgNamespaceNumber == 10 )
    return;
Com isso, esperamos que esse problema não mais ocorra. —capmo (msg) 21h10min de 19 de fevereiro de 2010 (UTC)
thread_title:  Desabilitar HotCat no namespace Predefinição 

message: Após uma sugestão feita em Pedidos a administradores/Páginas protegidas, aqui está uma solução alternativa que mantém o HotCat funcionando nas Predefinições, mas somente para a remoção de categorias. As opções de substituição "(±)" e adição "(+)" de novas categorias ficam desativadas. Para isso deve-se aplicar ao script as alterações efetuadas nas duas funções abaixo:
function hotcat_append_add_span ( catline ) {
  // Se estiver no namespace Predefinição, desativar a opção de adicionar "(+)"
  if ( wgNamespaceNumber == 10 ) return ;
  var span_add = document.createElement ( "span" ) ;
  var span_sep = document.createTextNode ( " | " ) ;
  if ( catline.getElementsByTagName("span")[0] ) catline.appendChild ( span_sep ) ;
  catline.appendChild ( span_add ) ;
  hotcat_create_span ( span_add ) ;
}
function hotcat_modify_span ( span , i ) {
  //var cat_title = span.firstChild.getAttribute ( "title" ) ;
  // Esta falha em MW 1.13alpha se a categoria é um link vermelho, porque anexa à MW 1.13alpha
  // MediaWiki:Red-link-title para o nome da categoria ... temos outra forma de obter essa categoria
  // name. Lupo, 2008-02-27
  var cat_title = span.firstChild.innerHTML; // without "Categoria:"
 
  var sep1 = document.createTextNode ( " " ) ;
  var a1 = document.createTextNode ( "(-)" ) ;
  var remove_link = document.createElement ( "a" ) ;
  // Set the href to a dummy value to make sure we don't move if somehow the onclick handler
  // is bypassed.
  remove_link.href = "#catlinks";
  remove_link.onclick = hotcat_remove;
  remove_link.appendChild ( a1 ) ;
  span.appendChild ( sep1 ) ;
  span.appendChild ( remove_link ) ;
 
  // Se estiver no namespace Predefinição, desativar a opção de alterar "(±)"
  if ( wgNamespaceNumber == 10 ) return ;
  // Disabled blacklist check TheDJ, 2008-02-28
  // if ( hotcat_is_on_blacklist ( cat_title ) ) return ;
  var mod_id = "hotcat_modify_" + i ;
  var sep2 = document.createTextNode ( " " ) ;
  var a2 = document.createTextNode ( "(±)" ) ;
  var modify_link = document.createElement ( "a" ) ;
  modify_link.id = mod_id ;
  modify_link.href = "javascript:hotcat_modify(\"" + mod_id + "\");" ;
  modify_link.appendChild ( a2 ) ;
  span.appendChild ( sep2 ) ;
  span.appendChild ( modify_link ) ;
}
Att. —capmo (msg) 18h58min de 25 de março de 2010 (UTC)
thread_title:  Solução alternativa