diff --git a/apps/threads.lua b/apps/threads.lua index 5f8b5e8..1932594 100644 --- a/apps/threads.lua +++ b/apps/threads.lua @@ -145,13 +145,12 @@ app:post("thread", "/:slug", function(self) return {redirect_to = self:url_for("thread", {slug = thread.slug}, {page = last_page}) .. "#latest-post"} end - if self.params.subscribe == "on" then - local subscription = Subscriptions:find({user_id = user.id, thread_id = thread.id}) - if subscription then - subscription:update({last_seen = os.time}) - else - Subscriptions:create({user_id = user.id, thread_id = thread.id, last_seen = os.time()}) - end + local subscription = Subscriptions:find({user_id = user.id, thread_id = thread.id}) + if subscription then + subscription:update({last_seen = os.time}) + end + if self.params.subscribe == "on" and not subscription then + Subscriptions:create({user_id = user.id, thread_id = thread.id, last_seen = os.time()}) end return {redirect_to = self:url_for("thread", {slug = thread.slug}, {page = last_page}) .. "#latest-post"}