39669-vm/fix_app.php
2026-04-16 14:19:43 +00:00

50 lines
1.6 KiB
PHP

<?php
$file = 'includes/app.php';
$content = file_get_contents($file);
$search1 = "ensure_center_application_schema(\$pdo);";
$replace1 = "ensure_app_settings_schema(\$pdo);\n ensure_center_application_schema(\$pdo);";
$content = str_replace($search1, $replace1, $content);
$search2 = "function ensure_center_application_schema(PDO \$pdo): void";
$replace2 = "function ensure_app_settings_schema(PDO \$pdo): void
{
\$pdo->exec(\"
CREATE TABLE IF NOT EXISTS app_settings (
id INT PRIMARY KEY DEFAULT 1,
app_name VARCHAR(190) NOT NULL DEFAULT 'Central Admin',
app_email VARCHAR(190) DEFAULT NULL,
app_telephone VARCHAR(60) DEFAULT NULL,
app_logo VARCHAR(255) DEFAULT NULL,
app_favicon VARCHAR(255) DEFAULT NULL,
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
\");
\$pdo->exec(\"INSERT IGNORE INTO app_settings (id, app_name) VALUES (1, 'Central Admin')\");
}
function get_app_settings(): array
{
\$pdo = db_connection();
\$stmt = \$pdo->query('SELECT * FROM app_settings WHERE id = 1');
\$res = \$stmt->fetch(PDO::FETCH_ASSOC);
if (!\$res) {
return [
'app_name' => 'Central Admin',
'app_email' => '',
'app_telephone' => '',
'app_logo' => '',
'app_favicon' => ''
];
}
return \$res;
}
function ensure_center_application_schema(PDO \$pdo): void";
$content = str_replace($search2, $replace2, $content);
file_put_contents($file, $content);
echo "Done\n";