OpenProject is the leading open source project management software.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
openproject/app/views/repositories/diff.rhtml

67 lines
1.5 KiB

<h2><%= l(:label_revision) %> <%= @rev %>: <%= @path.gsub(/^.*\//, '') %></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 %>