MediaWiki:Common.js: mudanças entre as edições
Aparência
Sem resumo de edição |
Sem resumo de edição |
||
| Linha 42: | Linha 42: | ||
}); | }); | ||
/* Lógica do Sistema Orbital de Anexos */ | /* Lógica do Sistema Orbital de Anexos com Tradução de Nomes */ | ||
$(document).ready(function() { | $(document).ready(function() { | ||
var $listaPlanetas = $('#sistema-orbital .planeta-satelite'); | var $listaPlanetas = $('#sistema-orbital .planeta-satelite'); | ||
| Linha 48: | Linha 48: | ||
if (totalPlanetas === 0) return; | if (totalPlanetas === 0) return; | ||
// | // Dicionário de Traduções Customizadas por Número de Origem | ||
var raio = 96; | // Você pode adicionar qualquer mapeamento novo aqui facilmente seguindo o padrão abaixo: | ||
var centroX = 120; | var mapeamentoNomes = { | ||
var centroY = 120; | "30": "13-A", | ||
"50": "Glossário", | |||
"60": "Anexo<br>I", // Exemplo extra | |||
"70": "Anexo<br>II" // Exemplo extra | |||
}; | |||
var raio = 96; | |||
var centroX = 120; | |||
var centroY = 120; | |||
$listaPlanetas.each(function(index) { | $listaPlanetas.each(function(index) { | ||
var $item = $(this); | |||
var idOrigem = $item.data('anexo').toString().trim(); | |||
// Verifica se a origem atual possui um nome especial mapeado | |||
if (mapeamentoNomes[idOrigem]) { | |||
// Se for "Glossário", exibe apenas a palavra. Se for "13-A", mantém o prefixo "Anexo" | |||
if (mapeamentoNomes[idOrigem] === "Glossário") { | |||
$item.find('span').html(mapeamentoNomes[idOrigem]); | |||
} else { | |||
$item.find('span').html("Anexo<br>" + mapeamentoNomes[idOrigem]); | |||
} | |||
} else { | |||
// Padrão normal para os outros números (ex: Anexo 1, Anexo 2) | |||
$item.find('span').html("Anexo<br>" + idOrigem); | |||
} | |||
var angulo = (index * (2 * Math.PI) / totalPlanetas) - (Math.PI / 2); | var angulo = (index * (2 * Math.PI) / totalPlanetas) - (Math.PI / 2); | ||
var x = centroX + raio * Math.cos(angulo) - 22; | var x = centroX + raio * Math.cos(angulo) - 22; | ||
var y = centroY + raio * Math.sin(angulo) - 22; | var y = centroY + raio * Math.sin(angulo) - 22; | ||
$ | $item.css({ | ||
'left': x + 'px', | 'left': x + 'px', | ||
'top': y + 'px', | 'top': y + 'px', | ||
'width': '44px', | 'width': '44px', | ||
'height': '44px' | 'height': '44px' | ||
}); | }); | ||
}); | }); | ||
}); | }); | ||
Edição das 15h02min de 8 de julho de 2026
/* Lógica de Agrupamento em Blocos Sólidos para o Infográfico */
$(document).ready(function() {
var $container = $('#infografico-vigencia');
if ($container.length === 0) return;
// Seleciona apenas os elementos válidos gerados pelo Cargo
var $itens = $container.find('.timeline-item');
if ($itens.length === 0) return;
var numeroBloco = 1;
var grupoValido = [];
// Limpa o container para reconstruirmos na ordem exata e sem sujeira do MediaWiki
var itensArray = $itens.toArray();
$container.empty();
// Varre de cima para baixo (do mais recente ao mais antigo)
for (var i = 0; i < itensArray.length; i++) {
var $item = $(itensArray[i]);
var verbo = $item.data('verbo');
grupoValido.push($item);
// Se o item atual for um "R" OU se for o ÚLTIMO item da lista completa
if (verbo === 'R' || i === itensArray.length - 1) {
// Cria a caixa mãe física com a classe de cor correspondente
var $wrapper = $('<div class="bloco-grupo bloco-' + numeroBloco + '"></div>');
// Joga todos os anos acumulados para dentro desta caixa mãe
for (var j = 0; j < grupoValido.length; j++) {
$wrapper.append(grupoValido[j]);
}
// Adiciona a caixa mãe pronta ao final do container
$container.append($wrapper);
// Reseta o acumulador e avança para o próximo tom de cor
grupoValido = [];
numeroBloco++;
}
}
});
/* Lógica do Sistema Orbital de Anexos com Tradução de Nomes */
$(document).ready(function() {
var $listaPlanetas = $('#sistema-orbital .planeta-satelite');
var totalPlanetas = $listaPlanetas.length;
if (totalPlanetas === 0) return;
// Dicionário de Traduções Customizadas por Número de Origem
// Você pode adicionar qualquer mapeamento novo aqui facilmente seguindo o padrão abaixo:
var mapeamentoNomes = {
"30": "13-A",
"50": "Glossário",
"60": "Anexo<br>I", // Exemplo extra
"70": "Anexo<br>II" // Exemplo extra
};
var raio = 96;
var centroX = 120;
var centroY = 120;
$listaPlanetas.each(function(index) {
var $item = $(this);
var idOrigem = $item.data('anexo').toString().trim();
// Verifica se a origem atual possui um nome especial mapeado
if (mapeamentoNomes[idOrigem]) {
// Se for "Glossário", exibe apenas a palavra. Se for "13-A", mantém o prefixo "Anexo"
if (mapeamentoNomes[idOrigem] === "Glossário") {
$item.find('span').html(mapeamentoNomes[idOrigem]);
} else {
$item.find('span').html("Anexo<br>" + mapeamentoNomes[idOrigem]);
}
} else {
// Padrão normal para os outros números (ex: Anexo 1, Anexo 2)
$item.find('span').html("Anexo<br>" + idOrigem);
}
var angulo = (index * (2 * Math.PI) / totalPlanetas) - (Math.PI / 2);
var x = centroX + raio * Math.cos(angulo) - 22;
var y = centroY + raio * Math.sin(angulo) - 22;
$item.css({
'left': x + 'px',
'top': y + 'px',
'width': '44px',
'height': '44px'
});
});
});