Ban members from certain categories?

Most of our forum is pretty general. However, one part is a “forum game”. If you get caught cheating, you get banned from playing. However, we can’t actually ban them from that specific category … or can we? It’s getting hard to moderate.

EDIT: A workaround, I made a group to store the people suspended from a certain category. However, it would be great if I could natively ban people from certain categories (with the see/create/reply permission options).

1 curtida

I think the only way to do this would be to create a group that includes everyone who is allowed to be in the category.

It would be nice to have a negative category permission available on category security settings, e.g. “Cannot create/reply/see”. But that does not exist now.

2 curtidas

This is 100% covered by groups, just remove the cheaters from the game group and they can’t access the category anymore.

3 curtidas

So default put everyone in a “game” group, then REMOVE them as they are suspended? Interesting

5 curtidas

Desculpe pela necrofilia, mas este é o principal resultado ao pesquisar e outros tópicos (linkados abaixo) estão ou fechados ou não são tão claros em relação à pergunta.

Seguindo a lógica exposta aqui e em tópicos semelhantes, parece que a melhor maneira é adicionar “todos” a um determinado grupo e, em seguida, remover desse grupo os usuários que você deseja “banir” de uma categoria, já que não temos uma opção para remover a permissão de “ver” de grupos, apenas adicionar.

Isso parece bastante lógico, mas digamos que sua instância tenha 5 mil usuários, você tem que adicioná-los todos manualmente? E continuar atualizando sempre que um novo usuário entra? Não tenho certeza se existe algum “código secreto” como “@todos” ao adicionar usuários a um grupo, não parece.

Existe uma maneira melhor e eu a perdi?

Obrigado.

Outros tópicos relacionados:

2 curtidas

Certo. Não há uma boa maneira de banir alguém de uma categoria. Isso não acontece com frequência. Geralmente, se você quiser banir alguém, é de todos os lugares. Você poderia, no console do Rails, adicionar todos a um grupo e depois remover a pessoa, mas seria doloroso.

Você poderia ter um plugin que adicionasse todos a um grupo e, em seguida, tivesse uma configuração do site de usuários que você deseja que não estejam nesse grupo.

3 curtidas

Eu também adoraria ver isso. Nós também temos uma situação semelhante.

  1. Temos algumas categorias restritas a certos grupos.
  2. Mas também precisamos ser capazes de excluir certas pessoas delas.

Ter associação negativa de categoria funcionaria. Mas eu acho que uma solução mais poderosa e flexível seria ter grupos automáticos definidos pelo usuário (como staff é hoje). Esses grupos poderiam suportar operações de conjunto básicas para determinar a associação.

Por exemplo, com este recurso, staff não precisaria ser um caso especial, mas poderia ser apenas admin + moderators. O fato de este grupo automático ter sido criado é realmente uma forte indicação de que este recurso é útil e deve ser estendido para um recurso geral, em vez de ser embutido.

Com isso, você poderia implementar a exclusão negativa tendo um grupo HasAccess = AccessGroup - BannedGroup.

Esses grupos automáticos também seriam muito úteis para outros casos de uso. Por exemplo:

Incrementando Patentes

Atualmente, temos alguns fóruns bloqueados que basicamente abrangem círculos menores de pessoas. Algo como:

  • Admin = Admin
  • Moderators = Admin + Moderators
  • BetaTeam = Admin + Moderators + Beta
  • Trusted = Admin + Moderators + Beta + Trusted

Precisar aplicar a lista correta de grupos a cada categoria é tedioso e propenso a erros. Tivemos muitos casos em que um grupo estava faltando em uma categoria à qual deveria ter tido acesso. Poder definir grupos como este tornaria isso muito mais fácil de gerenciar:

  • ModeratorsOrHigher = Admin + Moderators (isso é embutido como o grupo automático staff)
  • BetaOrHigher = ModeratorsOrHigher + Beta
  • TrustedOrHigher = BetaOrHigher + Trusted

Grupos Comuns

Também é comum termos várias categorias que têm exatamente o mesmo conjunto de regras de acesso. Este é basicamente um caso mais simples do que o acima, mas seria bom poder criar apenas um grupo automático e usá-lo várias vezes, em vez de precisar repetir toda a lista de grupos e mantê-la sincronizada em várias categorias.

Você já deu uma olhada no plugin de grupos dinâmicos?

2 curtidas