mirror of
https://github.com/bdnugget/magento2.git
synced 2026-11-07 09:17:35 +00:00
51 lines
1.2 KiB
PHP
51 lines
1.2 KiB
PHP
<?php
|
|
/**
|
|
* Copyright © Magento, Inc. All rights reserved.
|
|
* See COPYING.txt for license details.
|
|
*/
|
|
|
|
namespace Magento\Integration\Plugin\Model;
|
|
|
|
use Magento\Integration\Model\AdminTokenService;
|
|
use Magento\User\Model\User;
|
|
use Magento\Framework\Model\AbstractModel;
|
|
|
|
/**
|
|
* Plugin to delete admin tokens when admin becomes inactive
|
|
*/
|
|
class AdminUser
|
|
{
|
|
/**
|
|
* @var AdminTokenService
|
|
*/
|
|
private $adminTokenService;
|
|
|
|
/**
|
|
* @param AdminTokenService $adminTokenService
|
|
*/
|
|
public function __construct(
|
|
AdminTokenService $adminTokenService
|
|
) {
|
|
$this->adminTokenService = $adminTokenService;
|
|
}
|
|
|
|
public function afterSave(
|
|
User $subject,
|
|
AbstractModel $return
|
|
): AbstractModel {
|
|
$isActive = $return->getIsActive();
|
|
if ($isActive !== null && $isActive == 0) {
|
|
$this->adminTokenService->revokeAdminAccessToken((int) $return->getId());
|
|
}
|
|
|
|
return $return;
|
|
}
|
|
|
|
public function afterDelete(User $subject, AbstractModel $return): AbstractModel
|
|
{
|
|
$this->adminTokenService->revokeAdminAccessToken((int) $return->getId());
|
|
|
|
return $return;
|
|
}
|
|
}
|