diff --git a/app/models/concerns/mentionable.rb b/app/models/concerns/mentionable.rb index 8cac47246db63cfd6c3bd9bedb38c8ff56f5bc76..ec9e0f1b1d0a6537b45bd9131577204198abf8da 100644 --- a/app/models/concerns/mentionable.rb +++ b/app/models/concerns/mentionable.rb @@ -14,14 +14,14 @@ module Mentionable attr = attr.to_s mentionable_attrs << [attr, options] end + end + included do # Accessor for attributes marked mentionable. - def mentionable_attrs - @mentionable_attrs ||= [] + cattr_accessor :mentionable_attrs, instance_accessor: false do + [] end - end - included do if self < Participable participant -> (user, ext) { all_references(user, extractor: ext) } end diff --git a/app/models/concerns/note_on_diff.rb b/app/models/concerns/note_on_diff.rb index 7b6a28ccf3cdfa92ae9e46f5bee0983a25f2f821..2785fbb21c9966a2028cf42199e4973c2a32edc7 100644 --- a/app/models/concerns/note_on_diff.rb +++ b/app/models/concerns/note_on_diff.rb @@ -4,9 +4,6 @@ module NoteOnDiff NUMBER_OF_TRUNCATED_DIFF_LINES = 16 included do - attr_mentionable :note, pipeline: :note - participant :author - delegate :blob, :highlighted_diff_lines, to: :diff_file, allow_nil: true end diff --git a/app/models/concerns/participable.rb b/app/models/concerns/participable.rb index 9822844357dde157dc616c078a81de29b30fed83..70740c76e43ecc01ffc3234c065ae9b0c7f543be 100644 --- a/app/models/concerns/participable.rb +++ b/app/models/concerns/participable.rb @@ -41,9 +41,12 @@ module Participable def participant(attr) participant_attrs << attr end + end - def participant_attrs - @participant_attrs ||= [] + included do + # Accessor for participant attributes. + cattr_accessor :participant_attrs, instance_accessor: false do + [] end end