prepare("SELECT setting_value FROM bot_settings WHERE setting_key = ?"); $stmt->execute([$key]); return $stmt->fetchColumn() ?: ''; } function save_setting($key, $value) { $stmt = db()->prepare("UPDATE bot_settings SET setting_value = ? WHERE setting_key = ?"); $stmt->execute([$value, $key]); } $message = ''; if ($_SERVER['REQUEST_METHOD'] === 'POST') { $token = $_POST['discord_token'] ?? ''; $guild = $_POST['guild_id'] ?? ''; $channel = $_POST['voice_channel_id'] ?? ''; save_setting('discord_token', $token); save_setting('guild_id', $guild); save_setting('voice_channel_id', $channel); // Also update JSON for the bot $config = [ 'discord_token' => $token, 'guild_id' => $guild, 'voice_channel_id' => $channel, 'last_voice_channel' => json_decode(get_setting('last_voice_channel'), true) ?: null ]; if (!is_dir(__DIR__ . '/data')) mkdir(__DIR__ . '/data', 0775, true); file_put_contents(__DIR__ . '/data/config.json', json_encode($config, JSON_PRETTY_PRINT)); $message = 'Configuration saved successfully!'; } $token = get_setting('discord_token'); $guildId = get_setting('guild_id'); $voiceId = get_setting('voice_channel_id'); ?>
assets/audio/sahur.mp3.node_modules are installed (run npm install).node index.js./testsahur in your Discord server.