diff options
author | Marin Jankovski <marin@gitlab.com> | 2014-09-04 12:46:35 +0400 |
---|---|---|
committer | Marin Jankovski <marin@gitlab.com> | 2014-09-08 11:05:16 +0400 |
commit | 1067b00724c045b4fa46a9f8ff5acd09d65553e0 (patch) | |
tree | baeba9612464d48a5ba59775c89587caef980ec9 /app | |
parent | b54f2393c3e952f8ff9f297b3c848c3c1cede1c9 (diff) |
Duplicate the behaviour and refactor for use with parallel diff.
Diffstat (limited to 'app')
-rw-r--r-- | app/helpers/commits_helper.rb | 7 | ||||
-rw-r--r-- | app/views/projects/commits/_parallel_view.html.haml | 13 |
2 files changed, 14 insertions, 6 deletions
diff --git a/app/helpers/commits_helper.rb b/app/helpers/commits_helper.rb index f61aa259154..2c1df6beeab 100644 --- a/app/helpers/commits_helper.rb +++ b/app/helpers/commits_helper.rb @@ -23,6 +23,13 @@ module CommitsHelper end end + def side_diff_line(diff, index) + Gitlab::DiffParser.new(diff.diff.lines.to_a, diff.new_path) + .each_for_parallel do |full_line, type, line_code, line_new, line_old, next_line| + yield(full_line, type, line_code, line_new, line_old, next_line) + end + end + def each_diff_line_near(diff, index, expected_line_code) max_number_of_lines = 16 diff --git a/app/views/projects/commits/_parallel_view.html.haml b/app/views/projects/commits/_parallel_view.html.haml index 3bbe8b4baaf..e566b1dfca4 100644 --- a/app/views/projects/commits/_parallel_view.html.haml +++ b/app/views/projects/commits/_parallel_view.html.haml @@ -1,18 +1,19 @@ / Side-by-side diff view %div.text-file %table - - each_diff_line(diff, index) do |line, type, line_code, line_new, line_old, raw_line, e| + - side_diff_line(diff, index) do |line, type, line_code, line_new, line_old, next_line| + - next if type == 'new' %tr.line_holder.parallel{ id: line_code, class: "#{type}" } - if type != 'match' %td.old_line - = link_to raw(type == "new" ? " " : line_old), "##{line_code}", id: line_code + = link_to raw(line_old), "##{line_code}", id: line_code - if type == 'old' - %td.line_content{class: "parallel noteable_line old #{line_code}", "line_code" => line_code}= line + %td.line_content{class: "parallel noteable_line old #{line_code}", "line_code" => line_code}= raw line - else %td.line_content.parallel= line %td.new_line{data: {linenumber: line_new}} - = link_to raw(type == "old" ? " " : line_new) , "##{line_code}", id: line_code - - if type == 'new' - %td.line_content.parallel{class: "noteable_line #{type} #{line_code}", "line_code" => line_code}= line + = link_to raw(line_new) , "##{line_code}", id: line_code + - if type == 'old' + %td.line_content.parallel{class: "noteable_line new #{line_code}", "line_code" => line_code}= raw next_line - else %td.line_content.parallel= line |