Estou tentando adicionar um código no Discourse para um calendário de eventos. Fiz a indentação de quatro espaços, mas parece que não está funcionando.
A causa aqui é que o Discourse filtra a entrada do usuário em posts como medida de segurança. Você não gostaria que usuários aleatórios executassem scripts no seu site, então os filtramos.
Você pode usar um componente de tema para fazer isso funcionar. Se você adicionar algo como este em um novo componente de tema — na aba de cabeçalho — e depois adicioná-lo ao seu tema ativo, será possível usar esse embed.
Depois de fazer isso, você pode adicionar o calendário do AddEvent a um post incluindo algo como este em sua publicação.
[wrap=addEvent calendar=bJ306355][/wrap]
Você pode alterar o atributo calendar=bJ306355 para adicionar o identificador específico do calendário que deseja incorporar.
A última coisa que você precisa fazer é adicionar o script do AddEvent à lista de permissões nas configurações do seu site (isso é outra camada de segurança).
Procure por content_security_policy_script_src no painel administrativo e adicione este link lá
https://addevent.com
Me avise se isso funcionar para você, e posso empacotá-lo como um componente de tema.
Em vez de incorporar o calendário em uma postagem, o que é muito estreito para exibir a versão desktop do embed, este componente de tema assume o controle da página “Próximos Eventos” do plugin DiscourseCalendar.
Observe que, para fazer isso, precisei personalizar o script do AddEvent (https://addevent.com/js/cal.embed.t1.init.js) para permitir re-renderizações entre transições de página.