Merge pull request #8097 from cirosantilli/dry-mentioned-in
DRY mentioned in magic note constant
This commit is contained in:
commit
d545bb8de4
2 changed files with 15 additions and 3 deletions
|
@ -80,7 +80,7 @@ class Note < ActiveRecord::Base
|
|||
note_options = {
|
||||
project: project,
|
||||
author: author,
|
||||
note: "_mentioned in #{gfm_reference}_",
|
||||
note: cross_reference_note_content(gfm_reference),
|
||||
system: true
|
||||
}
|
||||
|
||||
|
@ -174,7 +174,7 @@ class Note < ActiveRecord::Base
|
|||
where(noteable_id: noteable.id)
|
||||
end
|
||||
|
||||
notes.where('note like ?', "_mentioned in #{gfm_reference}_").
|
||||
notes.where('note like ?', cross_reference_note_content(gfm_reference)).
|
||||
system.any?
|
||||
end
|
||||
|
||||
|
@ -182,8 +182,16 @@ class Note < ActiveRecord::Base
|
|||
where("note like :query", query: "%#{query}%")
|
||||
end
|
||||
|
||||
def cross_reference_note_prefix
|
||||
'_mentioned in '
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def cross_reference_note_content(gfm_reference)
|
||||
cross_reference_note_prefix + "#{gfm_reference}_"
|
||||
end
|
||||
|
||||
# Prepend the mentioner's namespaced project path to the GFM reference for
|
||||
# cross-project references. For same-project references, return the
|
||||
# unmodified GFM reference.
|
||||
|
@ -249,6 +257,10 @@ class Note < ActiveRecord::Base
|
|||
nil
|
||||
end
|
||||
|
||||
def cross_reference?
|
||||
note.start_with?(self.class.cross_reference_note_prefix)
|
||||
end
|
||||
|
||||
def find_diff
|
||||
return nil unless noteable && noteable.diffs.present?
|
||||
|
||||
|
|
|
@ -119,7 +119,7 @@ class NotificationService
|
|||
|
||||
# ignore gitlab service messages
|
||||
return true if note.note =~ /\A_Status changed to closed_/
|
||||
return true if note.note =~ /\A_mentioned in / && note.system == true
|
||||
return true if note.cross_reference? && note.system == true
|
||||
|
||||
opts = { noteable_type: note.noteable_type, project_id: note.project_id }
|
||||
|
||||
|
|
Loading…
Reference in a new issue