feat(19.6.1-01): Administrators screen and cross-controller record actions

- pact.HasAdminActionExtensions / AdminActionExtension: plugins add record
  actions to any admin controller by ID, merged at boot before permission
  validation (unknown target, no preview, duplicate name stop the boot)
- internal summercms.cabana pseudo-plugin, appended only when some plugin
  registers admin controllers: Administrators list and preview, settings
  link under System, backend.manage_users and backend.manage_roles with no
  role grants
- backend::lang user, user.role and permissions copy (en, pl)
- smoke tests: compile-time seam and settings, Postgres list/preview/action
This commit is contained in:
Jakub Zych
2026-10-22 10:59:23 +02:00
parent 88ec4df2b3
commit 7340241f22
19 changed files with 1239 additions and 5 deletions

View File

@@ -0,0 +1,16 @@
name: backend::lang.user.name
form: ~/plugins/summercms/cabana/models/user/fields.yaml
modelClass: Backend\Models\User
defaultRedirect: summercms/cabana/users
update:
redirect: summercms/cabana/users/update/:id
redirectClose: summercms/cabana/users/preview/:id
preview: {}
messages:
update: backend::lang.messages.form.update
saved: backend::lang.messages.form.saved
edit: backend::lang.user.edit
preview: backend::lang.user.preview

View File

@@ -0,0 +1,11 @@
list: ~/plugins/summercms/cabana/models/user/columns.yaml
modelClass: Backend\Models\User
title: backend::lang.user.list_title
recordUrl: summercms/cabana/users/preview/:id
noRecordsMessage: backend::lang.user.list_empty
recordsPerPage: 20
showSetup: true
toolbar:
search:
prompt: backend::lang.list.search_prompt