Retorno do Discurso

Os membros do Maker Forums definitivamente apreciam a capacidade de ter múltiplas reações com emojis. Seria muito triste perder isso em uma migração caso o retort deixasse de ser mantido.

3 curtidas

O Retort continuará sendo mantido pelo Pavilion.

@Ahmed_Gagan, você tem alguma opinião sobre o abaixo?

5 curtidas

Para uma reação de retórica com prioridade, você pode usar:

SiteSetting.post_undo_action_window_mins = minutos máximos permitidos


ReactionManager.new(first_retort_reaction_at_priority, by_user, Guardian.new(by_user), post).toggle!

Isso cuidará de tudo: removerá o like se o usuário já tiver curtido o post e adicionará uma reação.

1 curtida

Sim, eu poderia fazer isso. Seria um pouco uma gambiarra, porém :wink:

Não tenho certeza de que poderia assumir que essa solução alternativa permaneceria viável ao longo do tempo. Também é um pouco arriscado. Por exemplo, se eu apenas executar esse código, a configuração do site post_undo_action_window_mins do usuário permaneceria alterada. Você poderia reverter no final da migração, mas fazer alterações de configuração assim, na hora, para contornar um guardião não é ideal.

Idealmente, o que busco aqui é uma pequena alteração na interface do ReactionManager para tornar possível migrar retóricas para reações de forma confiável. Atualmente, ela está configurada apenas para lidar com solicitações do cliente.

Uma maneira de fazer isso seria:

  • abstrair o guardião em toggle! para um método ensure_can_toggle
  • tornar o método ensure_can_toggle sujeito a uma opção force

Essa é a abordagem normalmente adotada para lidar com migrações ou importações de backend em outras partes do Discourse (se você fizer uma busca em app/ ou lib/ por force, verá alguns exemplos).

Faz sentido?

2 curtidas

Acho que não precisamos usar a configuração aqui, já que não estamos alterando os likes já existentes no post. Isso significa que estamos criando novas reações ao post. Nesse caso, guardian.can_delete_reaction_user? será sempre verdadeiro. Apenas usar ReactionManager.toggle será suficiente para esse fim, na minha opinião.

1 curtida

O Discourse faz muito com os Curtidas, como limitar o número de Curtidas por nível de confiança e conceder distintivos às pessoas com base nas Curtidas.

Adicionar uma reação também incrementa a contagem de Curtidas tanto para usuários quanto para tópicos?

1 curtida

Você pode perguntar separadamente sobre como isso interage com o novo plugin oficial Discourse Reactions

Mas o Retort (que permite múltiplas reações por postagem por usuário, ao contrário do plugin Discourse Reactions) não interage de forma alguma com os níveis de confiança e distintivos relacionados aos curtidas.

5 curtidas

@gdpelican este é um repost de https://meta.discourse.org/t/reaction-emoji-seem-to-have-no-verification/189108, pois parece que a reação não faz parte do Discourse, então estou repostando aqui:

Acho que descobri um bug, mas não tenho uma reprodução adequada. No entanto, posso mostrar facilmente exemplos do problema e acredito que minha teoria pode estar correta.

O problema é que é possível adicionar emojis inexistentes às reações de postagens. Isso resulta em reações como :whateverYouWant: em postagens.

Você pode ver um exemplo disso no fórum do Manjaro, onde notei que as postagens de um usuário específico frequentemente apresentam esses emojis inexistentes. Após fazer algumas perguntas a ele, concluí que ele está usando algum tipo de extensão de tradução automática no navegador, que provavelmente traduz os emojis :code: para o idioma dele. Infelizmente, não obtive resposta desse usuário para saber exatamente como está configurado o navegador dele. Para embasar minha teoria, você pode ver que, quando ele citou alguém no tópico vinculado a seguir, a citação continha a tradução da mensagem original.

Veja esta mensagem/tópico no fórum do Manjaro:

Veja um exemplo nas reações: você vê claramente o problema com todas as reações válidas ao lado da inválida:

Parece, portanto, que um usuário pode enviar emojis inexistentes devido à falta de verificação do código do emoji.

1 curtida


Alguém mais teve essa situação em que as reações ficam desalinhadas em telas pequenas e no celular?

1 curtida

Atualizei este plugin para funcionar com o código mais recente do Discourse.

@th21 Também atualizei a estrutura HTML do retort para melhor acomodar listas longas de retorts, especialmente em dispositivos móveis.

8 curtidas

Obrigado, está funcionando!

2 curtidas

Os Retorts no Mobile estão bagunçados para mim na última atualização

1 curtida

Acho que o contêiner de respostas deve ficar acima ou abaixo da barra de ferramentas, de preferência acima. Isso nos dá muito mais espaço para trabalhar no que diz respeito ao CSS.

2 curtidas

É possível usar o explorador de dados ou o console para encontrar a lista de emojis mais usada? :thinking: Eu estava olhando a tabela plugin_store_rows, mas não encontrei nada útil.

3 curtidas

Olá, a dica de ferramenta com a qual os usuários reagiram com réplicas agora está quebrada no celular. Tentei mexer com o z-index, mas não consegui consertá-lo com CSS personalizado. Alguma chance de alguém dar uma olhada?

Este plugin está em #fim-de-vida. Por favor, use o Plugin de Reações.

5 curtidas

Discourse Reactions é um substituto ruim por um motivo principal: limita as reações a uma por postagem. Isso é uma redução drástica na utilidade das reações em comparação com o Retort, que permite que as pessoas deem várias reações à mesma postagem.

Eu realmente gostaria que o Retort fosse mantido por esse motivo. A melhor solução seria atualizar o Discourse Reactions para permitir várias reações.

5 curtidas

O outro grande déficit é que o Retort permite que você selecione entre todos os emojis disponíveis, enquanto você tem que definir um conjunto de emojis para as reações do Discourse. Se o Discourse Reactions tivesse ambos os recursos, eu largaria o Retort de bom grado, mas até que isso aconteça, meus usuários não ficarão felizes se eu disser que eles estão perdendo o acesso a 95% das reações de emoji.

2 curtidas

Existe um tópico de Feature que mostra alguma promessa…

3 curtidas

Sim, se tudo isso for implementado, acho que conseguiria convencer facilmente minha base de usuários a migrar. Só é ruim ter que desativar a alternativa antes que isso esteja totalmente disponível.

3 curtidas