From 2a8cc5f3ba0f6d4cd29ee39d12c379b075c80af4 Mon Sep 17 00:00:00 2001 From: Kitaiti Makoto Date: Thu, 7 Jan 2021 22:41:48 +0900 Subject: [PATCH] Send event to channel when post deleted --- plume-models/src/posts.rs | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/plume-models/src/posts.rs b/plume-models/src/posts.rs index a71b8a49..1aafa693 100644 --- a/plume-models/src/posts.rs +++ b/plume-models/src/posts.rs @@ -93,12 +93,12 @@ impl Post { Ok(post) } - pub fn delete(&self, conn: &Connection, searcher: &Searcher) -> Result<()> { + pub fn delete(&self, conn: &Connection, _searcher: &Searcher) -> Result<()> { for m in Mention::list_for_post(&conn, self.id)? { m.delete(conn)?; } diesel::delete(self).execute(conn)?; - searcher.delete_document(self); + self.publish_deleted(); Ok(()) } @@ -570,6 +570,16 @@ impl Post { None, ) } + + fn publish_deleted(&self) { + POST_CHAN.tell( + Publish { + msg: PostDeleted(self.clone()), + topic: "post.deleted".into(), + }, + None, + ) + } } impl FromId for Post {