diff --git a/src/User/Filter/AccessRuleFilter.php b/src/User/Filter/AccessRuleFilter.php index 72ee1cb..9d11310 100644 --- a/src/User/Filter/AccessRuleFilter.php +++ b/src/User/Filter/AccessRuleFilter.php @@ -41,8 +41,13 @@ class AccessRuleFilter extends AccessRule if (!$user->getIsGuest() && $identity->getIsAdmin()) { return true; } - } elseif ($user->can($role)) { - return true; + } else { + if (!isset($roleParams)) { + $roleParams = $this->roleParams instanceof Closure ? call_user_func($this->roleParams, $this) : $this->roleParams; + } + if ($user->can($role, $roleParams)) { + return true; + } } }