Rótulos em destaque quebram a página de perfil do usuário

Olá,

Notei que a página de perfil de uso termina após o título “Featured Badges”. Nada mais abaixo (especialmente o botão Salvar), exceto o rodapé do site.

Encontrei o seguinte no console do desenvolvedor:

Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'split')
    at l.<anonymous> (user-featured-badges.js:12:1)
    at getter (index.js:444:104)
    at l.a [as featuredBadges] (cache-BESCGvbE.js:1878:17)
    at eM (cache-BESCGvbE.js:1647:18)
    at index.js:95:32
    at index.js:75:37
    at Z (index.js:418:5)
    at T (index.js:74:16)
    at eU (index-Cx6axmzR.js:1786:17)
    at eK.create (index-Cx6axmzR.js:1961:17)
    at Object.evaluate (index.js:1393:23)
    at Object.evaluate (index.js:770:198)
    at tq.evaluateSyscall (index.js:3353:20)
    at tq.evaluateInner (index.js:3332:60)
    at tq.evaluateOuter (index.js:3329:10)
    at t1.next (index.js:3990:46)
    at t1._execute (index.js:3979:21)
    at t1.execute (index.js:3955:41)
    at tW.handleException (index.js:3447:19)
    at tJ.handleException (index.js:3595:52)
    at t$.throw (index.js:3400:16)
    at ek.evaluate (index.js:964:42)
    at t$._execute (index.js:3387:34)
    at t$.execute (index.js:3379:17)
    at tQ.rerender (index.js:3613:8)
    at t5.render (index-Cx6axmzR.js:5114:55)
    at index-Cx6axmzR.js:5390:16
    at tD (index.js:2893:7)
    at io._renderRoots (index-Cx6axmzR.js:5370:7)
    at io._renderRootsTransaction (index-Cx6axmzR.js:5418:12)
    at io._revalidate (index.js:5451:10)
    at invoke (index.js:262:14)
    at m.flush (index.js:180:11)
    at g.flush (index.js:334:19)
    at q._end (index.js:762:32)
    at index.js:499:12
2 curtidas

Alguma ideia sobre este problema? Que informações posso fornecer para que este problema seja melhor analisado?

1 curtida

…acabei de descobrir que para outro usuário que definiu alguns emblemas em destaque, a página de perfil carrega completamente. Eu não defini nenhum emblema em destaque - talvez seja esse o motivo?

1 curtida

Você tentou o modo de segurança?

Acredito que essa seção foi adicionada pelo plugin de badges de postagens, então pode ser um bug no plugin em vez do núcleo do Discourse.

Talvez o @Arkshine saiba mais sobre isso

2 curtidas

Obrigado por relatar, @Roi, e obrigado, @Moin, por trazer isso à minha atenção. Eu consigo reproduzi-lo. O problema ocorre quando um usuário não possui badges. Vou fazer um PR o mais rápido possível.

3 curtidas

Obrigado! :slight_smile:

Aliás, eu executo isso como um plugin. Está correto ou devo executá-lo como um componente de tema?

1 curtida

Vamos lá:

A versão do TC não permite que os usuários selecionem os distintivos em seus perfis. É uma configuração global para todos os usuários, que é a principal diferença.

4 curtidas

Então eu entendo que a versão do plugin é melhor?

Obrigado pelo PR! :slight_smile: É para ambas as versões?

Depende se você quer deixar seus usuários controlarem quais emblemas eles querem mostrar (plugin) ou se os administradores devem controlar quais emblemas podem ser exibidos com base nos emblemas do usuário atual (TC).

É uma limitação no TC que você não pode fazer o mesmo que o plugin, mas eu acho que ambos os caminhos têm seu uso dependendo de suas necessidades.

2 curtidas

O PR foi mesclado agora e está funcionando novamente, obrigado novamente! :slight_smile:

1 curtida

Observação: o rastreamento de bugs para temas/componentes ou plugins de terceiros deve ser feito no tópico dedicado do plugin/tema/componente ou em um rastreador de bugs de terceiros.

3 curtidas

@Arkshine você pode compartilhar o link do tópico no meta para o componente de tema afetado? Vou mover tudo para lá e limpar esses posts de administração.

É um plugin e, até onde sei, não há tópico. Angus o postou originalmente no tópico oficial do TC: Post Badges - #121 by angus. :thinking:

1 curtida