commit ed908f2b1dd229b228d5ce9a9ade064c1c9bc803 Author: Marius BĂLTEANU Date: Mon Sep 8 23:46:56 2025 +0300 WIP diff --git a/app/models/journal.rb b/app/models/journal.rb index 12f2beec8..9b3cadb64 100644 --- a/app/models/journal.rb +++ b/app/models/journal.rb @@ -354,6 +354,14 @@ class Journal < ApplicationRecord !Watcher.any_watched?(Array.wrap(journalized), user) journalized.set_watcher(user, true) end + + previous_assignee = journalized.previous_assignee + if previous_assignee.is_a?(User) && previous_assignee&.active? && + previous_assignee.allowed_to?(:add_issue_watchers, project) && + previous_assignee.pref.auto_watch_on?('issue_previous_assigned_to_me') && + !Watcher.any_watched?(Array.wrap(journalized), previous_assignee) + journalized.set_watcher(previous_assignee, true) + end end def send_notification diff --git a/app/models/user_preference.rb b/app/models/user_preference.rb index fc1c3829b..7dec4a7f8 100644 --- a/app/models/user_preference.rb +++ b/app/models/user_preference.rb @@ -44,7 +44,7 @@ class UserPreference < ApplicationRecord TEXTAREA_FONT_OPTIONS = ['monospace', 'proportional'] DEFAULT_TOOLBAR_LANGUAGE_OPTIONS = %w[c cpp csharp css diff go groovy html java javascript objc perl php python r ruby sass scala shell sql swift xml yaml] - AUTO_WATCH_ON_OPTIONS = %w[issue_created issue_contributed_to] + AUTO_WATCH_ON_OPTIONS = %w[issue_created issue_contributed_to issue_previous_assigned_to_me] def initialize(attributes=nil, *args) super diff --git a/config/locales/en.yml b/config/locales/en.yml index c114634a3..a240bdf25 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -993,6 +993,7 @@ en: label_auto_watch_on: Auto watch label_auto_watch_on_issue_created: Issues I created label_auto_watch_on_issue_contributed_to: Issues I contributed to + label_auto_watch_on_issue_previous_assigned_to_me: Issues previous assigned to me label_preferences: Preferences label_chronological_order: In chronological order label_reverse_chronological_order: In reverse chronological order