• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/tradingplatform/ebay/policy.php
  • Класс: BitrixSaleTradingPlatformEbayPolicy
  • Вызов: Policy::sendRequest
protected function sendRequest($operationName, $data)
{
	$this->http->setHeader("X-EBAY-SOA-CONTENT-TYPE", "text/xml");
	$this->http->setHeader("X-EBAY-SOA-GLOBAL-ID", "EBAY-RU");
	$this->http->setHeader("X-EBAY-SOA-SERVICE-NAME", "SellerProfilesManagementService");
	$this->http->setHeader("X-EBAY-SOA-OPERATION-NAME", $operationName); //addSellerProfile getSellerProfiles
	$this->http->setHeader("X-EBAY-SOA-REQUEST-DATA-FORMAT", "XML");
	$this->http->setHeader("X-EBAY-SOA-RESPONSE-DATA-FORMAT", "XML");
	$this->http->setHeader("X-EBAY-SOA-SECURITY-TOKEN", $this->authToken);

	if(mb_strtolower(SITE_CHARSET) != 'utf-8')
		$data = Encoding::convertEncodingArray($data, SITE_CHARSET, 'UTF-8');

	$result = $this->http->post(self::URL, $data);
	$errors = $this->http->getError();

	if (!$result && !empty($errors))
	{
		$strError = "";

		foreach($errors as $errorCode => $errMes)
			$strError .= $errorCode.": ".$errMes;

		Ebay::log(Logger::LOG_LEVEL_INFO, "EBAY_POLICY_REQUEST_ERROR", $operationName, $strError, $this->siteId);
	}
	else
	{
		$status = $this->http->getStatus();

		if ($status != 200)
			Ebay::log(Logger::LOG_LEVEL_INFO, "EBAY_POLICY_REQUEST_HTTP_ERROR", $operationName, 'HTTP error code: '.$status, $this->siteId);

		if(mb_strtolower(SITE_CHARSET) != 'utf-8')
			$result = Encoding::convertEncodingArray($result, 'UTF-8', SITE_CHARSET);
	}

	return $result;
}