MyBB Community Forums

Full Version: Permission and Setting Roles
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
This idea is to be able to change settings and permissions in several places all at once without having to change permission to one forum, then another, then another, and settings in one forum, then another, then another. It is possible to copy forum perms/settings to another forum, but this does not allow for a base set of settings and then overrides. By having a role for a forum containing base settings and permissions, the forum can have a role set and then still have custom settings and permissions override that of the role.

Settings would include things like: moderate new posts/thread/attachments/edits, override style, view options, misc options.

Perhaps instead of duplicating each field, a custom table could be used to store the settings and permissions and then each role would reference the id of the settings and permissions row, likewise each forum would have its own unique row:

forum_permissions(id, permissions...)
forum_permissions_roles(id, name, permid)
forum_settings(id, ...)
forum_settings_roles(id, name, settingid)
forum(id, permroleid, permid, settingroleid, settingid, ...)

For any setting or permission, if the forum specific row's value is not inherit then that value would be used, otherwise the value from the row associated with role for the forum would be used. A change to the role's permissions changes any forum that uses that role except any custom set permissions. This could also be used for group permissions and settings.