Add "approve new topics unless trust level" setting

I would like to be able to allow trust level 1 users to post responses to existing topics (both posts and replies) without moderation, while new topics should go to an approval queue.

Is this doable with the current settings? If not, would this be a feature request for an upcoming version or would it be something a plugin could/should do? (For example, could this be done by a simple customization that hides the new topic button for a certain user level?)

1 curtida

It’s not a bad idea; we suppressed Reply as Linked Topic for TL0 users to make the topic page a bit less noisy, but that is less relevant now that Reply as Linked Topic is behind the link button on each post.

I don’t know that creating a new topic should be suppressed for TL1 users though.

1 curtida

The goal (for my case) would be to review new topics before publishing. Suppressing New Topic button is not the right option, I take that back.

(Apologies for monopolizing this topic
)

I made some progress on this today. I added a second setting called “approve new topics unless trust level” to the Posting screen:

and then in /lib/new_post_manager.b I added the following check to self.user_needs_approval? :
(manager.args[:title].present? && user.trust_level < SiteSetting.approve_new_topics_unless_trust_level.to_i) ||

It seems to work well on my initial tests. And I think that having this as an independent setting makes sense; sites can even combine both settings (approval queue for all posts for TL0 users and approval queue of new topics for TL1 users, for example).

If this fits within the team’s plans, I would be honoured to submit a PR.

6 curtidas

Go for it! Just keep in mind we might not get around to reviewing it until early October as we’re about to embark on a team meetup.

1 curtida

Thanks, already submitted and @zogstrip reviewed it quickly and recommended writing tests. I have not written a test before, so I am not sure if it is expected of me or someone else.

Here is the PR:
https://github.com/discourse/discourse/pull/4447

6 curtidas

I may be off base here.

I agree that rspec and qunit tests are a good thing to have, but I think that the type of “test” RĂ©gis meant here is a “conditional test”.

That is, the “OR - AND” logic should test for “fast” and “regex” in there somewhere.

The PR has been updated with ruby tests.

3 curtidas

PR is now merged, thanks team!

4 curtidas

Tenho um problema na minha instĂąncia: o fĂłrum estĂĄ apenas começando e tenho usuĂĄrios recĂ©m-registrados com trust_level_4, mas as postagens deles continuam aparecendo na fila de revisĂŁo de postagens do administrador. NĂŁo tenho certeza do que estou fazendo de errado; nas minhas configuraçÔes, a opção ‘aprovar a menos que nĂ­vel de confiança’ estĂĄ definida como 1.

VocĂȘ consegue reproduzir isso, @tshenry?

2 curtidas

Antes de me aprofundar muito nisso, vocĂȘ pode me dizer como as seguintes configuraçÔes do site estĂŁo configuradas?

  • aprovar a menos que nĂ­vel de confiança
  • aprovar novos tĂłpicos a menos que nĂ­vel de confiança
  • aprovar contagem de posts

E vocĂȘ tambĂ©m pode confirmar que NÃO tem nenhuma configuração de aprovação por categoria ativada:

2 curtidas