Ejemplo n.º 1
0
        static $aSearch = array("
", "\\", "'", "\"", "\r\n", "\r", "\n", "
", "*/", "</");
        static $aReplace = array(" ", "\\\\", "\\'", '\\"', "\n", "\n", "\\n", "\\n", "*\\/", "<\\/");
        $val = str_replace($aSearch, $aReplace, GetMessage($name, $replace));
        return $val;
    }
}
$arMenu = array(array("TEXT" => GetMessage("SUP_CHECK_UPDATES"), "LINK" => "/bitrix/admin/update_system.php?refresh=Y&lang=" . LANGUAGE_ID, "ICON" => "btn_update"), array("SEPARATOR" => "Y"), array("TEXT" => GetMessage("SUP_SETTINGS"), "LINK" => "/bitrix/admin/settings.php?lang=" . LANGUAGE_ID . "&mid=main&tabControl_active_tab=edit5&back_url_settings=%2Fbitrix%2Fadmin%2Fupdate_system.php%3Flang%3D" . LANGUAGE_ID . ""), array("SEPARATOR" => "Y"), array("TEXT" => GetMessage("SUP_HISTORY"), "LINK" => "/bitrix/admin/sysupdate_log.php?lang=" . LANGUAGE_ID, "ICON" => "btn_update_log"));
$context = new CAdminContextMenu($arMenu);
$context->Show();
if (!$bLockUpdateSystemKernel) {
    if (CUpdateClient::Lock()) {
        if ($arUpdateList = CUpdateClient::GetUpdatesList($errorMessage, LANG, $stableVersionsOnly)) {
            $refreshStep = intval($_REQUEST["refresh_step"]) + 1;
            if (isset($arUpdateList["REPAIR"])) {
                if ($refreshStep < 5) {
                    CUpdateClient::Repair($arUpdateList["REPAIR"][0]["@"]["TYPE"], $stableVersionsOnly, LANG);
                    LocalRedirect("/bitrix/admin/update_system.php?refresh=Y&refresh_step=" . $refreshStep . "&lang=" . LANGUAGE_ID);
                } else {
                    $errorMessage .= "<br>" . GetMessage("SUP_CANT_REPARE") . ". ";
                }
            }
        } else {
            $errorMessage .= "<br>" . GetMessage("SUP_CANT_CONNECT") . ". ";
        }
        CUpdateClient::UnLock();
    } else {
        $errorMessage .= "<br>" . GetMessage("SUP_CANT_LOCK_UPDATES") . ". ";
    }
} else {
    $errorMessage .= "<br>" . GetMessage("SUP_CANT_CONTRUPDATE") . ". ";
}