Rev 23 | AutorÃa | Comparar con el anterior | Ultima modificación | Ver Log |
<?phpdeclare(strict_types = 1);namespace LeadersLinked\Authentication;use Laminas\Authentication\Adapter\AdapterInterface as AuthAdapterInterface;use Laminas\Authentication\Result;use Laminas\Db\Adapter\AdapterInterface;use Laminas\Log\LoggerInterface;use LeadersLinked\Model\User;use LeadersLinked\Mapper\UserMapper;use LeadersLinked\Library\Functions;use LeadersLinked\Mapper\DeviceMapper;use LeadersLinked\Mapper\DeviceHistoryMapper;use LeadersLinked\Model\DeviceHistory;class AuthUserIdAdapter implements AuthAdapterInterface{/**** @var AdapterInterface*/private $adapter;/**** @var int*/private $user_id;/**** @param AdapterInterface $adapter*/public function __construct(AdapterInterface $adapter){$this->adapter = $adapter;}/**** @param int $user_id*/public function setData($user_id){$this->user_id = $user_id;}/**** {@inheritdoc}* @see \Laminas\Authentication\Adapter\AdapterInterface::authenticate()*/public function authenticate(){$userMapper = UserMapper::getInstance($this->adapter);$user = $userMapper->fetchOne($this->user_id);if (User::BLOCKED_YES == $user->blocked) {return new Result(Result::FAILURE_UNCATEGORIZED, null, ['ERROR_USER_IS_BLOCKED']);}if (User::STATUS_INACTIVE == $user->status) {return new Result(Result::FAILURE_UNCATEGORIZED, null, ['ERROR_USER_IS_INACTIVE']);}if (User::REQUEST_ACCESS_PENDING == $user->request_access) {return new Result(Result::FAILURE_UNCATEGORIZED, null, ['ERROR_USER_REQUEST_ACCESS_IS_PENDING']);}if (User::REQUEST_ACCESS_REJECTED == $user->request_access) {return new Result(Result::FAILURE_UNCATEGORIZED, null, ['ERROR_USER_REQUEST_ACCESS_IS_REJECTED']);}$data = ['user_id' => $user->id];return new Result(Result::SUCCESS, $data, []);}}