34 lines
850 B
PHP
34 lines
850 B
PHP
<?php
|
|
declare(strict_types=1);
|
|
|
|
header('Content-Type: application/json');
|
|
|
|
$expectedToken = getenv('INIT_TOKEN') ?: '';
|
|
$providedToken = $_GET['token'] ?? '';
|
|
|
|
if ($expectedToken === '' || !hash_equals($expectedToken, $providedToken)) {
|
|
http_response_code(403);
|
|
echo json_encode([
|
|
'status' => 'error',
|
|
'message' => 'Invalid or missing INIT_TOKEN.',
|
|
], JSON_PRETTY_PRINT);
|
|
exit;
|
|
}
|
|
|
|
try {
|
|
require __DIR__ . '/scripts/init_db_core.php';
|
|
$result = initializeDatabase();
|
|
|
|
echo json_encode([
|
|
'status' => 'success',
|
|
'message' => 'Database initialized successfully.',
|
|
'result' => $result,
|
|
], JSON_PRETTY_PRINT);
|
|
} catch (Throwable $e) {
|
|
http_response_code(500);
|
|
echo json_encode([
|
|
'status' => 'error',
|
|
'message' => $e->getMessage(),
|
|
], JSON_PRETTY_PRINT);
|
|
}
|