From eb301aee1c2be6b6bb4da14d0fbe6849eb8b8cbf Mon Sep 17 00:00:00 2001 From: Syping Date: Thu, 25 Jan 2024 21:25:33 +0100 Subject: [PATCH] Fix: add generated webhooks to webhook vector --- src/main.cpp | 8 ++++++-- src/settings.cpp | 6 +++++- src/settings.h | 1 + 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index b79ce72..801e5a3 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -142,8 +142,10 @@ int main(int argc, char* argv[]) { s_target.webhook = webhook; s_channel.targets.push_back(s_target); - const std::lock_guard guard(settings); + settings.lock(); settings.add_channel(s_channel, event.command.guild_id); + settings.add_translatebot_webhook(webhook); + settings.unlock(); event.reply(dpp::message("Channel will be now translated!").set_flags(dpp::m_ephemeral)); }); @@ -158,8 +160,10 @@ int main(int argc, char* argv[]) { s_target.webhook = *webhook; s_channel.targets.push_back(s_target); - const std::lock_guard guard(settings); + settings.lock(); settings.add_channel(s_channel, event.command.guild_id); + settings.add_translatebot_webhook(*webhook); + settings.unlock(); event.reply(dpp::message("Channel will be now translated!").set_flags(dpp::m_ephemeral)); } diff --git a/src/settings.cpp b/src/settings.cpp index ba86c1c..9d367ed 100644 --- a/src/settings.cpp +++ b/src/settings.cpp @@ -36,7 +36,11 @@ void bot::settings::settings::add_channel(const bot::settings::channel &channel, guild.id = guild_id; guild.channel.push_back(channel); m_guilds.push_back(guild); - return; +} + +void bot::settings::settings::add_translatebot_webhook(const dpp::webhook &webhook) +{ + m_webhookIds.push_back(webhook.id); } uint16_t bot::settings::settings::get_avatar_size() diff --git a/src/settings.h b/src/settings.h index e239797..ab13a7b 100644 --- a/src/settings.h +++ b/src/settings.h @@ -52,6 +52,7 @@ namespace bot { class settings { public: void add_channel(const bot::settings::channel &channel, dpp::snowflake guild_id); + void add_translatebot_webhook(const dpp::webhook &webhook); uint16_t get_avatar_size(); const bot::settings::channel* get_channel(const bot::settings::guild *guild, dpp::snowflake channel_id); const bot::settings::channel* get_channel(dpp::snowflake guild_id, dpp::snowflake channel_id);