Temos a configuração qa enable likes on answers habilitada, mas não há
visíveis.
Também temos o plugin oficial Discourse Reactions instalado. Isso pode ser a causa deste bug?
Temos a configuração qa enable likes on answers habilitada, mas não há
visíveis.
Também temos o plugin oficial Discourse Reactions instalado. Isso pode ser a causa deste bug?
Acabei de ativar/desativar Reações no meu site de teste para verificar isso e parece que está conectado. Pergunto-me se esta é uma consequência desta correção de bug Polegar para cima, duas vezes?
Olá,
As reações estão desativadas (ocultas) por padrão em tópicos de votação de posts com CSS.
Você pode reativá-las adicionando um pouco de CSS a um componente Comum/CSS ![]()
.post-voting-topic,
.post-voting-topic-sort-by-activity {
.discourse-reactions-actions {
display: inline-flex;
}
}
Muito obrigado!
A limitação por padrão é compreensível (muitas opções para dar feedback podem ser confusas), mas se houver uma configuração que permita aos administradores habilitar “curtidas” e esses administradores tivessem habilitado reações em seu site, então seria lógico habilitar reações em posts de votação quando eles habilitassem a configuração.
E, de qualquer forma, acho que mais administradores provavelmente pensarão que há um bug em vez de verificar o código e corrigir o CSS. ![]()
| reações instaladas | votação de posts instalada | habilitar curtidas em respostas | invocar removePostMenuButton(‘like’)? |
|---|---|---|---|
| não | não | não (NA) | não, manter |
| sim | não | NA | sim, remover o botão de curtir, mostrar reações |
| não | sim | não | sim, remover o botão de curtir para respostas |
| não | sim | sim | não, manter |
| sim | sim | não | sim, remover o botão de curtir, mostrar reações apenas para o primeiro post, não para respostas |
| sim | sim | sim | sim, remover o botão de curtir, mostrar reações para todos |
Esbocei algo como uma tabela verdade aqui. Precisamos programaticamente fazer com que as reações apareçam para posts diferentes dependendo das configurações do site, especialmente a opção habilitar curtidas em respostas, em vez de um simples display:none em CSS.
@tgxworld pegou algo parecido na época sugerindo que provavelmente deveríamos expor uma API no discourse-reactions (t/67550/10). Talvez devêssemos considerar isso.
// Removendo o botão `like`
api.removePostMenuButton("like");
// E adicionando-o novamente
api.decorateWidget("post-menu:before-extra-controls", (dec) => {
return dec.attach("discourse-reactions-actions", {
Em vez de fazer isso
devemos adicionar um método replacePostMenuButton na API do plugin principal e usá-lo no plugin de reações. Nesse caso, não precisaremos de uma lógica separada para o botão de reação no plugin de votação de posts.
Como existe uma solução alternativa, farei essa alteração após o próximo lançamento.
Isso exigiu 3 PRs, mas sua ideia de implementação foi incrível @vinothkannans, funciona perfeitamente. Assim que todos forem mesclados, postarei novamente ![]()
Os PRs foram mesclados e agora (quando sua instância do Discourse for atualizada), as reações respeitam a configuração qa_enable_likes_on_answers. Obrigado pelo relatório de bug @icaria36!
Os PRs mesclados quebram a versão estável do discourse. O site não carrega devido a um erro de javascript.
Uncaught (in promise) TypeError: e.replacePostMenuButton is not a function
u discourse-reactions.js:12
withPluginApi plugin-api.js:2247
initialize discourse-reactions.js:165
initialize app.js:173
runInstanceInitializers Ember
each dag-map.js:192
walk dag-map.js:121
each dag-map.js:66
topsort dag-map.js:72
Ember 4
invoke queue.ts:201
flush queue.ts:98
flush deferred-action-queues.ts:75
_end index.ts:616
_boundAutorunEnd index.ts:257
discourse-reactions.js:12
Sim, eu deveria ter previsto isso. Vou enviar uma correção para o plugin de reações para que ele volte a funcionar quando replacePostMenuButton não estiver presente.
Editar: Mesclei uma alteração que adiciona compatibilidade retroativa.
Este tópico foi automaticamente fechado após 4 dias. Novas respostas não são mais permitidas.