Ir para o conteúdo

MediaWiki:Common.js: mudanças entre as edições

De Normas Regulamentadoras
Sem resumo de edição
Etiquetas: Reversão manual Revertido
Sem resumo de edição
Etiquetas: Reversão manual Revertido
Linha 1: Linha 1:
/* Lógica dinâmica para o Infográfico de Vigência das NRs */
/* Lógica de Agrupamento em Blocos Sólidos para o Infográfico */
$(document).ready(function() {
$(document).ready(function() {
     var $container = $('#infografico-vigencia');
     var $container = $('#infografico-vigencia');
     if ($container.length === 0) return;
     if ($container.length === 0) return;


     var blocoAtual = 1;
     var $itens = $container.find('.timeline-item');
   
    var grupoAtual = [];
    $container.find('.timeline-item').each(function() {
    var numeroBloco = 1;
 
    // Varre os itens de baixo para cima (do mais antigo para o mais recente)
    // para agrupar corretamente o R com os A que estão ACIMA dele
    $($itens.get().reverse()).each(function() {
         var $item = $(this);
         var $item = $(this);
         var verbo = $item.data('verbo');
         var verbo = $item.data('verbo');


         // Adiciona a classe do bloco de cor atual calculado
         // Adiciona o item ao grupo atual
         $item.addClass('bloco-' + blocoAtual);
        grupoAtual.push($item);
 
        // Se o item atual for um "R", fecha o grupo e cria a caixa mãe
         if (verbo === 'R' || $item.is(':last-child')) {
            var $wrapper = $('<div class="bloco-grupo bloco-' + numeroBloco + '"></div>');
           
            // Coloca os itens na ordem correta dentro da nova caixa
            $.each(grupoAtual.reverse(), function(i, $el) {
                $wrapper.append($el);
            });
 
            // Insere a caixa mãe no topo do container
            $container.prepend($wrapper);


        // Se encontrar um "R", o próximo item desce um tom no degradê
            // Reinicia para o próximo bloco de cima
        if (verbo === 'R') {
            grupoAtual = [];
             blocoAtual++;
             numeroBloco++;
         }
         }
     });
     });
});
});

Edição das 08h22min de 7 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;

    var $itens = $container.find('.timeline-item');
    var grupoAtual = [];
    var numeroBloco = 1;

    // Varre os itens de baixo para cima (do mais antigo para o mais recente)
    // para agrupar corretamente o R com os A que estão ACIMA dele
    $($itens.get().reverse()).each(function() {
        var $item = $(this);
        var verbo = $item.data('verbo');

        // Adiciona o item ao grupo atual
        grupoAtual.push($item);

        // Se o item atual for um "R", fecha o grupo e cria a caixa mãe
        if (verbo === 'R' || $item.is(':last-child')) {
            var $wrapper = $('<div class="bloco-grupo bloco-' + numeroBloco + '"></div>');
            
            // Coloca os itens na ordem correta dentro da nova caixa
            $.each(grupoAtual.reverse(), function(i, $el) {
                $wrapper.append($el);
            });

            // Insere a caixa mãe no topo do container
            $container.prepend($wrapper);

            // Reinicia para o próximo bloco de cima
            grupoAtual = [];
            numeroBloco++;
        }
    });
});