Discourse Group User Status
| Summary | Restricts the user status feature to specific groups | |
| Repository Link | https://github.com/Lillinator/discourse-group-user-status | |
| Install Guide | How to install plugins in Discourse |
Overview
This simple plugin gives forum administrators the ability to restrict user statuses to specific user groups or trust levels.
Currently, the user status in Discourse core can only be enabled for the entire forum. However, this plugin introduces more granular control, allowing admins to designate which groups of users can set and display user statuses, providing more flexibility for tailored community management.
Features
- Group-based permissions - Restrict user status setting to selected groups (trust levels, custom groups, or both)
- Admin override - Admins always retain status permissions regardless of group selection
- Automatic cleanup - Removes statuses from users when they lose permission (via setting changes or group removal)
- UI integration - Hides status controls from unauthorized users
Installing and Setting up
-
Follow the standard plugin installation guide.
-
Go to
Admin -> All site settingsand search for “user status” to get the relevant admin settings. -
Make sure the existing admin setting
Enable_user_statusis enabled. -
Then go to the new admin setting
User_status_allowed_groupsand select the groups that are permitted to use and display the user status feature. -
Groups not in the
User_status_allowed_groupssetting list will not have access to the user status modal from the tab in the user menu, nor from theirpreferences/accounttab. -
If you have
Enable_user_statusalready enabled and some users have their user status set, this plugin will clear their status unless they are added to the new setting right away. -
It will also remove an existing status if a user is removed from an allowed group either via the
/admin/users/or/admin/groups/path (or if they are allowed to leave the group on their own and do so). -
Selecting the pseudo-group
everyoneis no different than leaving it default empty or not even installing the component! -
Admins can always set and change their status regardless of which groups are selected; thus, just selecting the
adminsgroup will restrict user status usage to the forum admins.
Settings
There is one new admin setting added by the plugin - User_status_allowed_groups, which is a dropdown list of the forum’s groups. It can be found by searching user status in All site settings, and it is listed under the Group permissions section of the admin sidebar.
Example Use Cases
-
If the user status functionality is only relevant to forum staff, and they may want to show a user status for the rest of the forum.
-
Let only category moderators set their status.
-
Can be used to prevent abuse (or other misuse) of the user status feature by less trusted groups of users.
-
Only special groups should be able to show their user status - for example, tech support team, product sellers, category experts, patrons, master yo-yo tricksters, etc.
-
Only admins are allowed to go for coffee
.
Notes: Notifcations and Calendar Integration
This plugin only affects user status, not notification settings:
- The “pause notifications” option in the status modal is a separate feature.
- If a user’s status is cleared by this plugin, their paused notifications remain active.
- The paused notification indicator stays on their avatar until the duration expires or they manually unpause.
If you have the Discourse Calendar plugin installed:
- Holiday statuses set by the Calendar plugin are NOT affected by this plugin.
- Very rare edge case: If a user manually overwrites their holiday status and an admin removes their group from
user_status_allowed_groupsduring their scheduled holiday, the manual status will be cleared. - The Calendar plugin automatically resets holiday statuses every 10 minutes, so any cleared status is restored at the next scheduled run.
- Users cannot manually set or edit statuses if they’re not in an allowed group but currently have a scheduled holiday status.
More Screenshots
Screenshots of setting effect on user status
Permission to use the user-status feature is granted in the User_status_allowed_groups setting. For example, a test-pilot user is TL_2 and in the purple group; here they are allowed to set and display a user status, along with Staff and TL_4:
As soon as the User_status_allowed_groups setting is changed and the purple group is removed from the setting, the test-pilot user’s ability to use the user status feature is removed from the user menu and their preferences/account page, and if they have an existing user status set, it is cleared on their next page refresh. The same effect happens when a user is removed from the group (or leaves, if allowed to do so).




