diff --git a/app/models/concerns/assignment_handler.rb b/app/models/concerns/assignment_handler.rb index 4fd778d45..76ff47aca 100644 --- a/app/models/concerns/assignment_handler.rb +++ b/app/models/concerns/assignment_handler.rb @@ -4,7 +4,7 @@ module AssignmentHandler included do before_save :ensure_assignee_is_from_team - after_update :notify_assignment_change, :process_assignment_activities + after_commit :notify_assignment_change, :process_assignment_activities end private diff --git a/app/models/notification.rb b/app/models/notification.rb index 1577f8dda..7599d4d6e 100644 --- a/app/models/notification.rb +++ b/app/models/notification.rb @@ -71,6 +71,7 @@ class Notification < ApplicationRecord end # TODO: move to a data presenter + # rubocop:disable Metrics/CyclomaticComplexity def push_message_title case notification_type when 'conversation_creation' @@ -81,14 +82,15 @@ class Notification < ApplicationRecord I18n.t( 'notifications.notification_title.assigned_conversation_new_message', display_id: conversation.display_id, - content: primary_actor.content&.truncate_words(10) + content: primary_actor&.content&.truncate_words(10) ) when 'conversation_mention' - "[##{conversation.display_id}] #{transform_user_mention_content primary_actor.content}" + "[##{conversation&.display_id}] #{transform_user_mention_content primary_actor&.content}" else '' end end + # rubocop:enable Metrics/CyclomaticComplexity def conversation return primary_actor.conversation if %w[assigned_conversation_new_message conversation_mention].include? notification_type