diff --git a/admin/settings.php b/admin/settings.php index ed1eab9..19d8108 100644 --- a/admin/settings.php +++ b/admin/settings.php @@ -8,31 +8,50 @@ if (!isset($_SESSION['admin_logged_in'])) { } $message = ''; +$db = db(); -if ($_SERVER['REQUEST_METHOD'] === 'POST') { - $db = db(); +if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['update_settings'])) { foreach ($_POST['settings'] as $key => $value) { $stmt = $db->prepare("UPDATE settings SET key_value = ? WHERE key_name = ?"); $stmt->execute([$value, $key]); } - $message = '设置已更新'; + $message = '设置已成功更新'; } -$settings = db()->query("SELECT * FROM settings")->fetchAll(); +$settings_raw = $db->query("SELECT * FROM settings ORDER BY id ASC")->fetchAll(); +$settings = []; +foreach ($settings_raw as $s) { + $settings[$s['key_name']] = $s; +} + +// Group settings for better UI +$groups = [ + '基础信息' => ['site_name', 'site_logo', 'site_description', 'footer_text', 'notice', 'tg_channel'], + '外观样式 (PC端)' => ['primary_color', 'accent_color'], + '外观样式 (手机端)' => ['mobile_primary_color', 'mobile_accent_color'], + '支付与联系' => ['usdt_address', 'qr_code_custom', 'tg_link'], + 'API 与 通知' => ['tg_bot_token', 'tg_chat_id'] +]; ?>
-