• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/delivery/rest/deliveryservice.php
  • Класс: BitrixSaleDeliveryRestDeliveryService
  • Вызов: DeliveryService::updateConfig
static function updateConfig($query, $n, CRestServer $server): bool
{
	self::checkDeliveryPermission();
	$params = self::prepareDeliveryParams($query, $server);
	self::checkParamsBeforeDeliveryConfigUpdate($params);

	$data = DeliveryServicesManager::getById($params['ID']);
	$handlerCode = self::getRestCodeFromConfig($data['CONFIG']);
	$params['REST_CODE'] = $handlerCode;

	$result = DeliveryServicesManager::update(
		$params['ID'],
		[
			'CONFIG' => self::prepareIncomingConfig($params['CONFIG'], $params)
		]
	);
	if ($result->isSuccess())
	{
		return true;
	}

	$error = implode("n", $result->getErrorMessages());
	throw new RestException($error, self::ERROR_DELIVERY_CONFIG_UPDATE);
}