Merge pull request #81 from kartik-v/patch-1
Update AccessRuleFilter to evaluate roleParams
This commit is contained in:
@ -1,6 +1,7 @@
|
|||||||
# CHANGELOG
|
# CHANGELOG
|
||||||
|
|
||||||
## 1.0.14 - Work in progress
|
## 1.0.14 - Work in progress
|
||||||
|
- Enh #81: Update `AccessRuleFilter` to evaluate `roleParams` (kartik-v)
|
||||||
- Enh #56: Added two factor authentication (tonydspaniard)
|
- Enh #56: Added two factor authentication (tonydspaniard)
|
||||||
- Fix #63: Fix selectize version (tonydspaniard)
|
- Fix #63: Fix selectize version (tonydspaniard)
|
||||||
- Enh #65: Updated Romanian translation (mrbig00)
|
- Enh #65: Updated Romanian translation (mrbig00)
|
||||||
|
|||||||
@ -11,6 +11,7 @@
|
|||||||
|
|
||||||
namespace Da\User\Filter;
|
namespace Da\User\Filter;
|
||||||
|
|
||||||
|
use Closure;
|
||||||
use Da\User\Model\User;
|
use Da\User\Model\User;
|
||||||
use yii\filters\AccessRule;
|
use yii\filters\AccessRule;
|
||||||
|
|
||||||
@ -41,8 +42,13 @@ class AccessRuleFilter extends AccessRule
|
|||||||
if (!$user->getIsGuest() && $identity->getIsAdmin()) {
|
if (!$user->getIsGuest() && $identity->getIsAdmin()) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
} elseif ($user->can($role)) {
|
} else {
|
||||||
return true;
|
if (!isset($roleParams)) {
|
||||||
|
$roleParams = $this->roleParams instanceof Closure ? call_user_func($this->roleParams, $this) : $this->roleParams;
|
||||||
|
}
|
||||||
|
if ($user->can($role, $roleParams)) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user