Mods da categoria não conseguem ver a conversa completa em outras bandeiras

Vou classificar isso como um bug, embora eu não tenha certeza se esse é o comportamento pretendido.

Atualmente, moderadores de categoria podem lidar com denúncias em sua própria categoria. No entanto, parece que, quando alguém denuncia uma postagem como “outra coisa”, eles podem lidar com a denúncia, mas não conseguem visualizar a conversa completa, mesmo que o botão esteja disponível; a página apenas diz que não existe ou é privada.


Reprodução (são necessárias duas contas. O Usuário 2 é moderador de categoria)

  • O Usuário denuncia a postagem como “outra coisa”
  • O Usuário 2 acessa /review, revisa a denúncia, mas não consegue visualizar a conversa completa
5 curtidas

Obrigado pelo relatório do bug. Posso confirmar que consegui reproduzir o problema.

Quando uma postagem é sinalizada como ‘Outra Coisa’, um tópico de mensagem privada é criado entre o usuário que criou a sinalização e o grupo ‘moderadores’. O botão ‘ver conversa completa’ na sua captura de tela leva a esse tópico de mensagem privada e, se um moderador de grupo de categoria clicar nele atualmente, receberá um erro.

A solução é fazer algo como o seguinte próximo à linha 309 de post_action_creator.rb, o que adicionará o grupo relevante à mensagem privada se estiver habilitado, etc:

if SiteSetting.enable_category_group_moderation? && @post.topic&.category&.reviewable_by_group_id?
  create_args[:target_group_names] << @post.topic.category.reviewable_by_group.name
end

Se esse grupo tiver ‘Quem pode enviar mensagens a este grupo?’ definido como ‘Todos’, o moderador do grupo de categoria poderá então ler esses relatórios de ‘Outra Coisa’.

Se não estiver definido como ‘Todos’, um erro será retornado dizendo que você não pode criar a mensagem ao tentar criar a sinalização.

Vejo duas soluções possíveis:

  1. Exigir que os grupos de Moderador de Grupo de Categoria tenham ‘Todos’ para a permissão de mensagens.
  2. Adicionar uma flag adicional aos argumentos no bloco de código acima, algo como skip_group_validation, que pulará a verificação das permissões de mensagens ao criar sinalizações de ‘Outra Coisa’.

Vou pensar sobre isso e ver o que consigo elaborar…

5 curtidas

Uma correção para o problema acima foi mesclada.

Obrigado @ondrej!

8 curtidas