This commit is contained in:
Toks
2015-04-15 11:29:15 -04:00
parent 5eb1b1da75
commit ad8e16aabf
3 changed files with 39 additions and 0 deletions

View File

@@ -0,0 +1,30 @@
module NoteVersionsHelper
def note_version_body_diff_info(note_version)
previous = note_version.previous
if previous.nil?
return ""
end
html = ""
if note_version.body == previous.body
html += '<span class="inactive">(body not changed)</span>'
end
html.html_safe
end
def note_version_position_diff(note_version)
previous = note_version.previous
html = "#{note_version.width}x#{note_version.height}"
html += " #{note_version.x},#{note_version.y}"
if previous.nil?
html
elsif note_version.x == previous.x && note_version.y == previous.y && note_version.width == previous.width && note_version.height == previous.height
html
else
html = '<span style="text-decoration: underline;">' + html + '</span>'
html.html_safe
end
end
end

View File

@@ -28,6 +28,10 @@ class NoteVersion < ActiveRecord::Base
self.updater_ip_addr = CurrentUser.ip_addr
end
def previous
NoteVersion.where("note_id = ? and created_at < ?", note_id, created_at).order("created_at desc").first
end
def updater_name
User.id_to_name(updater_id)
end

View File

@@ -9,6 +9,7 @@
<th width="5%">Post</th>
<th width="5%">Note</th>
<th>Body</th>
<th width="5%">Position</th>
<% if CurrentUser.is_janitor? %>
<th width="10%">IP Address</th>
<% end %>
@@ -30,6 +31,10 @@
<% unless note_version.is_active? %>
<span class="inactive">(deleted)</span>
<% end %>
<%= note_version_body_diff_info(note_version) %>
</td>
<td>
<%= note_version_position_diff(note_version) %>
</td>
<% if CurrentUser.is_janitor? %>
<td>