Added support for legacy access settings from admin

This commit is contained in:
Matias Griese
2020-02-03 13:20:33 +02:00
parent defc70e656
commit e5fe28b720
3 changed files with 47 additions and 2 deletions

View File

@@ -11,8 +11,8 @@ declare(strict_types=1);
namespace Grav\Common\Flex\UserGroups;
use Grav\Common\User\Access;
use Grav\Common\User\Interfaces\UserGroupInterface;
use Grav\Framework\Acl\Access;
use Grav\Framework\Flex\FlexObject;
/**

View File

@@ -18,13 +18,13 @@ use Grav\Common\Page\Medium\ImageMedium;
use Grav\Common\Page\Medium\Medium;
use Grav\Common\Page\Medium\MediumFactory;
use Grav\Common\Page\Medium\StaticImageMedium;
use Grav\Common\User\Access;
use Grav\Common\User\Authentication;
use Grav\Common\Flex\UserGroups\UserGroupCollection;
use Grav\Common\Flex\UserGroups\UserGroupIndex;
use Grav\Common\User\Interfaces\UserInterface;
use Grav\Common\User\Traits\UserTrait;
use Grav\Common\Utils;
use Grav\Framework\Acl\Access;
use Grav\Framework\File\Formatter\JsonFormatter;
use Grav\Framework\File\Formatter\YamlFormatter;
use Grav\Framework\Flex\Flex;

View File

@@ -0,0 +1,45 @@
<?php
/**
* @package Grav\Common\User
*
* @copyright Copyright (C) 2015 - 2020 Trilby Media, LLC. All rights reserved.
* @license MIT License; see LICENSE file for details.
*/
namespace Grav\Common\User;
class Access extends \Grav\Framework\Acl\Access
{
private $aliases = [
'admin.configuration.system' => ['admin.configuration_system'],
'admin.configuration.site' => ['admin.configuration_site', 'admin.settings'],
'admin.configuration.media' => ['admin.configuration_media'],
'admin.configuration.info' => ['admin.configuration_info'],
];
/**
* @param string $action
* @return bool|null
*/
public function get(string $action)
{
$result = parent::get($action);
if (is_bool($result)) {
return $result;
}
// Get access value.
if (isset($this->aliases[$action])) {
$aliases = $this->aliases[$action];
foreach ($aliases as $alias) {
$result = parent::get($alias);
if (is_bool($result)) {
return $result;
}
}
}
return null;
}
}