Groups can set category and tag notification levels

A feature requested a few times over the years is to be able to set users’ category and tag notification levels based on the group they’re added to. We added this feature to our beta branch today.

In the group management UI, there are two new sections: Categories and Tags. They work the same way as the existing user preferences.

When a user is added to a group, their notification preferences will be updated. If the user already has a category/tag in their preferences, then the group will only raise the notification level. For example, if the user is set to track a category, and is then added to a group that is set to watch the category, then their preferences will be changed to watch it. If they’ve opted to watch it, but the group would mute it, they will continue to watch it after being added to the group.

After being added to a group, users are free to change their notification settings to be different from the group’s defaults.

When users are removed from a group, their notification levels aren’t changed.

Category permissions are enforced as always, so a group can’t make a user track a category that they aren’t permitted to see.

39 Likes

:+1: Great ! :slightly_smiling_face:
And what do you think about an optional feature that would sync the muted categories and the activity tab (by not displaying the muted categories)?
Some here (in french) would like to be able to isolate the activity of a group within some categories.
I’ve seen that it’s already possible to filter the activity tab with one category_id in the url… so… plugin ? usefulness? :thinking: Or maybe it’s even already implemented, i didn’t realize that the muted categories wouldn’t appear on the categories or latest pages :sweat_smile:

2 Likes

Great work on a super useful feature. We will make good use of this.

What then is the point of the ‘Mute’ option, if it can never be applied? Or can this in fact be applied if they are ‘Normal’, just not if they are ‘Watching’, ‘Tracking’, or ‘WFPing’?


Feature request #1 - have ‘Normal’ as an option

The situation is a mute-all forum, where I want to use a group to change a category or tag status from ‘Muted’ to ‘Normal’ (not to a version of ‘watching’).

Feature request #2 - ability to over-ride watching preferences for a group if desired

I think that this would allow consistent behaviour with the Category and Tag watching for the whole forum in Settings.

5 Likes

What happens to existing members of a group when the group settings are changed? If I add a tag as tracking will all members start tracking that tag (if they aren’t already watching it)? Or will they have to leave/join for that behavior to be triggered?

3 Likes

Mute can still be applied if no explicit preference for the category has been expressed in the past, and the default is Normal.

2 Likes

If the user is using normal notification level for a category, which means they haven’t included the category in their user preferences, then a group can mute the category for them. If they have specified tracking or higher, then the group won’t override their preference for that category.

Sounds useful for sites that have enabled the “mute all categories by default” setting. So if “mute all categories by default” is enabled, the group category settings would include an input for normal tracking level.

How would it work if I was added to two groups? If I work on building accounting software for my company, I’m added to the Finance group which mutes the #dev category and I’m added to the Developer group that tracks the #dev category, which one wins?

Current members’ preferences aren’t changed, but I think it makes sense that the group change should apply to them.

3 Likes

Sweet; would you mind updating the OP to.make this clear?

Yup. Is that implemented, or are you agreeing that it is an idea with merit?

Good point, that clearly can’t be the way it would work. It might have to stay as a Rails console thing.

Totally agree! Or at least there be an option for this - it would make a lot of sense to me to have this consistent with the site settings.

1 Like

Any idea on when this feature will be rolled out?

1 Like

Every feature in #feature:announcements is available right away.

If you are self-hosted, visit /admin/upgrade and update to latest to use it.

If you are under our official hosting and not able to find it, contact our support channel.

5 Likes

This is a super-useful feature, great job!

One thing that could be added: have a similar interface on category options.

For instance, if I want 10 of 15 groups to track a certain new category, it would be actually easier if there was this option in category management where I could see and easily add all the groups to track it. This way I wouldn’t need to go into every single group and check that option.

A bit like you guys did with theme components, where you can go to a specific theme and add the components you want, but also go to the component and easily check all the themes you want it to be enabled in.

4 Likes

What happens when a group’s “Category default notifications” settings are changed – say, to “Watched” from “Tracked”? Will existing members of the group have their notifications raised?

1 Like

@alehandrof Still to do is to apply the changes to existing group members.

5 Likes

Is there are a timeline for this? I was literally just about to switch over from my old plugin to yours, but we might run into this in the coming weeks as we’re organizing some of our working groups.

1 Like

You can do a workaround by making a new group, adding the default notifications to it, and then copying the group members into it. You can then delete the group.

Data Explorer would be needed with a suitable query of course for larger groups.

1 Like