Question
How do I give permission to a worker to edit/add widgets within a ticket (profile) view tab?
Gap
The docs describe Profile Tabs and Profile Widgets as fully customizable ("You can add your own tabs, and change or remove any of the default tabs"; "By default, new profile tabs are dashboards with customizable widgets"), and the Roles docs describe granting record-type privileges. None of these pages mention that editing/adding/reordering/deleting profile tabs and their widgets is restricted to administrators only — it is not a grantable role privilege.
This led to incorrect guidance that an admin could grant a non-admin role create/update/delete privileges on Profile Tab / Profile Widget records to enable widget editing. In the code, both contexts gate writes through _isWriteableOnlyByAdmin(), which denies everyone who is not an admin regardless of role privileges. Reading is open to all workers (allowEverything), which is why non-admins see customized tabs/widgets but cannot change them.
References (Cerb 11.2 source):
features/cerberusweb.core/api/dao/profile_tab.php — Context_ProfileTab::isWriteableByActor() → _isWriteableOnlyByAdmin()
features/cerberusweb.core/api/dao/profile_widget.php — Context_ProfileWidget::isWriteableByActor() → _isWriteableOnlyByAdmin()
libs/devblocks/api/Extension.php — _isWriteableOnlyByAdmin()
Closest existing page
https://cerb.ai/docs/profiles/ (also relevant: https://cerb.ai/docs/records/types/profile_tab/, https://cerb.ai/docs/records/types/profile_widget/, https://cerb.ai/docs/roles/)
Suggested content
On the Profiles page (and ideally the Profile Tab / Profile Widget record-type pages), add a short note:
- Profile tabs and widgets are a shared, system-wide layout for each record type.
- Adding, editing, reordering, and deleting profile tabs/widgets requires administrator privileges — this is not a per-role privilege that can be granted individually.
- All workers can view the customized tabs/widgets.
- For per-worker customizable, self-editable layouts, point users to workspace dashboards instead of record profile tabs.
Question
How do I give permission to a worker to edit/add widgets within a ticket (profile) view tab?
Gap
The docs describe Profile Tabs and Profile Widgets as fully customizable ("You can add your own tabs, and change or remove any of the default tabs"; "By default, new profile tabs are dashboards with customizable widgets"), and the Roles docs describe granting record-type privileges. None of these pages mention that editing/adding/reordering/deleting profile tabs and their widgets is restricted to administrators only — it is not a grantable role privilege.
This led to incorrect guidance that an admin could grant a non-admin role create/update/delete privileges on Profile Tab / Profile Widget records to enable widget editing. In the code, both contexts gate writes through
_isWriteableOnlyByAdmin(), which denies everyone who is not an admin regardless of role privileges. Reading is open to all workers (allowEverything), which is why non-admins see customized tabs/widgets but cannot change them.References (Cerb 11.2 source):
features/cerberusweb.core/api/dao/profile_tab.php—Context_ProfileTab::isWriteableByActor()→_isWriteableOnlyByAdmin()features/cerberusweb.core/api/dao/profile_widget.php—Context_ProfileWidget::isWriteableByActor()→_isWriteableOnlyByAdmin()libs/devblocks/api/Extension.php—_isWriteableOnlyByAdmin()Closest existing page
https://cerb.ai/docs/profiles/ (also relevant: https://cerb.ai/docs/records/types/profile_tab/, https://cerb.ai/docs/records/types/profile_widget/, https://cerb.ai/docs/roles/)
Suggested content
On the Profiles page (and ideally the Profile Tab / Profile Widget record-type pages), add a short note: