- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/classes/general/crm_external_sale_import.php
- Класс: \CCrmExternalSaleImport
- Вызов: CCrmExternalSaleImport::QueryOrderData
private function QueryOrderData($arFilter, $arOptions = null)
{
if(!is_array($arOptions))
{
$arOptions = array();
}
$requestMethod = isset($arOptions["REQUEST_METHOD"]) && is_string($arOptions["REQUEST_METHOD"])
? mb_strtoupper($arOptions["REQUEST_METHOD"]) : "";
if($requestMethod === "")
{
$requestMethod = "GET";
}
$siteUrl = !empty($_SERVER["HTTP_HOST"])
? (($GLOBALS["APPLICATION"]->IsHTTPS() ? "https" : "http")."://".$_SERVER["HTTP_HOST"])
: "";
if($requestMethod === "GET")
{
if ($siteUrl !== "")
{
$arFilter["CRM_SITE_URL"] = $siteUrl;
}
$request = array(
"METHOD" => "GET",
"PATH" => CHTTP::urlAddParams($this->path, $arFilter),
"HEADERS" => array()
);
}
else
{
$request = array(
"METHOD" => "POST",
"PATH" => $this->path,
"HEADERS" => array(),
"BODY" => array()
);
foreach ($arFilter as $key => $val)
{
$request["BODY"][$key] = $val;
}
if ($siteUrl !== "")
{
$request["BODY"]["CRM_SITE_URL"] = $siteUrl;
}
}
$response = $this->proxy->Send($request);
if (is_array($response) && isset($response["BODY"]))
{
return $response["BODY"];
}
$errors = array();
foreach ($this->proxy->GetErrors() as $error)
{
$errors[] = sprintf("[%s] %s", $error[0], $error[1]);
}
$status = implode(" ", $errors);
$this->AddError("GD1", $status);
CCrmExternalSale::Update($this->externalSaleId, array("LAST_STATUS" => $status));
return null;
}