|
18 | 18 | * @api |
19 | 19 | * @method \Magento\User\Model\User|null getUser() |
20 | 20 | * @method \Magento\Backend\Model\Auth\Session setUser(\Magento\User\Model\User $value) |
21 | | - * @method \Magento\Framework\Acl|null getAcl() |
22 | | - * @method \Magento\Backend\Model\Auth\Session setAcl(\Magento\Framework\Acl $value) |
23 | 21 | * @method int getUpdatedAt() |
24 | 22 | * @method \Magento\Backend\Model\Auth\Session setUpdatedAt(int $value) |
25 | 23 | * |
@@ -62,6 +60,11 @@ class Session extends \Magento\Framework\Session\SessionManager implements \Mage |
62 | 60 | */ |
63 | 61 | private $messageManager; |
64 | 62 |
|
| 63 | + /** |
| 64 | + * @var \Magento\Framework\Acl|null |
| 65 | + */ |
| 66 | + private $acl = null; |
| 67 | + |
65 | 68 | /** |
66 | 69 | * @param \Magento\Framework\App\Request\Http $request |
67 | 70 | * @param \Magento\Framework\Session\SidResolverInterface $sidResolver |
@@ -152,7 +155,7 @@ public function isAllowed($resource, $privilege = null) |
152 | 155 | return $acl->isAllowed($user->getAclRole(), $resource, $privilege); |
153 | 156 | } catch (\Exception $e) { |
154 | 157 | try { |
155 | | - if (!$acl->has($resource)) { |
| 158 | + if (!$acl->hasResource($resource)) { |
156 | 159 | return $acl->isAllowed($user->getAclRole(), null, $privilege); |
157 | 160 | } |
158 | 161 | } catch (\Exception $e) { |
@@ -284,4 +287,33 @@ public function isValidForPath($path) |
284 | 287 | { |
285 | 288 | return true; |
286 | 289 | } |
| 290 | + |
| 291 | + /** |
| 292 | + * Set Acl model |
| 293 | + * |
| 294 | + * @return \Magento\Framework\Acl |
| 295 | + */ |
| 296 | + public function getAcl() |
| 297 | + { |
| 298 | + return $this->acl; |
| 299 | + } |
| 300 | + |
| 301 | + /** |
| 302 | + * Retrieve Acl |
| 303 | + * |
| 304 | + * @param \Magento\Framework\Acl $acl |
| 305 | + * @return void |
| 306 | + */ |
| 307 | + public function setAcl(\Magento\Framework\Acl $acl) |
| 308 | + { |
| 309 | + $this->acl = $acl; |
| 310 | + } |
| 311 | + |
| 312 | + /** |
| 313 | + * @inheritdoc |
| 314 | + */ |
| 315 | + public function getData($key = '', $clear = false) |
| 316 | + { |
| 317 | + return $key === 'acl' ? $this->getAcl() : parent::getData($key, $clear); |
| 318 | + } |
287 | 319 | } |
0 commit comments