diff --git a/admin.php b/admin.php index 8a2c12e3..d63a76b2 100644 --- a/admin.php +++ b/admin.php @@ -715,7 +715,7 @@ class AdminPlugin extends Plugin $type = $e['type'] ?? null; switch ($type) { case 'config': - $e['type'] = $this->admin->authorize(['admin.configuration_system','admin.super']) ? 'config/system' : 'config/site'; + $e['type'] = $this->admin->authorize(['admin.configuration.system','admin.configuration_system','admin.super']) ? 'config/system' : 'config/site'; break; case 'tools/scheduler': $e['type'] = 'config/scheduler'; @@ -772,7 +772,7 @@ class AdminPlugin extends Plugin $this->grav['twig']->plugins_hooked_nav['PLUGIN_ADMIN.CONFIGURATION'] = [ 'route' => 'config', 'icon' => 'fa-wrench', - 'authorize' => ['admin.configuration_system', 'admin.super'], + 'authorize' => ['admin.configuration.system', 'admin.configuration_system', 'admin.super'], 'priority' => 9 ]; diff --git a/classes/plugin/AdminBaseController.php b/classes/plugin/AdminBaseController.php index 0c8352b6..610c878c 100644 --- a/classes/plugin/AdminBaseController.php +++ b/classes/plugin/AdminBaseController.php @@ -514,10 +514,11 @@ class AdminBaseController case 'configuration': case 'config': case 'system': - $permissions[] = 'admin.configuration'; + $permissions[] = 'admin.configuration.system'; break; case 'settings': case 'site': + $permissions[] = 'admin.configuration.site'; $permissions[] = 'admin.settings'; break; case 'plugins': diff --git a/permissions.yaml b/permissions.yaml index 767d17f5..9e27f8f4 100644 --- a/permissions.yaml +++ b/permissions.yaml @@ -39,9 +39,10 @@ actions: configuration_info: type: alias alias: admin.configuration.info - settings: - label: PLUGIN_ADMIN.ACCESS_ADMIN_SETTINGS + type: alias + alias: admin.configuration.site + pages: label: PLUGIN_ADMIN.ACCESS_ADMIN_PAGES maintenance: diff --git a/themes/grav/templates/config.html.twig b/themes/grav/templates/config.html.twig index 2df3687d..bbd14b17 100644 --- a/themes/grav/templates/config.html.twig +++ b/themes/grav/templates/config.html.twig @@ -2,7 +2,7 @@ {% set config_slug = uri.basename %} {% if config_slug == 'config' %} - {% set config_slug = authorize(['admin.configuration_system','admin.super']) ? 'system' : 'site' %} + {% set config_slug = authorize(['admin.configuration.system', 'admin.configuration_system', 'admin.super']) ? 'system' : 'site' %} {% endif %} {% set isInfo = (config_slug == 'info') %} @@ -43,20 +43,20 @@