diff options
author | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2013-08-04 19:35:47 +0300 |
---|---|---|
committer | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2013-08-04 19:35:47 +0300 |
commit | 8f05fbbab5754b2a05547bae7ed3f9c409d8a640 (patch) | |
tree | 5c07fb3e4ee0cf462b4a03cd329e2b6b213d12bb /app/models/note.rb | |
parent | 2d75b454ef87a87bff942dc31837687919113468 (diff) | |
download | gitlab-ce-8f05fbbab5754b2a05547bae7ed3f9c409d8a640.tar.gz |
Dont show comment on diff if diff line was changed after comment left
Diffstat (limited to 'app/models/note.rb')
-rw-r--r-- | app/models/note.rb | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/app/models/note.rb b/app/models/note.rb index b0875a0761b..8714db2e10e 100644 --- a/app/models/note.rb +++ b/app/models/note.rb @@ -99,10 +99,21 @@ class Note < ActiveRecord::Base diff.new_path if diff end + def diff_old_line + line_code.split('_')[1].to_i + end + def diff_new_line line_code.split('_')[2].to_i end + def diff_line + if diff + @diff_line ||= diff.diff.lines.select { |line| line =~ /\A\+/ }[diff_new_line] || + diff.diff.lines.select { |line| line =~ /\A\-/ }[diff_old_line] + end + end + def discussion_id @discussion_id ||= [:discussion, noteable_type.try(:underscore), noteable_id || commit_id, line_code].join("-").to_sym end |