This commit is contained in:
Matias Griese
2020-02-03 13:21:19 +02:00
parent cd286ad30c
commit 87b8c4ac6a
5 changed files with 11 additions and 32 deletions

View File

@@ -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.configuration_system','admin.super']) ? 'config/system' : 'config/site';
$e['type'] = $this->admin->authorize(['admin.configuration.system', 'admin.super']) ? 'config/system' : 'config/site';
break;
case 'tools/scheduler':
$e['type'] = 'config/scheduler';
@@ -772,7 +772,10 @@ class AdminPlugin extends Plugin
$this->grav['twig']->plugins_hooked_nav['PLUGIN_ADMIN.CONFIGURATION'] = [
'route' => 'config',
'icon' => 'fa-wrench',
'authorize' => ['admin.configuration.system', 'admin.configuration_system', 'admin.super'],
'authorize' => [
'admin.configuration.system',
'admin.configuration.site',
'admin.super'],
'priority' => 9
];

View File

@@ -515,13 +515,10 @@ class AdminBaseController
case 'config':
case 'system':
$permissions[] = 'admin.configuration.system';
$permissions[] = 'admin.configuration_system';
break;
case 'settings':
case 'site':
$permissions[] = 'admin.configuration.site';
$permissions[] = 'admin.configuration_site';
$permissions[] = 'admin.settings';
break;
case 'plugins':
$permissions[] = 'admin.plugins';

View File

@@ -26,23 +26,6 @@ actions:
label: PLUGIN_ADMIN.ACCESS_ADMIN_CONFIGURATION_MEDIA
info:
label: PLUGIN_ADMIN.ACCESS_ADMIN_CONFIGURATION_INFO
configuration_system:
type: alias
alias: admin.configuration.system
configuration_site:
type: alias
alias: admin.configuration.site
configuration_media:
type: alias
alias: admin.configuration.media
configuration_info:
type: alias
alias: admin.configuration.info
settings:
type: alias
alias: admin.configuration.site
pages:
label: PLUGIN_ADMIN.ACCESS_ADMIN_PAGES
maintenance:
@@ -59,10 +42,5 @@ actions:
label: PLUGIN_ADMIN.ACCESS_ADMIN_USERS
types:
alias:
type: alias
visible: false
use: default
default:
type: access

View File

@@ -2,7 +2,7 @@
{% set config_slug = uri.basename %}
{% if config_slug == 'config' %}
{% set config_slug = authorize(['admin.configuration.system', 'admin.configuration_system', 'admin.super']) ? 'system' : 'site' %}
{% set config_slug = authorize(['admin.configuration.system', 'admin.super']) ? 'system' : 'site' %}
{% endif %}
{% set isInfo = (config_slug == 'info') %}
@@ -43,13 +43,13 @@
<div class="form-tabs">
<div class="tabs-nav">
{% if authorize(['admin.configuration.system', 'admin.configuration_system', 'admin.super']) %}
{% if authorize(['admin.configuration.system', 'admin.super']) %}
<a {% if config_slug == 'system' %}class="active"{% endif %} href="{{ admin_route('/config/system') }}">
<span>{{ "PLUGIN_ADMIN.SYSTEM"|tu }}</span>
</a>
{% endif %}
{% if authorize(['admin.configuration.site', 'admin.configuration_site', 'admin.super']) %}
{% if authorize(['admin.configuration.site', 'admin.super']) %}
<a {% if config_slug == 'site' %}class="active"{% endif %} href="{{ admin_route('/config/site') }}">
<span>{{ "PLUGIN_ADMIN.SITE"|tu }}</span>
</a>
@@ -67,7 +67,7 @@
{% endif %}
{% endfor %}
{% if authorize(['admin.configuration.info', 'admin.configuration_info', 'admin.super']) %}
{% if authorize(['admin.configuration.info', 'admin.super']) %}
<a {% if config_slug == 'info' %}class="active"{% endif %} href="{{ admin_route('/config/info') }}">
<span>{{ "PLUGIN_ADMIN.INFO"|tu }}</span>
</a>

View File

@@ -18,7 +18,8 @@
{% for label, item in grav.twig.plugins_hooked_nav %}
{% set route = (item.route ?? item.location)|trim('/') %}
{% set location = (item.location ?? item.route)|trim('/') ~ '/' %}
{% if authorize((item.authorize is defined and item.authorize is iterable) ? item.authorize : [item.authorize ?: 'admin.' ~ route, 'admin.super']) %}
{% set auth_rule = item.authorize is iterable ? item.authorize : [item.authorize ?: 'admin.' ~ route, 'admin.super'] %}
{% if authorize(auth_rule) %}
<li class="{{ nav_route|starts_with(location) ? 'selected' : '' }}">
<a href="{{ admin_route(route) }}">
<i class="fa fa-fw {{ item.icon }}"></i>