diff --git a/crates/delta/src/routes/channels/message_query.rs b/crates/delta/src/routes/channels/message_query.rs index fba69bdb..f1237281 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 37f32e30..59518983 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 937b7c21..d6b04dc8 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, .. })