MiniMod do Discourse

discourse-mini-mod

Este plugin resolveu um problema em nosso fórum Discourse no qual precisávamos de “organizadores”, mas não necessariamente queríamos conceder permissões completas de moderador.

Contribuições são mais do que bem-vindas!

Por favor, acompanhe qualquer problema através dos issues do GitHub.

Mini-mods podem reorganizar as prateleiras. Moderadores podem expulsar pessoas da loja.

Um plugin para Discourse que dá a usuários comuns o poder de gerenciar categorias, tags e tópicos — sem exigir status de moderador ou administrador.

Ele se baseia no recurso existente de moderação de grupo por categoria do Discourse, estendendo as permissões que ele concede.

Como funciona

  1. Crie um grupo e adicione seus usuários a ele
  2. Vá até uma categoria, pressione a chave inglesa e adicione o grupo em “Além da equipe, o conteúdo desta categoria também pode ser revisado por:”
  3. Ative mini_mod_enabled nas configurações do site
  4. Esses usuários agora podem gerenciar as categorias que moderam

Opcionalmente, ative mini_mod_manage_all_categories para permitir que eles gerenciem todas as categorias e movam tópicos entre quaisquer categorias. Ative mini_mod_manage_tags para permitir que eles criem, editem e excluam tags.

NOTA: Você deve adicionar pelo menos uma categoria ao grupo para que mini_mod_manage_all_categories funcione.

Configurações

Configuração Padrão Descrição
mini_mod_enabled false Ativar o plugin
mini_mod_manage_all_categories false Permitir que moderadores de grupo de categoria gerenciem todas as categorias e editem/movam tópicos em todas as categorias
mini_mod_manage_tags false Permitir que moderadores de grupo de categoria criem, editem e excluam tags
mini_mod_can_post_in_closed_topics false Permitir que moderadores de grupo de categoria respondam em tópicos fechados nas categorias que moderam. Desativado por padrão — ative para conceder; a equipe do site não é afetada
mini_mod_can_reopen_topics false Permitir que moderadores de grupo de categoria reabram tópicos fechados nas categorias que moderam. Desativado por padrão — ative para conceder; a equipe do site não é afetada

Todas as configurações exigem que enable_category_group_moderation do núcleo do Discourse também esteja ativado. O gerenciamento de tags também requer tagging_enabled.

Permissões concedidas

Ação Padrão (por categoria) Com gerenciar todas as categorias Com gerenciar tags
Criar categorias Subcategorias sob categorias moderadas, ou nível superior Todas as categorias
Editar categorias Apenas categorias moderadas Todas as categorias
Excluir categorias Apenas categorias moderadas (devem estar vazias, sem filhos) Todas as categorias (mesmas restrições)
Editar tópicos Apenas em categorias moderadas (recurso principal) Todos os tópicos visíveis
Alteração em massa de categoria de tópico Para/desde categorias moderadas Qualquer categoria visível
Mover posts Em categorias moderadas (recurso principal) Em categorias moderadas (recurso principal)
Criar tags Sim
Editar/renomear tags Sim
Excluir tags Sim
Gerenciar sinônimos de tags Sim

Duas capacidades adicionais estão desativadas por padrão, mas podem ser concedidas ativando a configuração de site correspondente:

Ação Padrão Concedido por
Responder em tópicos fechados em categorias moderadas Desativado mini_mod_can_post_in_closed_topics: true
Reabrir tópicos fechados em categorias moderadas Desativado mini_mod_can_reopen_topics: true

Fechar tópicos abertos, arquivar, fixar, dividir/juntar e qualquer outra ação de moderação permanecem disponíveis para mini-mods em suas categorias, independentemente dessas configurações.

Instalação

Adicione a URL do repositório do plugin ao seu app.yml:

hooks:
  after_code:
    - exec:
        cd: $home/plugins
        cmd:
          - git clone https://github.com/alltechdev/discourse-mini-mod.git

Em seguida, reconstrua o contêiner:

./launcher rebuild app

Atualizações posteriores podem ser feitas no painel de administração.

Painel de Administração

6 curtidas

Reservado para o futuro…

Nota: Não sou muito ativo aqui, por isso os problemas no GitHub são o melhor caminho. Vou verificar aqui periodicamente.