Como desativar o modal de E-mail de Entrada

Como devo tornar este ícone de e-mail não clicável?

image

Como devo desativar este modelo de E-mail de Entrada?

E como desativar isto

Hoje aprendi que esse ícone é clicável.

1 curtida

Haha sim, é, chato :laughing:

Aliás, Feliz Aniversário :grin: :star2:

Suspeito que seja apenas para funcionários, acabei de verificar em um fórum onde não tenho acesso de funcionário e não consigo clicar no ícone. (no meu celular, pelo menos)

Obrigado! (embora isso seja parcialmente por causa dos fusos horários, ainda não é meu aniversário aqui :upside_down_face:)

1 curtida

Tenho que ver isso, obrigado por me avisar. :grinning:

Aqui mostra um ícone de bolo ao lado do seu nome haha, de qualquer forma, feliz aniversário adiantado, acho que sou o primeiro a dizer isso :joy:

1 curtida

Como é visível apenas para administradores, não há problemas com isso.

De qualquer forma, se mais alguém como eu quiser desativar isso, mas não conseguir encontrar uma maneira, aqui está o que fiz com o GPT e funcionou muito bem :slight_smile:

<script type="text/discourse-plugin" version="0.8">
  api.onPageChange((url, title) => {
    // Aguarda a página carregar completamente
    Ember.run.scheduleOnce('afterRender', function() {
      // Encontra e remove todos os elementos de detalhes com a classe "elided"
      var elidedDetailsList = document.querySelectorAll('details.elided');
      elidedDetailsList.forEach(function(elidedDetails) {
        elidedDetails.remove();
      });
    });
  });
</script>

Olá kynic,

onPageChange pode ser um pouco amplo demais para uso (e não confiável se você carregar/atualizar posts).
Você pode usar decorateCookedElement em vez disso. Ele é chamado para cada elemento cozido de post.

Além disso, aqui está uma maneira de desativar o indicador de e-mail. É apenas um hack para não incluir o HTML. Se você estiver curioso, pode ver o código original aqui.

<script type="text/discourse-plugin" version="0.8">
    api.reopenWidget("post-meta-data", {
        html(attrs) {
            if (!attrs.via_email) {
                return this._super(attrs);
            }
          
            // Não gere o widget "post-email-indicator".
            attrs.via_email = false;
            const html = this._super(attrs);
            attrs.via_email = true;
          
            return html;
        }
    })

    api.decorateCookedElement((element, helper) => {
        if (helper?.getModel().via_email) {
            element.querySelector('details.elided').remove();
        }
        
    }, { onlyStream: true });
</script>

Você também pode usar apenas CSS para ocultá-los.

.post-info.via-email,
.cooked details.elided {
    display: none;
}
6 curtidas

Obrigado :grinning:

Removi a parte de metadados da postagem, pois quero que este ícone de e-mail seja exibido. :slight_smile:

É isso que estou usando agora para remover o conteúdo e ocultá-lo via CSS, caso necessário.


    api.decorateCookedElement((element, helper) => {
        if (helper?.getModel().via_email) {
            element.querySelector('details.elided').remove();
        }

    }, { onlyStream: true });


.cooked details.elided {
    display: none;
}

Obrigado por este código :rocket: :blush:

3 curtidas

De nada :slight_smile:

Além disso, você está certo; apenas a equipe pode clicar no ícone! Falha minha. :smile:

2 curtidas

Bom trabalho :slight_smile:

2 curtidas

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.