How do I promote all users to trust level 1?

Our forum is for paying members of our organization, therefore spam seems to not be a problem. Unfortunately due to the auto-toggle of the default trust level after 50 users, we currently have a few users who are trust level 0.

Is there a way to find the users with trust level 0 and promote them to trust level 1? I noticed that users who have trust level 1 also show up in the trust level 0 group, so everyone is in that group. Thanks! :slightly_smiling_face:

How many users are we talking about? You can see users who have only Trust Level 1 from the admin report /admin/users/list/newuser. This does not include users with TL1 or higher. From here you can manually up the user’s trust levels. You are correct that all users on the site technically have TL0, even if they also have a greater trust level. If a lot, a rails command is your best bet.

You should also make sure to change the site setting default trust level if you want all users to have TL1.

6 Likes

Thanks! We only had about 7 users at level 0, so it was easy to upgrade them manually. We’ve also set our default trust level to 1, and may even bump it to 2 if users are running into posting limits. I’ll look into the rails commands if we go that route.

1 Like

@jomaxro For future reference, is there a known way to do this via the command line, or would I have to construct a custom command? Thanks!

Sure! @pfaffman shared some commands in Migrated to Discourse and system is creating hundreds of flagged posts. Backup is always recommended when running potentially destructive commands. Just modify the User.where( command to suit your needs, the rest should be good to go.

4 Likes

Hi,
I used users.update_all(trust_level: 2) on some trust level 1 users. The users are now trust level 2:
image
But don’t belong to the related group:
image
Will they be put inside this group automatically later? Is there some sidekiq task to be executed?
What if we decrease a user trust level from command line (lvl 4 -> lvl 2)?

2 Likes

I figured it out.
The sidekiq task which triggers the trust level groups population is EnsureDbConsistency.

After updating users trust levels from command line (either gaining or losing trust levels), EnsureDbConsistency will move users in and out from these groups.

3 Likes