FIX: removing a timer with `duration` doesn't work.

FIX: removing a timer with duration doesn’t work.

diff --git a/app/assets/javascripts/discourse/controllers/edit-topic-timer.js b/app/assets/javascripts/discourse/controllers/edit-topic-timer.js
index 461fa3c..926c249 100644
--- a/app/assets/javascripts/discourse/controllers/edit-topic-timer.js
+++ b/app/assets/javascripts/discourse/controllers/edit-topic-timer.js
@@ -76,15 +76,15 @@ export default Controller.extend(ModalFunctionality, {
     return "true" === isPublic ? publicTopicTimer : privateTopicTimer;
   },
 
-  _setTimer(time, duration, statusType) {
+  _setTimer(time, duration, statusType, basedOnLastPost, categoryId) {
     this.set("loading", true);
 
     TopicTimer.updateStatus(
       this.get("model.id"),
       time,
-      this.get("topicTimer.based_on_last_post"),
+      basedOnLastPost,
       statusType,
-      this.get("topicTimer.category_id"),
+      categoryId,
       duration
     )
       .then(result => {
@@ -155,7 +155,9 @@ export default Controller.extend(ModalFunctionality, {
       this._setTimer(
         this.get("topicTimer.updateTime"),
         this.get("topicTimer.duration"),
-        this.get("topicTimer.status_type")
+        this.get("topicTimer.status_type"),
+        this.get("topicTimer.based_on_last_post"),
+        this.get("topicTimer.category_id")
       );
     },
 

GitHub sha: 37bf38f8

This commit has been mentioned on Discourse Meta. There might be relevant details there:

https://meta.discourse.org/t/removing-timer-doesnt-work/146461/4