• Модуль: imconnector
  • Путь к файлу: ~/bitrix/modules/imconnector/lib/provider/imconnectorserver/input.php
  • Класс: BitrixImConnectorProviderImConnectorServerInput
  • Вызов: Input::authorize
private function authorize($params): Result
{
	$result = new Result();

	if (!isset($params['BX_HASH']) || empty($params['BX_HASH']))
	{
		$result->addError(new Error('Hash is empty', 'HASH_EMPTY', __METHOD__));
	}
	else
	{
		$hash = $params['BX_HASH'];
		unset($params['BX_HASH']);

		if ($params['BX_TYPE'] === self::TYPE_BITRIX24)
		{
			if ($this->requestSign($params['BX_TYPE'], md5(implode('|', $params) . '|' . BX24_HOST_NAME)) === $hash)
			{
				return $result;//ok
			}
		}
		elseif ($params['BX_TYPE'] === self::TYPE_CP)
		{
			if ($this->requestSign($params['BX_TYPE'], md5(implode('|', $params))) === $hash)
			{
				return $result;//ok
			}
		}

		$result->addError(new Error('Licence key is invalid', 'LICENCE_ERROR', __METHOD__));
	}

	return $result;
}