require_once __DIR__.'/include/classes/core/APP.php';
$page['file'] = 'setup.php';
APP::getInstance()->run(APP::EXEC_MODE_SETUP);
echo (new CView('general.warning', [
'header' => $e->getMessage(),
'theme' => ZBX_DEFAULT_THEME
'default_lang' => [T_ZBX_STR, O_OPT, null, null, null],
'type' => [T_ZBX_STR, O_OPT, null, IN('"'.ZBX_DB_MYSQL.'","'.ZBX_DB_POSTGRESQL.'","'.ZBX_DB_ORACLE.'"'), null],
'server' => [T_ZBX_STR, O_OPT, null, null, null],
'port' => [T_ZBX_INT, O_OPT, null, BETWEEN(0, 65535), null, _('Database port')],
'database' => [T_ZBX_STR, O_OPT, null, NOT_EMPTY, '(isset({type}) && {type} !== "'.ZBX_DB_ORACLE.'")', _('Database name')],
'user' => [T_ZBX_STR, O_OPT, null, null, null],
'password' => [T_ZBX_STR, O_OPT, null, null, null],
'schema' => [T_ZBX_STR, O_OPT, null, null, null],
'tls_encryption' => [T_ZBX_INT, O_OPT, null, IN([0,1]), null],
'verify_certificate' => [T_ZBX_INT, O_OPT, null, IN([0,1]), null],
'verify_host' => [T_ZBX_INT, O_OPT, null, IN([0,1]), null],
'key_file' => [T_ZBX_STR, O_OPT, null, null, null],
'cert_file' => [T_ZBX_STR, O_OPT, null, null, null],
'ca_file' => [T_ZBX_STR, O_OPT, null, null, null],
'cipher_list' => [T_ZBX_STR, O_OPT, null, null, null],
'creds_storage' => [T_ZBX_INT, O_OPT, null, IN([DB_STORE_CREDS_CONFIG, DB_STORE_CREDS_VAULT_HASHICORP, DB_STORE_CREDS_VAULT_CYBERARK]), null],
'vault_url' => [T_ZBX_STR, O_OPT, null, null, null],
'vault_prefix_hashicorp' => [T_ZBX_STR, O_OPT, null, null, null],
'vault_prefix_cyberark' => [T_ZBX_STR, O_OPT, null, null, null],
'vault_db_path' => [T_ZBX_STR, O_OPT, null, null, null],
'vault_query_string' => [T_ZBX_STR, O_OPT, null, null, null],
'vault_token' => [T_ZBX_STR, O_OPT, null, null, null],
'vault_certificates' => [T_ZBX_INT, O_OPT, null, IN([0,1]), null],
'vault_cert_file' => [T_ZBX_STR, O_OPT, null, null, null],
'vault_key_file' => [T_ZBX_STR, O_OPT, null, null, null],
'zbx_server_name' => [T_ZBX_STR, O_OPT, null, null, null],
'default_timezone' => [T_ZBX_STR, O_OPT, null, null, null],
'default_theme' => [T_ZBX_STR, O_OPT, null, null, null],
'save_config' => [T_ZBX_STR, O_OPT, P_SYS, null, null],
'retry' => [T_ZBX_STR, O_OPT, P_SYS, null, null],
'cancel' => [T_ZBX_STR, O_OPT, P_SYS, null, null],
'finish' => [T_ZBX_STR, O_OPT, P_SYS, null, null],
'next' => [T_ZBX_STR, O_OPT, P_SYS|P_ONLY_ARRAY, null, null],
'back' => [T_ZBX_STR, O_OPT, P_SYS|P_ONLY_ARRAY, null, null]
$check_fields_result = check_fields($fields, false);
if (hasRequest('cancel') || hasRequest('finish')) {
if (CWebUser::$data && CWebUser::getType() < USER_TYPE_SUPER_ADMIN
&& CSessionHelper::get('step') != CSetupWizard::STAGE_INSTALL) {
access_deny(ACCESS_DENY_PAGE);
CSessionHelper::set('check_fields_result', $check_fields_result);
$default_lang = ZBX_DEFAULT_LANG;
if (CSessionHelper::has('default_lang')) {
$default_lang = CSessionHelper::get('default_lang');