diff --git a/src/objects/channel.rs b/src/objects/channel.rs index 7ef6d91..ad16379 100644 --- a/src/objects/channel.rs +++ b/src/objects/channel.rs @@ -298,20 +298,21 @@ impl Channel { message.build(app_state).await } - /*pub async fn edit_message(&self, data: &Data, user_uuid: Uuid, message_uuid: Uuid, message: String) -> Result { + pub async fn edit_message(&self, app_state: &AppState, user_uuid: Uuid, message_uuid: Uuid, message: String) -> Result { use messages::dsl; - let mut conn = data.pool.get().await?; + let mut conn = app_state.pool.get().await?; - update(messages::table) + let message: MessageBuilder = update(messages::table) .filter(dsl::user_uuid.eq(user_uuid)) .filter(dsl::uuid.eq(message_uuid)) .set((dsl::is_edited.eq(true), dsl::message.eq(message))) - .execute(&mut conn) + .returning(MessageBuilder::as_select()) + .get_result(&mut conn) .await?; - Ok(()) - }*/ + message.build(app_state).await + } pub async fn set_name(&mut self, app_state: &AppState, new_name: String) -> Result<(), Error> { if !CHANNEL_REGEX.is_match(&new_name) {