MediaWiki:Common.js
Nota: Após publicar, você pode ter que limpar o "cache" do seu navegador para ver as alterações.
- Firefox / Safari: Pressione Shift enquanto clica Recarregar, ou pressione Ctrl-F5 ou Ctrl-R (⌘-R no Mac)
- Google Chrome: Pressione Ctrl-Shift-R (⌘-Shift-R no Mac)
- Edge: Pressione Ctrl enquanto clica Recarregar, ou pressione Ctrl-F5.
- Opera: Pressione Ctrl-F5.
/* Códigos JavaScript aqui colocados serão carregados por todos aqueles que acessarem alguma página deste wiki */
/* Ocultar links para páginas especiais de usuários não registrados */
if ( mw.config.get( 'wgUserName' ) === null ) {
$( function () {
// ========== SEU CÓDIGO ORIGINAL ==========
// Oculta o link "Páginas especiais" na navegação lateral (Vector skin)
$( '#n-specialpages' ).hide();
// Se você quiser ocultar um link específico, como "Mudanças recentes" (RecentChanges)
// $( '#n-recentchanges' ).hide();
// Oculte itens adicionais do menu "Ferramentas" (toolbox) conforme necessário
// $( '#t-whatlinkshere' ).hide(); // Oculta "Páginas afluentes"
/* --- NOVO: esconder a busca apenas para anônimos --- */
// Skins clássicas (Vector legado, MonoBook)
$( '#p-search, #searchform, #searchInput' ).hide();
// Vector 2022 (barra de busca no topo)
$( '.vector-search-box, .vector-search-box-input, .vector-search-box-form' ).hide();
// Fallback: se algum elemento for re-inserido dinamicamente, garante ocultação
// (ex.: carregamentos tardios ou gadgets que recriam a busca)
const hideSearch = function () {
$( '#p-search, #searchform, #searchInput' ).hide();
$( '.vector-search-box, .vector-search-box-input, .vector-search-box-form' ).hide();
};
// Observa mudanças no DOM por alguns segundos para pegar inserções tardias
const observer = new MutationObserver( hideSearch );
observer.observe( document.body, { childList: true, subtree: true } );
setTimeout( () => observer.disconnect(), 5000 );
// ========== ADIÇÃO: ESCONDER TEXTO "ENTRAR" ==========
// Função para esconder o texto "ENTRAR" mas manter o link funcional
const hideLoginText = function() {
// Para Vector Legado - encontrar o link de login
$('#pt-login a').each(function() {
const $link = $(this);
const originalText = $link.text();
// Se contém "ENTRAR" ou variações
if (originalText.match(/entrar|login|sign in/i)) {
// Esconde o texto mas mantém o link
$link.css({
'font-size': '0',
'color': 'transparent',
'text-indent': '-9999px'
});
// Adiciona um placeholder invisível
$link.attr('data-original-text', originalText);
// Mantém acessibilidade
$link.attr('title', 'Fazer login');
$link.attr('aria-label', 'Fazer login');
// Adiciona um ícone ou marcador invisível
$link.html('<span style="display:none;">Login</span>');
}
});
// Alternativa: esconder apenas o span/texto dentro do link
$('#pt-login span, #pt-login .mw-list-item, #pt-login .mw-userlink').each(function() {
$(this).css({
'font-size': '0',
'color': 'transparent',
'visibility': 'hidden'
});
});
};
// Executar imediatamente
hideLoginText();
// Executar após carga completa
$(window).on('load', hideLoginText);
// Executar periodicamente para garantir
setInterval(hideLoginText, 1000);
// Observador de mutação também para o texto "ENTRAR"
const loginObserver = new MutationObserver( function(mutations) {
mutations.forEach(function(mutation) {
if (mutation.addedNodes.length > 0) {
hideLoginText();
}
});
});
loginObserver.observe(document.body, { childList: true, subtree: true });
setTimeout( () => loginObserver.disconnect(), 5000 );
} );
}