Navbar do wcm não aparecer para usuários não logados

Olá pessoal, estou com um caso onde preciso ter o wcm.header do fluig quando o usuário está logado mas quando a página estiver pública (sem o /p/ na url) ele deve sumir, porém é o mesmo layout, tem como isso?

<@wcm.header authenticated="true"/>

Eu vejo que ele tem a propriedade authenticated mas quando troco para false ou retiro ele ainda continua aparecendo para quem não está logado, a ideia é ter uma navbar personalizada apenas para quando o usuário não estiver logado e vendo a página, e usar esse componente de header quando estiver logado.

Boa tarde!
Desconheço essa possibilidade… seria viável fazer uma tratativa tentando pegar alguma classe/id do elemento que há o cabeçalho do ambiente do Fluig? E aí, através do código: WCMAPI.getUser() você verifica se for Guest (isso significa que o usuário não está autenticado no Fluig), esconde o cabeçalho, caso contrário, mostre…

Ex:
image

Entendi, parece um pouco fora da curva mas funcionaria sim… Pensei que existiria alguma opção nativa da plataforma para não ter que fazer algo do tipo, de qualquer forma, obrigado!

1 curtida

@gmesquita vc tem algum conhecimento sobre esse tópico?

Não tenho… também tenho curiosidade nisso hahaha! Vou aguardar a interação de alguém nesse tópico.

pessoal, consegui com esse código abaixo, ele espera o conteúdo carregar para não bugar e seleciona o elemento com appcode do header do wcm e então verifica se o usuário é o guest, se sim deixa a nativa oculta e exibe a customizada!

document.addEventListener('DOMContentLoaded', function() {
  var nav = document.querySelectorAll('[appcode="responsive_header"]');
  var userAuth = WCMAPI.getUser();
  var guestNavbar = document.querySelectorAll('guest-navbar');

  nav.forEach(navbar => {
    if (userAuth === 'Guest') {
      navbar.style.display = 'none';
    } else {
      guestNavbar.style.display = 'none';
      navbar.style.display = 'block';
    }
  });

  console.log(userAuth);
});
1 curtida