- WoltLab Suite Forum
(Sorry, this has turned into a dissertation.)
Back in the mists of April 2017 I posted this: A second type of Group, simpler than the current Groups, which I'll paraphrase again here.
On my forum, we use some Groups simply as a checkbox or flag, to allow visibility (or not) of different subforums.
The problem is the overhead of creating and maintaining every single Group, regardless that it may only be being used to represent a binary condition.
I'll try and clarify.
As you know, when you add a Group, it is created with a set of default permissions, and then you go through and set them all for what that Group requires.
I'm not sure how the core Woltlab stuff assigns default permissions for a new Group, but when you install certain Plugins, they enable their own functionality by default for new Groups. This means that the flag for "Allow whatever this plugin does" is set to True in the default permissions which are assigned to any new Group. (And possibly even those settings for existing users when they are installed? I can't say for sure but I'd hope not.)
I do know that when you (or a Plugin, presumably) creates a new BBCode, "Newly created BBCodes will be accessible for everyone. You can restrict usage by editing the specific user group permissions" it reminds us on the config page. So suddenly everyone has access to that BBCode, when perhaps you don't want that Group to have that access.
Anyway this means that it can take more than a minute, and many, many clicks, given the number of configuration options there are, just to go through a new blank Group and make sure there is no permission assigned to a Group that should not have it.
This is a huge waste of time (as well as arguably a security risk).
We work around it to some degree by having a group called zeroPermsGroupTemplate, which periodically we go through and ensure that it really has no permissions for anything, and sensibly conservative default values for numerical fields. Then after we create a new Group we copy the zeroPermsGroupTemplate permissions to it using the most excellent Copy subforum permissions plugin from Sonnenspeer.
How much simpler would it be if there was a checkbox at the top of the User Group Configuration page that said "This Group is a flag", which when selected DISABLED all the rest of the config pages for that Group, and allowed you to create a simple permissions group easily in just a few seconds instead of a minute?
Any thoughts? (Other than 'you should get out more' ). I'd be particularly interested to know if anyone has found other ways round this issue, and am quite prepared to look very stupid if I'm missing something obvious. Has anyone else even been thinking about this, or using Groups in this way? Or finds it a pain that a Group carries all of that configuration soup around with it despite being used just as a flag? Or doesn't have a clue what I'm going on about?
Thanks for reading.
Tabs of tabs! And some of them have lists of tickboxes as long as your arm ?
Copying User Group permissions to ensure the destination Group has sensible defaults: