app\components\User::can PHP Method

can() public method

Extended permission check with Guest role and route.
public can ( string $permissionName, array $params = [], boolean | true $allowCaching = true ) : boolean
$permissionName string
$params array
$allowCaching boolean | true
return boolean
    public function can($permissionName, $params = [], $allowCaching = true)
    {
        switch (true) {
            // root users have all permissions
            case \Yii::$app->user->identity && in_array(\Yii::$app->user->identity->username, $this->rootUsers):
                return true;
                break;
            case !empty($params['route']):
                \Yii::trace("Checking route permissions for '{$permissionName}'", __METHOD__);
                return $this->checkAccessRoute($permissionName, $params, $allowCaching);
                break;
            default:
                return parent::can($permissionName, $params, $allowCaching);
        }
    }