<?php
declare(strict_types=1);

$configFile = __DIR__ . '/app_config.php';
$appConfig = is_file($configFile) ? (require $configFile) : [];
$db = is_array($appConfig['db'] ?? null) ? $appConfig['db'] : [];

$DB_HOST = getenv('DB_HOST') ?: (string)($db['host'] ?? 'localhost');
$DB_USER = getenv('DB_USER') ?: (string)($db['user'] ?? '');
$DB_PASS = getenv('DB_PASS') ?: (string)($db['pass'] ?? '');
$DB_NAME = getenv('DB_NAME') ?: (string)($db['name'] ?? '');

if ($DB_HOST === '' || $DB_USER === '' || $DB_NAME === '') {
    http_response_code(503);
    exit('Сайт ще не налаштований. Відкрийте install.php для завершення установки.');
}

mysqli_report(MYSQLI_REPORT_OFF);
$conn = @new mysqli($DB_HOST, $DB_USER, $DB_PASS, $DB_NAME);

if ($conn->connect_errno) {
    error_log(sprintf('DB connect failed: errno=%d', $conn->connect_errno));
    http_response_code(503);
    exit('Тимчасова помилка. Спробуйте пізніше.');
}

if (!$conn->set_charset('utf8mb4')) {
    error_log('DB set_charset failed');
}

@$conn->query("SET sql_mode = 'STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'");
