/var/www/vhosts/ihelp.ro/httpdocs/vendor/cakedc/auth/src/Rbac/Permissions
Edit: /var/www/vhosts/ihelp.ro/httpdocs/vendor/cakedc/auth/src/Rbac/Permissions/ConfigProvider.php (2477B)
'permissions',
];
/**
* Provide permissions array
*
* @return array Array of permissions
*/
public function getPermissions()
{
$autoload = $this->getConfig('autoload_config');
if ($autoload) {
if (is_array($autoload)) {
$permissions = [];
foreach ($autoload as $configItem) {
$permissions = array_merge($permissions, $this->_loadPermissions($configItem));
}
return $permissions;
}
return $this->_loadPermissions($autoload);
}
return $this->defaultPermissions;
}
/**
* Load config and retrieve permissions
* If the configuration file does not exist, or the permissions key not present, return defaultPermissions
* To be mocked
*
* @param string $key name of the configuration file to read permissions from
* @return array permissions
*/
protected function _loadPermissions($key)
{
$permissions = null;
try {
Configure::load($key, 'default');
$permissions = Configure::read('CakeDC/Auth.permissions');
$legacyPermissions = Configure::read('Users.SimpleRbac.permissions');
if (!$permissions && $legacyPermissions) {
$permissions = $legacyPermissions;
}
} catch (\Exception $ex) {
$msg = sprintf('Missing configuration file: "config/%s.php". Using default permissions', $key);
$this->log($msg, LogLevel::WARNING);
}
if (empty($permissions)) {
return $this->defaultPermissions;
}
return $permissions;
}
}