Nosso sistema gera contas para postar anúncios, estávamos nos perguntando se havia uma maneira de adicionar um aviso de equipe separado que tivesse seu próprio ícone que fosse anexado automaticamente a essas postagens para que pudéssemos explicar que é uma conta gerada automaticamente? Mesmo por ID de usuário/nome ou grupo funciona.
Acho que você pode conseguir isso com componentes de tema. Por exemplo, este código faz o que você precisa:
<script type="text/discourse-plugin" version="0.8">
const { iconHTML } = require("discourse-common/lib/icon-library");
const bot_id = 128856; // ou algum outro
api.decorateWidget("post:before", (helper) => {
if (helper?.getModel()?.user_id !== bot_id) {return;}
return helper.h("div.post-notice",[
helper.rawHtml(iconHTML("shield-alt")), // nome do ícone
helper.h("p", "este é um bot"), // texto
]);
});
</script>
Olá!
Tentei usar JS para anexar automaticamente um aviso de staff a uma conta gerada automaticamente se ela for membro do grupo “autogenerated”, mas não tenho certeza de onde estou errando.
window.onload = function() {
const { groupMembers } = await discourse.groups.getMembers({
group_name: 'autogenerated'
});
if (groupMembers.includes(helper.getModel().user_id)) {
return helper.h('div.post-notices', [
helper.rawHtml(iconHTML('shield-alt')),
helper.h('p', 'Esta conta é gerada automaticamente e deve ser considerada um bot. A conta não é monitorada pela equipe.')
]);
}
}
Coloquei o código na parte “Head” do nosso componente, no entanto, ele não está sendo executado. Não tenho certeza se a função não está sendo chamada corretamente, ou se minha instrução IF não está sendo atendida.
Oi @jhealey
Inseri sua postagem no tópico existente, pois as perguntas parecem muito semelhantes. ![]()
Você talvez queira fechar o outro tópico então. Eu provavelmente deveria ter respondido a este tópico em vez disso… ![]()
Confiei demais nas ferramentas automáticas e não verifiquei.
Removi o outro tópico. ![]()
Obrigado! ![]()
Se você estiver usando await, sua função deve ser async.
Eu não sei como não percebi isso! Obrigado! Está funcionando agora ![]()
Tudo bem! De vez em quando, todos nós cometemos deslizes como esse.
De nada! ![]()
todas essas soluções alternativas são boas e tudo mais, mas isso deveria ser um recurso integrado de uma forma ou de outra.