From ea40cbaebcfc3ec5b1393021228e4af4c18ae9a3 Mon Sep 17 00:00:00 2001 From: TheBobBobs <84781603+TheBobBobs@users.noreply.github.com> Date: Tue, 21 Nov 2023 23:34:00 +0000 Subject: [PATCH] fix: set relationship for users in BulkMessageResponse --- crates/delta/src/routes/channels/message_query.rs | 2 +- crates/delta/src/routes/channels/message_search.rs | 2 +- crates/quark/src/impl/generic/channels/message.rs | 7 ++++++- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/crates/delta/src/routes/channels/message_query.rs b/crates/delta/src/routes/channels/message_query.rs index fba69bdb5..f12372810 100644 --- a/crates/delta/src/routes/channels/message_query.rs +++ b/crates/delta/src/routes/channels/message_query.rs @@ -91,7 +91,7 @@ pub async fn req( }) .await?; - BulkMessageResponse::transform(db, Some(&channel), messages, include_users) + BulkMessageResponse::transform(db, Some(&channel), messages, &user, include_users) .await .map(Json) } diff --git a/crates/delta/src/routes/channels/message_search.rs b/crates/delta/src/routes/channels/message_search.rs index 37f32e30f..59518983d 100644 --- a/crates/delta/src/routes/channels/message_search.rs +++ b/crates/delta/src/routes/channels/message_search.rs @@ -90,7 +90,7 @@ pub async fn req( }) .await?; - BulkMessageResponse::transform(db, Some(&channel), messages, include_users) + BulkMessageResponse::transform(db, Some(&channel), messages, &user, include_users) .await .map(Json) } diff --git a/crates/quark/src/impl/generic/channels/message.rs b/crates/quark/src/impl/generic/channels/message.rs index 937b7c212..d6b04dc8a 100644 --- a/crates/quark/src/impl/generic/channels/message.rs +++ b/crates/quark/src/impl/generic/channels/message.rs @@ -382,11 +382,16 @@ impl BulkMessageResponse { db: &Database, channel: Option<&Channel>, messages: Vec, + user: &User, include_users: Option, ) -> Result { if let Some(true) = include_users { let user_ids = messages.get_user_ids(); - let users = User::fetch_foreign_users(db, &user_ids).await?; + let users = User::fetch_foreign_users(db, &user_ids) + .await? + .into_iter() + .map(|x| x.with_relationship(user)) + .collect(); Ok(match channel { Some(Channel::TextChannel { server, .. })