• Модуль: imconnector
  • Путь к файлу: ~/bitrix/modules/imconnector/lib/connectors/base.php
  • Класс: BitrixImConnectorConnectorsBase
  • Вызов: Base::getUserByUserCode
public function getUserByUserCode(array $user): Result
{
	$result = new Result();

	if (Library::isEmpty($user['id']))
	{
		$result->addError(new Error(Loc::getMessage(
			'IMCONNECTOR_PROXY_NO_USER_IM'),
			Library::ERROR_CONNECTOR_PROXY_NO_USER_IM,
			__METHOD__,
			$user
		));
	}
	else
	{
		$raw = UserTable::getList([
				'select' => [
					'ID',
					'MD5' => 'UF_CONNECTOR_MD5'
				],
				'filter' => [
					'=EXTERNAL_AUTH_ID' => Library::NAME_EXTERNAL_USER,
					'=XML_ID' => $this->userPrefix . '|' . $user['id']
				],
				'limit' => 1
			]
		);

		if ($userFields = $raw->fetch())
		{
			$result->setResult($userFields);
		}
		else
		{
			//user record does not yet exist, it will be created on next step.
			$result->addError(new MainError('User does not yet exist'));
		}
	}

	return $result;
}