public function getPermissionByPath($condition)
{
$rules = $this->Config->get('devise.permissions.' . $condition);
if ($rules !== null) {
reset($rules);
$firstKey = key($rules);
if ($firstKey == 'and' || $firstKey == 'or') {
return $rules;
} else {
$newRules = array();
if (isset($rules['redirect'])) {
$newRules['redirect'] = $rules['redirect'];
unset($rules['redirect']);
}
if (isset($rules['redirect_type'])) {
$newRules['redirect_type'] = $rules['redirect_type'];
unset($rules['redirect_type']);
}
if (isset($rules['redirect_message'])) {
$newRules['redirect_message'] = $rules['redirect_message'];
unset($rules['redirect_message']);
}
$newRules['and'] = $rules;
return $newRules;
}
} else {
throw new \Devise\Support\DeviseException('Unable to load the condition "' . $condition . '".');
}
}