summaryrefslogtreecommitdiff
path: root/app/models/note.rb
diff options
context:
space:
mode:
authorFilipa Lacerda <filipa@gitlab.com>2017-10-09 09:14:38 +0100
committerFilipa Lacerda <filipa@gitlab.com>2017-10-09 09:14:38 +0100
commitb6ab735ad2e596007d8dc0123bf5e2e018e99df8 (patch)
tree479d0fb7097caeeb132558b333cd2b8666118362 /app/models/note.rb
parentfe5fe5242f67a7d91ff43659978892d507b71014 (diff)
parentf45bb52af643cd271d415317f40b5541b18ec634 (diff)
downloadgitlab-ce-38869-commitslist.tar.gz
Merge branch 'master' into 38869-commitslist38869-commitslist
* master: (83 commits) Move cycle analytics banner into a vue file Remove executable permissions on images to make docs lint happy Sync up hard coded DN class in migration Redefine `respond_to?` in light of `method_missing` Make internal methods private Leave bad DNs alone instead of raising errors Refactor DN error classes Add changelog entry for LDAP normalization Add migration specs Move migration to background Update DN class in migration Normalize values, reusing DN normalization code Remove telephoneNumber format comment Fix space stripping Rename method to `to_normalized_s` Refactor initialize method for clarity Move downcasing to normalize method Normalize existing persisted DNs Resolve Rubocop offenses Switch to new DN class ...
Diffstat (limited to 'app/models/note.rb')
-rw-r--r--app/models/note.rb16
1 files changed, 12 insertions, 4 deletions
diff --git a/app/models/note.rb b/app/models/note.rb
index f44590e2144..ceded9f2aef 100644
--- a/app/models/note.rb
+++ b/app/models/note.rb
@@ -134,14 +134,22 @@ class Note < ActiveRecord::Base
Discussion.build(notes)
end
+ # Group diff discussions by line code or file path.
+ # It is not needed to group by line code when comment is
+ # on an image.
def grouped_diff_discussions(diff_refs = nil)
groups = {}
diff_notes.fresh.discussions.each do |discussion|
- line_code = discussion.line_code_in_diffs(diff_refs)
-
- if line_code
- discussions = groups[line_code] ||= []
+ group_key =
+ if discussion.on_image?
+ discussion.file_new_path
+ else
+ discussion.line_code_in_diffs(diff_refs)
+ end
+
+ if group_key
+ discussions = groups[group_key] ||= []
discussions << discussion
end
end