- Модуль: rest
- Путь к файлу: ~/bitrix/modules/rest/lib/marketplace/Trial.php
- Класс: BitrixRestMarketplaceTrial
- Вызов: Trial::activate
static function activate(): array
{
if (!self::isAvailable())
{
return self::getError(Loc::getMessage('REST_MARKET_ACTIVATE_DEMO_NOT_AVAILABLE'));
}
if (!CRestUtil::isAdmin())
{
return self::getError(Loc::getMessage('REST_MARKET_ACTIVATE_DEMO_ACCESS_DENIED'));
}
if (!OAuthService::getEngine()->isRegistered())
{
try
{
OAuthService::register();
}
catch (SystemException $e)
{
return self::getError(
Loc::getMessage('REST_MARKET_CONFIG_ACTIVATE_ERROR'),
$e->getMessage(),
$e->getCode()
);
}
}
try
{
OAuthService::getEngine()->getClient()->getApplicationList();
}
catch (SystemException $e)
{
return self::getError(
Loc::getMessage('REST_MARKET_CONFIG_ACTIVATE_ERROR'),
$e->getMessage(),
4
);
}
if (!OAuthService::getEngine()->isRegistered())
{
return self::getError(
Loc::getMessage('REST_MARKET_CONFIG_ACTIVATE_ERROR'),
'',
1
);
}
$loadedBitrix24 = Loader::includeModule('bitrix24');
$queryFields = $loadedBitrix24 ? self::getB24Fields() : self::getCPFields();
if (empty($queryFields))
{
return [];
}
$httpClient = new HttpClient();
$response = $httpClient->post('https://www.1c-bitrix.ru/buy_tmp/b24_coupon.php', $queryFields);
if (!$response)
{
return [];
}
$result = [
'result' => true,
];
if (mb_strpos($response, 'OK') === false)
{
$result = self::getError(
Loc::getMessage('REST_MARKET_CONFIG_ACTIVATE_ERROR'),
'',
2
);
}
if (!$loadedBitrix24)
{
require_once($_SERVER['DOCUMENT_ROOT']
. '/bitrix/modules/main/classes/general/update_client.php');
$errorMessage = '';
CUpdateClient::GetUpdatesList($errorMessage, LANG);
}
return $result;
}