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 {