mirror of
https://github.com/getgrav/grav-plugin-admin.git
synced 2025-11-02 03:16:11 +01:00
Fixed permissions field with nested permissions
This commit is contained in:
@@ -1,3 +1,9 @@
|
||||
# v1.10.0-rc.2
|
||||
## mm/dd/2019
|
||||
|
||||
1. [](#bugfix)
|
||||
* Fixed `permissions` field with nested permissions
|
||||
|
||||
# v1.10.0-rc.1
|
||||
## 11/06/2019
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ namespace Grav\Plugin\Admin\Twig;
|
||||
use Grav\Common\Data\Data;
|
||||
use Grav\Common\Grav;
|
||||
use Grav\Common\Page\Interfaces\PageInterface;
|
||||
use Grav\Common\Utils;
|
||||
use Grav\Common\Yaml;
|
||||
use Grav\Common\Language\Language;
|
||||
use Twig\Extension\AbstractExtension;
|
||||
@@ -34,6 +35,7 @@ class AdminTwigExtension extends AbstractExtension
|
||||
new TwigFilter('fromYaml', [$this, 'fromYamlFilter']),
|
||||
new TwigFilter('adminNicetime', [$this, 'adminNicetimeFilter']),
|
||||
new TwigFilter('nested', [$this, 'nestedFilter']),
|
||||
new TwigFilter('flatten', [$this, 'flattenFilter']),
|
||||
];
|
||||
}
|
||||
|
||||
@@ -64,6 +66,11 @@ class AdminTwigExtension extends AbstractExtension
|
||||
return $current;
|
||||
}
|
||||
|
||||
public function flattenFilter($array)
|
||||
{
|
||||
return Utils::arrayFlattenDotNotation($array);
|
||||
}
|
||||
|
||||
public function cloneFunc($obj)
|
||||
{
|
||||
return clone $obj;
|
||||
|
||||
@@ -7,15 +7,13 @@
|
||||
|
||||
{% import _self as macro %}
|
||||
|
||||
{% set value = (value is null ? field.default : value) %}
|
||||
{% set value = (value is same as(false) ? 0 : value) %}
|
||||
|
||||
{% block global_attributes %}
|
||||
data-grav-disabled="{{ originalValue is null ? 'true' : 'false' }}"
|
||||
data-grav-default="{{ field.default|json_encode()|e('html_attr') }}"
|
||||
{% endblock %}
|
||||
|
||||
{% block input %}
|
||||
{% set value = value|flatten %}
|
||||
<div class="permissions-container">
|
||||
{% set permissions = admin.getPermissions %}
|
||||
{% for index_existing_permission, value_existing_permission in value %}
|
||||
@@ -26,8 +24,7 @@
|
||||
|
||||
{% for permission, type in permissions %}
|
||||
<div class="permission-container">
|
||||
{% set permission_segments = permission|split('.') %}
|
||||
{% set permission_value = value[permission_segments[0]][permission_segments[1]] %}
|
||||
{% set permission_value = value[permission] ?? null %}
|
||||
{% if permission_value in ['on', 'true', 1] %}
|
||||
{% set permission_value = 'true' %}
|
||||
{% endif %}
|
||||
|
||||
Reference in New Issue
Block a user