Jump to content

MediaWiki:Common.js: Difference between revisions

No edit summary
No edit summary
Line 7: Line 7:
         if (!$sidebar.length) return;
         if (!$sidebar.length) return;


         // 1. Esconde as subpáginas (procura por qualquer link que tenha a subpágina no URL)
         // 1. Identifica e esconde as subpáginas (procura por links ou links ativos que contenham a barra /)
         $sidebar.find('a[href*="SENSBLUE_ATLAS/"]').closest('li').addClass('atlas-submenu');
         $sidebar.find('li').each(function() {
            var $li = $(this);
            var hasSubpage = $li.find('a[href*="SENSBLUE_ATLAS/"], .mw-selflink[href*="SENSBLUE_ATLAS/"]').length > 0
                            || $li.text().includes('Datasheet')
                            || $li.text().includes('Release Notes');
           
            // Garante que não apanha a página principal
            if (hasSubpage && !$li.text().includes('SENSBLUE ATLAS')) {
                $li.addClass('atlas-submenu');
            }
        });


         // 2. Procura a página principal do Atlas (procura se o URL CONTÉM SENSBLUE_ATLAS mas NÃO contém a barra da subpágina)
         // 2. Procura o item pai (SENSBLUE ATLAS) pelo texto, independentemente de ser link ou texto estático
         var $mainAtlasLi = $sidebar.find('a[href*="SENSBLUE_ATLAS"]').filter(function() {
         var $mainAtlasLi = $sidebar.find('li').filter(function() {
             return !$(this).attr('href').includes('SENSBLUE_ATLAS/');
             var text = $(this).clone().children().remove().end().text().trim() || $(this).text().trim();
         }).closest('li');
            return text === 'SENSBLUE ATLAS';
         }).first();


         // Se encontrou e ainda não tem a seta
         // Se encontrou e ainda não tem a seta
Line 20: Line 31:
             $mainAtlasLi.css({
             $mainAtlasLi.css({
                 'display': 'flex',
                 'display': 'flex',
                 'align-items': 'center'
                 'align-items': 'center',
                'justify-content': 'space-between'
             });
             });


             // 3. Cria a seta
             // 3. Cria a seta
             var $toggleBtn = $('<span class="atlas-toggle-btn" style="cursor:pointer; margin-left:8px; user-select:none;">▶</span>');
             var $toggleBtn = $('<span class="atlas-toggle-btn" style="cursor:pointer; margin-left:8px; user-select:none; font-weight:bold;">▶</span>');
             $mainAtlasLi.append($toggleBtn);
             $mainAtlasLi.append($toggleBtn);