Redmine/app/views/repositories/diff.rhtml

68 lines
1.6 KiB
Plaintext

<h2><%= render :partial => 'navigation', :locals => { :path => @path, :kind => 'file', :revision => @rev } %></h2>
<% parsing = false
line_num_l = 0
line_num_r = 0 %>
<% @diff.each do |line| %>
<%
if line =~ /^Index: (.*)$/
if parsing %>
</tbody></table>
<%
end
parsing = false %>
<table class="list"><thead>
<tr><th colspan="3" class="list-filename"><%= l(:label_attachment) %>: <%= $1 %></th></tr>
<tr><th>@<%= @rev %></th><th>@<%= @rev_to %></th><th></th></tr>
</thead><tbody>
<%
next
elsif line =~ /^@@ (\+|\-)(\d+)(,\d+)? (\+|\-)(\d+)(,\d+)? @@/
line_num_l = $2.to_i
line_num_r = $5.to_i
parsing = true
next
elsif line =~ /^_+$/
# We have reached the 'Properties' section.
parsing = false
next
end
next unless parsing
%>
<tr>
<% case line[0, 1]
when " " %>
<th class="line-num"><%= line_num_l %></th>
<th class="line-num"><%= line_num_r %></th>
<td class="line-code">
<% line_num_l = line_num_l + 1
line_num_r = line_num_r + 1
when "-" %>
<th class="line-num"></th>
<th class="line-num"><%= line_num_r %></th>
<td class="line-code" style="background: #fdd;">
<% line_num_r = line_num_r + 1
when "+" %>
<th class="line-num"><%= line_num_l %></th>
<th class="line-num"></th>
<td class="line-code" style="background: #dfd;">
<% line_num_l = line_num_l + 1
else
next
end %>
<%= h(line[1..-1]).gsub(/\s/, "&nbsp;") %></td></tr>
<% end %>
</tbody>
</table>
<% content_for :header_tags do %>
<%= stylesheet_link_tag "scm" %>
<% end %>