Ejemplo n.º 1
0
 public 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 (strlen($strError_tmp) <= 0) {
         $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($GLOBALS["DB"]->XE ? "Y" : "N") . "&CLIENT_SITE=" . urlencode($_SERVER["SERVER_NAME"]) . "&LICENSE_KEY=" . urlencode(md5(CUpdateClientPartner::GetLicenseKey())) . "&SUPD_STS=" . urlencode(CUpdateClientPartner::__GetFooPath()) . "&SUPD_URS=" . urlencode(CUpdateClientPartner::__GetFooPath1(0)) . "&SUPD_URSA=" . urlencode(CUpdateClientPartner::__GetFooPath1(1)) . "&TYPENC=" . (defined("DEMO") && DEMO == "Y" ? "D" : (defined("ENCODE") && ENCODE == "Y" ? "E" : "F")) . "&CLIENT_PHPVER=" . urlencode(phpversion()) . "&dbv=" . urlencode($dbv != false ? $dbv : "");
         $strResultTmp = "";
         if (count($arClientModules) > 0) {
             foreach ($arClientModules as $key => $value) {
                 if (StrLen($strResultTmp) > 0) {
                     $strResultTmp .= ";";
                 }
                 $strResultTmp .= $key . "," . $value["VERSION"] . "," . $value["IS_DEMO"];
             }
         }
         if (StrLen($strResultTmp) > 0) {
             $strResult .= "&instm=" . urlencode($strResultTmp);
         }
         //			foreach ($arClientModules as $key => $value)
         //				$strResult .= "&m_".$key."=".urlencode($value);
         $strResultTmp = "";
         if (count($arRequestedModules) > 0) {
             for ($i = 0, $cnt = count($arRequestedModules); $i < $cnt; $i++) {
                 if (StrLen($strResultTmp) > 0) {
                     $strResultTmp .= ",";
                 }
                 $strResultTmp .= $arRequestedModules[$i];
             }
         }
         if (StrLen($strResultTmp) > 0) {
             $strResult .= "&reqm=" . urlencode($strResultTmp);
         }
         if ($bStrongList) {
             $strResult .= "&lim=Y";
         }
         $strResultTmp = "";
         if (count($arAdditionalData) > 0) {
             foreach ($arAdditionalData as $key => $value) {
                 if (StrLen($strResultTmp) > 0) {
                     $strResultTmp .= "&";
                 }
                 $strResultTmp .= $key . "=" . urlencode($value);
             }
         }
         if (StrLen($strResultTmp) > 0) {
             $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;
 }