... | ... |
@@ -826,44 +826,38 @@ sub latest_commit_log { |
826 | 826 |
} |
827 | 827 |
|
828 | 828 |
sub parse_blobdiff_lines { |
829 |
- my ($self, $lines_raw) = @_; |
|
829 |
+ my ($self, $lines) = @_; |
|
830 | 830 |
|
831 | 831 |
# Parse |
832 | 832 |
my @lines; |
833 |
- for my $line (@$lines_raw) { |
|
833 |
+ my $delete_count_rest; |
|
834 |
+ my $add_count_rest; |
|
835 |
+ for my $line (@$lines) { |
|
834 | 836 |
chomp $line; |
835 |
- my $class; |
|
836 | 837 |
|
837 |
- if ($line =~ /^diff \-\-git /) { $class = 'diff header' } |
|
838 |
- elsif ($line =~ /^index /) { $class = 'diff extended_header' } |
|
839 |
- elsif ($line =~ /^\+/) { $class = 'diff to_file' } |
|
840 |
- elsif ($line =~ /^\-/) { $class = 'diff from_file' } |
|
841 |
- elsif ($line =~ /^\@\@/) { $class = 'diff chunk_header' } |
|
842 |
- elsif ($line =~ /^Binary files/) { $class = 'diff binary_file' } |
|
843 |
- else { $class = 'diff' } |
|
844 |
- push @lines, {value => $line, class => $class}; |
|
845 |
- } |
|
846 |
- |
|
847 |
- return \@lines; |
|
848 |
-} |
|
849 |
- |
|
850 |
-sub parse_blobdiff_lines { |
|
851 |
- my ($self, $lines_raw) = @_; |
|
852 |
- |
|
853 |
- # Parse |
|
854 |
- my @lines; |
|
855 |
- for my $line (@$lines_raw) { |
|
856 |
- chomp $line; |
|
857 | 838 |
my $class; |
839 |
+ my $before_line_num; |
|
840 |
+ my $after_line_num; |
|
858 | 841 |
|
859 | 842 |
if ($line =~ /^diff \-\-git /) { $class = 'header' } |
860 |
- elsif ($line =~ /^index /) { $class = 'extended_header' } |
|
861 |
- elsif ($line =~ /^\+/) { $class = 'to_file' } |
|
862 |
- elsif ($line =~ /^\-/) { $class = 'from_file' } |
|
863 | 843 |
elsif ($line =~ /^\@\@/) { $class = 'chunk_header' } |
844 |
+ elsif ($line =~ /^\- /) { $class = 'from_file' } |
|
845 |
+ elsif ($line =~ /^\+ /) { $class = 'to_file' } |
|
864 | 846 |
elsif ($line =~ /^Binary files/) { $class = 'binary_file' } |
847 |
+ elsif ($line =~ /^deleted/ |
|
848 |
+ || $line =~ /^index / |
|
849 |
+ || $line =~ /^--- / |
|
850 |
+ || $line =~ /^\+\+\+ / |
|
851 |
+ ) { next } |
|
865 | 852 |
else { $class = 'diff' } |
866 |
- push @lines, {value => $line, class => $class}; |
|
853 |
+ |
|
854 |
+ my $line_data = { |
|
855 |
+ value => $line, |
|
856 |
+ class => $class, |
|
857 |
+ before_line_num => $before_line_num, |
|
858 |
+ after_line_num => $after_line_num |
|
859 |
+ }; |
|
860 |
+ push @lines, $line_data; |
|
867 | 861 |
} |
868 | 862 |
|
869 | 863 |
return \@lines; |
... | ... |
@@ -1,17 +1,7 @@ |
1 | 1 |
<div class="border-gray" style="margin-bottom:20px;"> |
2 |
- % my $start; |
|
3 | 2 |
% for my $line (@$lines) { |
4 | 3 |
% my $class = $line->{class}; |
5 | 4 |
% my $value = $line->{value}; |
6 |
- % unless ($start) { |
|
7 |
- % if ($class eq 'header') { |
|
8 |
- % $start = 1; |
|
9 |
- % } |
|
10 |
- % else { next } |
|
11 |
- % } |
|
12 |
- % next if $value =~ /^index /; |
|
13 |
- % next if $value =~ /^--- /; |
|
14 |
- % next if $value =~ /^\+\+\+ /; |
|
15 | 5 |
% my $status = stash('status') || ''; |
16 | 6 |
% if ($class eq 'header') { |
17 | 7 |
<div class="border-bottom-gray padding5 bk-gray-light"> |