• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/classes/general/update_client_partner.php
  • Класс: CUpdateClientPartner
  • Вызов: CUpdateClientPartner::__ParseServerData
static function __ParseServerData(&$strServerOutput, &$arRes, &$strError)
{
	$strError_tmp = "";
	$arRes = array();

	CUpdateClientPartner::AddMessage2Log("exec CUpdateClientPartner::ParseServerData");

	//CUpdateClientPartner::AddMessage2Log($strServerOutput, "!2!");
	//echo "strServerOutput:
".htmlspecialcharsbx($strServerOutput)."

"; if ($strServerOutput == '') $strError_tmp .= "[UPSD01] ".GetMessage("SUPP_AS_EMPTY_RESP").". "; if ($strError_tmp == '') { if (mb_substr($strServerOutput, 0, mb_strlen("")) != "" && CUpdateClientPartner::__IsGzipInstalled()) $strServerOutput = @gzuncompress($strServerOutput); if (mb_substr($strServerOutput, 0, mb_strlen("")) != "") { CUpdateClientPartner::AddMessage2Log(mb_substr($strServerOutput, 0, 100), "UPSD02"); $strError_tmp .= "[UPSD02] ".GetMessage("SUPP_PSD_BAD_RESPONSE").". "; } } //CUpdateClientPartner::AddMessage2Log($strServerOutput, "!3!"); //echo "strServerOutput:
".htmlspecialcharsbx($strServerOutput)."

"; if ($strError_tmp == '') { // $arRes = CUpdateClientPartner::xmlize($strServerOutput); $objXML = new CUpdatesXML(); $objXML->LoadString($strServerOutput); $arRes = $objXML->GetArray(); if (!is_array($arRes) || !isset($arRes["DATA"]) || !is_array($arRes["DATA"])) $strError_tmp .= "[UPSD03] ".GetMessage("SUPP_PSD_BAD_TRANS").". "; } if ($strError_tmp == '') { if (isset($arRes["DATA"]["#"]["RESPONSE"])) { $CRCCode = $arRes["DATA"]["#"]["RESPONSE"][0]["@"]["CRC_CODE"]; if ($CRCCode <> '') COption::SetOptionString(US_BASE_MODULE, "crc_code", $CRCCode); } if (isset($arRes["DATA"]["#"]["CLIENT"]) && isset($arRes["DATA"]["#"]["CLIENT"][0]["@"]["DATE_TO_SOURCE"])) COption::SetOptionString(US_BASE_MODULE, "~support_finish_date", $arRes["DATA"]["#"]["CLIENT"][0]["@"]["DATE_TO_SOURCE"]); } if ($strError_tmp <> '') { CUpdateClientPartner::AddMessage2Log($strError_tmp, "CUPSD"); $strError .= $strError_tmp; return false; } else return true; }