/** и парсит в массив $arRes **/ function ParseServerData(&$strServerOutput, &$arRes, &$strError) { $strError_tmp = ""; $arRes = array(); CUpdateSystem::AddMessage2Log("exec CUpdateSystem::ParseServerData"); if (strlen($strServerOutput) <= 0) $strError_tmp .= "[UPSD01] ".GetMessage("SUPP_AS_EMPTY_RESP").".<br>"; if (strlen($strError_tmp)<=0) { if (substr($strServerOutput, 0, strlen("<DATA")) != "<DATA" && CUpdateSystem::IsGzipInstalled()) { $strServerOutput = @gzuncompress($strServerOutput); } if (substr($strServerOutput, 0, strlen("<DATA")) != "<DATA") { CUpdateSystem::AddMessage2Log(substr($strServerOutput, 0, 100), "UPSD02"); $strError_tmp .= "[UPSD02] ".GetMessage("SUPP_PSD_BAD_RESPONSE").".<br>"; } } //echo "strServerOutput:<br>".htmlspecialchars($strServerOutput)."<br><br>"; if (strlen($strError_tmp) <= 0) { // $arRes = CUpdateSystem::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").".<br>"; } if (strlen($strError_tmp) <= 0) { $CRCCode = $arRes["DATA"]["#"]["RESPONSE"][0]["@"]["CRC_CODE"]; if (StrLen($CRCCode) > 0) COption::SetOptionString("main", "crc_code", $CRCCode); if (isset($arRes["DATA"]["#"]["CLIENT"][0]["@"]["DATE_TO_SOURCE"])) COption::SetOptionString("main", "~support_finish_date", $arRes["DATA"]["#"]["CLIENT"][0]["@"]["DATE_TO_SOURCE"]); } if (strlen($strError_tmp) > 0) { CUpdateSystem::AddMessage2Log($strError_tmp, "CUPSD"); $strError .= $strError_tmp; return False; } else return True; }
} elseif ($TYPE == "ADD_SITE") { $strTitle = GetMessage("SUP_TITLE_ADD_SITE"); } $APPLICATION->SetTitle($strTitle); require $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_admin_after.php"; ?> <?php /*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/ /*@@@@@@@@@ ГЛАВНАЯ ФОРМА @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/ /*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/ /**********************************************************************/ /****** ШАГ 1 /ФОРМА/ ********************************************/ /**********************************************************************/ if ($TYPE == "UPDATE" && $STEP == 1) { if (!CUpdateSystem::IsGzipInstalled()) { echo "<font class=\"errortext\">" . str_replace("#ZLIB_URL#", "http://www.php.net/manual/en/ref.zlib.php", GetMessage("SUP_ZLIB_RECOM")) . "</font><br><br>"; } if (strlen($strErrorMessage) > 0) { echo "<font class=\"errortext\">" . $strErrorMessage . "</font><br><br>"; } // Если пришли ошибки с сервера if ($arTypesUpdates !== false && isset($arTypesUpdates["ERROR"]) && count($arTypesUpdates["ERROR"]) > 0) { for ($i = 0; $i < count($arTypesUpdates["ERROR"]); $i++) { ?> <font class="errortext"> <?php if (strlen($arTypesUpdates["ERROR"][$i]["@"]["TYPE"]) > 0) { ?> [<?php echo $arTypesUpdates["ERROR"][$i]["@"]["TYPE"];