Estou apenas começando com o Discourse, então talvez eu esteja perdendo algo óbvio, embora não pense assim. Estou usando a instância hospedada para projetos de código aberto, então não sei se tenho opções limitadas ou o que está acontecendo.
Configurações ausentes
Votação não disponível ao editar uma categoria: Discourse Topic Voting - #269
(Não disponível para o meu plano de hospedagem)
O botão “Discord” da integração de chat do Discord não tem ação e tem uma barra de rolagem estranha abaixo. Nenhuma ação realizada ou erros no modo de desenvolvedor ao clicar no botão.
Parece que isso ajudou com o menu de plugins. Obrigado!
A coisa dos webhooks está na interface do Discord, não no Discourse. Talvez eles tenham mudado a forma como funciona?
Eu sei como obter o webhook do Discord (não mudou)… mas preciso adicionar o endereço do webhook em algum lugar no Discourse para que ele possa enviar para o Discord.
Um trecho de código bem simples. Adicionar o JavaScript de origem manualmente não funciona.
Imagino que não haja outra maneira de habilitar essas opções?
Talvez pudesse haver um processo de solicitação para verificar se a origem é segura e ela poderia ser adicionada a instâncias hospedadas? Ou apenas permitir, já que o JavaScript é executado no cliente e não no host de qualquer maneira?
O caminho correto a seguir é criar um Theme component que faça o que você deseja. Um componente assim pode enviar o JS de terceiros como um ativo de primeira parte, o que é mais seguro e compatível com CSP.
Um exemplo recente que fiz é GitHub - discourse/discourse-orgchart, que envia 3 bibliotecas JS diferentes em seus assets e funciona perfeitamente sob CSP.
<script>
// cole todo o conteúdo de https://cdn.jsdelivr.net/npm/@widgetbot/crate@3 aqui
</script>
<script>
new Crate({
server: '299881420891881473',
channel: '355719584830980096',
})
</script>
Então, agora que meu menu de plugins está funcionando… parece que o Discourse Voting não está incluído. Isso é intencional? Eu imaginava que todos os plugins oficiais viriam por padrão.