summaryrefslogtreecommitdiff
path: root/discord/discord.cpp
diff options
context:
space:
mode:
authorouwou <26526779+ouwou@users.noreply.github.com>2021-02-26 00:58:30 -0500
committerouwou <26526779+ouwou@users.noreply.github.com>2021-02-26 00:58:30 -0500
commitc69ebaf35714febf50839e94b126eccfd236d3e4 (patch)
treece643f3c344540af0d30006836aeb9c28094de9d /discord/discord.cpp
parent2d65ed96bc4cad21274f2fc7c30650048f1eb4e5 (diff)
downloadabaddon-portaudio-c69ebaf35714febf50839e94b126eccfd236d3e4.tar.gz
abaddon-portaudio-c69ebaf35714febf50839e94b126eccfd236d3e4.zip
store member data received in MESSAGE_CREATE, _UPDATE
Diffstat (limited to 'discord/discord.cpp')
-rw-r--r--discord/discord.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/discord/discord.cpp b/discord/discord.cpp
index 52f3125..b0d79e0 100644
--- a/discord/discord.cpp
+++ b/discord/discord.cpp
@@ -1469,6 +1469,8 @@ void DiscordClient::StoreMessageData(Message &msg) {
if (chan.has_value() && chan->GuildID.has_value())
msg.GuildID = *chan->GuildID;
+ m_store.BeginTransaction();
+
m_store.SetMessage(msg.ID, msg);
m_store.SetUser(msg.Author.ID, msg.Author);
if (msg.Reactions.has_value())
@@ -1482,6 +1484,11 @@ void DiscordClient::StoreMessageData(Message &msg) {
for (const auto &user : msg.Mentions)
m_store.SetUser(user.ID, user);
+ if (msg.Member.has_value())
+ m_store.SetGuildMember(*msg.GuildID, msg.Author.ID, *msg.Member);
+
+ m_store.EndTransaction();
+
if (msg.ReferencedMessage.has_value() && msg.MessageReference.has_value() && msg.MessageReference->ChannelID.has_value())
if (msg.ReferencedMessage.value() != nullptr)
StoreMessageData(**msg.ReferencedMessage);