We actually started this discussion before, but no decision was made.
Problem:
Posts in subforums are treated as generic forum posts by default, so people miss relevant posts.
For example, my region (Europe - East) has a subforum for L2+ judges under the regional forum. While everybody gets notifications from the regional forum, most people don’t get notifications from the L2+ forum. In order for them to get them, they have to change the notifications settings for the forum, but without notifications, most people don’t even realize the forum exists.
I see judges miss important posts all the time.
My suggestion: a subforum will inherit the default behavior from its parent forum, instead of being treated as a generic forum post (which is silenced by default).
I’m not sure what’s the default for regional forums actually
My suggestion was that if the notifications for the subforum are set to default, it uses the parent’s settings.
If my settings for event forums is “email only”, for example, then GP subforums set to “default” would send emails only. If I change it to “site only”, it won’t affect the main GP forum.
Is it illogical to assume that unless a user specifically changed the settings for a subforum, they would like it to behave like its parent?
That does make some sense, yes - using the superforum’s notification setting (if set) for forums where the notification setting is default. However, this shouldn’t be done for event subforums, since the superforum is an event forum, and the subforum is a miscellaneous forum. Most people want the subforum to default to no notifications, even if they do manually change the superforum’s notifications. So the workflow should probably look something like this: (use the first defined notification setting)
topic = post.topic's notification setting, if not default
forum = topic.forum's notification setting, if not default
Recursively, if forum.super_forum and forum.category == forum.super_forum.category
forum.super_forum's notification setting, if not default
Recurse using forum = forum.super_forum
Global notification setting corresponding to topic.forum.category