From 20e70d0ac5febfeee6c6cc0a83881a79422bba57 Mon Sep 17 00:00:00 2001 From: Joffrey JAFFEUX Date: Wed, 6 Oct 2021 11:53:57 +0200 Subject: [PATCH] DEV: adds a topic level bookmark toggle (#14471) --- app/assets/javascripts/discourse/app/controllers/topic.js | 1 + app/assets/javascripts/discourse/app/models/topic.js | 8 +++++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/app/assets/javascripts/discourse/app/controllers/topic.js b/app/assets/javascripts/discourse/app/controllers/topic.js index 97ff99bd83d..e6556e982fd 100644 --- a/app/assets/javascripts/discourse/app/controllers/topic.js +++ b/app/assets/javascripts/discourse/app/controllers/topic.js @@ -1217,6 +1217,7 @@ export default Controller.extend(bufferedProperty("model"), { onAfterSave: () => { this.model.set("bookmarked", true); this.model.incrementProperty("bookmarksWereChanged"); + this.appEvents.trigger("topic:bookmark-toggled"); }, }); }, diff --git a/app/assets/javascripts/discourse/app/models/topic.js b/app/assets/javascripts/discourse/app/models/topic.js index 66c7f685240..262bc8c12de 100644 --- a/app/assets/javascripts/discourse/app/models/topic.js +++ b/app/assets/javascripts/discourse/app/models/topic.js @@ -384,7 +384,13 @@ const Topic = RestModel.extend({ } this.set( "bookmarks", - this.bookmarks.filter((bookmark) => bookmark.id !== id) + this.bookmarks.filter((bookmark) => { + if (bookmark.id === id && bookmark.for_topic) { + this.appEvents.trigger("topic:bookmark-toggled"); + } + + return bookmark.id !== id; + }) ); this.set("bookmarked", this.bookmarks.length); this.incrementProperty("bookmarksWereChanged");