- Модуль: main
- Путь к файлу: ~/bitrix/modules/main/classes/general/update_client_partner.php
- Класс: CUpdateClientPartner
- Вызов: CUpdateClientPartner::__CollectRequestData
static function __CollectRequestData(&$strError, $lang = false, $stableVersionsOnly = "Y", $arRequestedModules = array(), $arAdditionalData = array(), $bStrongList = false)
{
$strResult = "";
$strError_tmp = "";
if ($lang === false)
$lang = LANGUAGE_ID;
$stableVersionsOnly = (($stableVersionsOnly == "N") ? "N" : "Y");
CUpdateClientPartner::AddMessage2Log("exec CUpdateClientPartner::__CollectRequestData");
CUpdateClientPartner::__CheckDirPath($_SERVER["DOCUMENT_ROOT"]."/bitrix/updates/", true);
$arClientModules = CUpdateClientPartner::GetCurrentModules($strError_tmp);
if ($strError_tmp == '')
{
$license = BitrixMainApplication::getInstance()->getLicense();
$dbv = $GLOBALS["DB"]->GetVersion();
$strResult = "utf=".urlencode(defined('BX_UTF') ? "Y" : "N").
"&lang=".urlencode($lang).
"&stable=".urlencode($stableVersionsOnly).
"&CANGZIP=".urlencode((CUpdateClientPartner::__IsGzipInstalled()) ? "Y" : "N").
"&SUPD_DBS=".urlencode($GLOBALS["DB"]->type).
"&XE=".urlencode((isset($GLOBALS["DB"]->XE) && $GLOBALS["DB"]->XE) ? "Y" : "N").
"&CLIENT_SITE=".urlencode($_SERVER["SERVER_NAME"]).
"&LICENSE_KEY=".urlencode($license->getHashLicenseKey()).
"&SUPD_STS=".urlencode(CUpdateClientPartner::__GetFooPath()).
"&SUPD_URS=".urlencode($license->getActiveUsersCount()).
"&TYPENC=".($license->isDemo() ? "D" : ($license->isEncoded() ? "E" : ($license->isTimeBound() ? "T" : "F"))).
"&CLIENT_PHPVER=".urlencode(phpversion()).
"&NGINX=".urlencode(COption::GetOptionString("main", "update_use_nginx", "Y")).
"&dbv=".urlencode($dbv != false ? $dbv : "");
$strResultTmp = "";
if (!empty($arClientModules))
{
foreach ($arClientModules as $key => $value)
{
if ($strResultTmp <> '')
$strResultTmp .= ";";
$strResultTmp .= $key.",".$value["VERSION"].",".$value["IS_DEMO"];
}
}
if ($strResultTmp <> '')
$strResult .= "&instm=".urlencode($strResultTmp);
$strResultTmp = "";
if (!empty($arRequestedModules))
{
for ($i = 0, $cnt = count($arRequestedModules); $i < $cnt; $i++)
{
if ($strResultTmp <> '')
$strResultTmp .= ",";
$strResultTmp .= $arRequestedModules[$i];
}
}
if ($strResultTmp <> '')
$strResult .= "&reqm=".urlencode($strResultTmp);
if ($bStrongList)
$strResult .= "&lim=Y";
$strResultTmp = "";
if (!empty($arAdditionalData))
{
foreach ($arAdditionalData as $key => $value)
{
if ($strResultTmp <> '')
$strResultTmp .= "&";
$strResultTmp .= $key."=".urlencode($value);
}
}
if ($strResultTmp <> '')
$strResult .= "&".$strResultTmp;
if (CModule::IncludeModule("cluster") && class_exists("CCluster"))
$strResult .= "&SUPD_SRS=".urlencode(CCluster::getServersCount());
else
$strResult .= "&SUPD_SRS=".urlencode("RU");
if (method_exists("CHTMLPagesCache", "IsOn") && method_exists("CHTMLPagesCache", "IsCompositeEnabled") && CHTMLPagesCache::IsOn() && CHTMLPagesCache::IsCompositeEnabled())
$strResult .= "&SUPD_CMP=".urlencode("Y");
else
$strResult .= "&SUPD_CMP=".urlencode("N");
return $strResult;
}
CUpdateClientPartner::AddMessage2Log($strError_tmp, "NCRD01");
$strError .= $strError_tmp;
return false;
}