Files
zoneminder/db
Isaac Connor 4e60cb96a7 feat: add User Roles feature for reusable permission templates
Add a User Roles system where roles define reusable permission templates.
When a user has a role assigned, the role provides fallback permissions
(user's direct permissions take precedence; role is used when user has 'None').

Database changes:
- Add User_Roles table with same permission fields as Users
- Add Role_Groups_Permissions table for per-role group overrides
- Add Role_Monitors_Permissions table for per-role monitor overrides
- Add RoleId foreign key to Users table

Permission resolution order:
1. User's direct Monitor/Group permissions (if not 'Inherit')
2. Role's Monitor/Group permissions (if user has role)
3. Role's base permission (if user's is 'None')
4. User's base permission (fallback)

Includes:
- PHP models: User_Role, Role_Group_Permission, Role_Monitor_Permission
- Role management UI in Options > Roles tab
- Role selector in user edit form
- REST API endpoints for roles CRUD
- Translation strings for en_gb

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 13:34:27 -05:00
..
2026-01-24 11:24:56 -05:00
2013-12-24 11:07:27 +00:00
2026-01-24 11:16:07 -05:00
2023-03-22 13:28:35 -04:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2013-03-17 00:45:21 +01:00
2014-10-18 15:23:13 -05:00
2016-01-01 10:15:36 -06:00
2016-05-31 19:41:17 -05:00
2017-05-02 13:25:56 -05:00
2017-05-09 09:54:48 -05:00
2020-11-23 19:31:21 -05:00
2017-10-03 13:28:56 -07:00
2020-11-23 19:33:53 -05:00
2017-10-16 08:30:28 -07:00
2017-11-26 15:08:12 -05:00
2018-02-18 11:01:33 -05:00
2018-01-19 13:29:45 -05:00
2018-01-19 12:17:42 -05:00
2018-01-24 12:16:18 -05:00
2018-02-05 22:59:37 -05:00
2018-02-18 11:29:22 -05:00
2018-09-12 07:27:45 -05:00
2018-10-02 07:37:55 -05:00
2018-10-13 13:36:15 -05:00
2018-12-12 09:17:14 -05:00
2019-05-13 14:48:26 -04:00
2024-04-08 09:50:12 -04:00
2020-02-04 16:47:33 -05:00
2020-02-19 13:50:27 -05:00
2020-03-06 14:52:38 -05:00
2020-03-26 15:34:36 -04:00
2020-03-04 10:15:44 -05:00
2020-05-12 15:46:07 -04:00
2020-10-02 14:49:59 -04:00
2021-01-27 09:58:55 -05:00
2021-04-23 14:52:29 -04:00
2021-07-07 09:45:53 -04:00
2022-01-10 09:07:59 -05:00
2022-01-10 23:22:37 -06:00
2022-01-22 12:30:59 -05:00
2022-12-24 09:18:04 -05:00
2023-02-25 12:44:28 -05:00
2025-09-24 09:53:11 -04:00