if (!defined('VALID_RUN')) {
    header("HTTP/1.1 404 Not Found");
    exit;
}
define('CONF_GET_PREFIX', 'getconf_');
define('CONF_SAVE_PREFIX', 'saveconf_');
global $config, $a_plugins, $cl_plugins, $cs_plugins;
$forms_plugins_dir = System::config('plug_dir') . 'forms_plugins/';
$user_funcs = array();
$user_funcs2 = array();
$plugins = array();
//Подключаем плагины
$user_funcs = get_defined_functions();
$user_funcs = $user_funcs['user'];
// Подключаем плагины
SystemPluginsIncludeGroup('forms');
$user_funcs2 = get_defined_functions();
$user_funcs2 = $user_funcs2['user'];
$a_plugins = array();
$a_plugins = array_diff($user_funcs2, $user_funcs);
$cl_plugins = array();
$cs_plugins = array();
$ll = strlen(CONF_GET_PREFIX);
$sl = strlen(CONF_SAVE_PREFIX);
foreach ($a_plugins as $pl) {
    if (substr($pl, 0, $ll) == CONF_GET_PREFIX) {
        $cl_plugins[] = array(substr($pl, $ll), $pl);
    } elseif (substr($pl, 0, $sl) == CONF_SAVE_PREFIX) {
        $cs_plugins[] = array(substr($pl, $sl), $pl);
    }
}
if (is_file('config/db_config.php')) {
    // Система установлена
    // Загружаем конфигурацию
    require 'config/db_config.php';
    require 'config/salt.php';
    // Блокируем инсталлятор, если он не заблокирован
    if (!is_file('config/setup_lock.php') && defined('ADMIN_SCRIPT')) {
        file_put_contents('config/setup_lock.php', "\n");
    }
    // Проверяем версию базы данных
    if (substr($config['db_version'], 0, 3) != substr(CMS_VERSION, 0, 3) && !defined('SETUP_SCRIPT')) {
        exit('<html><head><title>Ошибка</title></head><body><h2 align="center">Требуется обновление базы данных.</h2></body></html>');
    }
    // Подключение к базе данных
    define("DATABASE", true);
    SystemPluginsIncludeGroup('database');
    // Подключение драйвера базы данных
    if (method_exists($db, 'Connect')) {
        System::database()->ErrorReporting = $config['db_errors'];
        System::database()->Prefix = $config['db_pref'];
        System::database()->Connect($config['db_host'], $config['db_user'], $config['db_pass'], $config['db_name']);
        if (!System::database()->Connected) {
            exit('<html><head><title>Ошибка</title></head><body><p align="center">Проблемы с базой данных, проверьте настройки базы данных.</p></body></html>');
        }
    } else {
        exit('<html><head><title>Ошибка</title></head><body><p align="center">Проблема с подключением драйвера базы данных.</p></body></html>');
    }
    if (System::database()->DbSelected) {
        // Загрузка конфигурации сайта
        LoadSiteConfig($config);
        LoadSiteConfig($plug_config, 'plugins_config', 'plugins_config_groups');