fixes #858
adds color coding to both urls and other names on artist versions
This commit is contained in:
@@ -286,7 +286,7 @@ div#c-posts {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
div#c-post-versions {
|
div#c-post-versions, div#c-artist-versions {
|
||||||
div#a-index {
|
div#a-index {
|
||||||
a {
|
a {
|
||||||
word-wrap: break-word
|
word-wrap: break-word
|
||||||
|
|||||||
@@ -1,2 +1,31 @@
|
|||||||
module ArtistVersionsHelper
|
module ArtistVersionsHelper
|
||||||
|
def artist_version_other_names_diff(artist_version)
|
||||||
|
diff = artist_version.other_names_diff(artist_version.previous)
|
||||||
|
html = []
|
||||||
|
diff[:added_names].each do |name|
|
||||||
|
html << '<ins>' + name + '</ins>'
|
||||||
|
end
|
||||||
|
diff[:removed_names].each do |name|
|
||||||
|
html << '<del>' + name + '</del>'
|
||||||
|
end
|
||||||
|
diff[:unchanged_names].each do |name|
|
||||||
|
html << '<span>' + name + '</span>'
|
||||||
|
end
|
||||||
|
return html.join(" ").html_safe
|
||||||
|
end
|
||||||
|
|
||||||
|
def artist_version_urls_diff(artist_version)
|
||||||
|
diff = artist_version.urls_diff(artist_version.previous)
|
||||||
|
html = []
|
||||||
|
diff[:added_urls].each do |url|
|
||||||
|
html << '<li><ins>' + url + '</ins></li>'
|
||||||
|
end
|
||||||
|
diff[:removed_urls].each do |url|
|
||||||
|
html << '<li><del>' + url + '</del></li>'
|
||||||
|
end
|
||||||
|
diff[:unchanged_urls].each do |url|
|
||||||
|
html << '<li><span>' + url + '</span></li>'
|
||||||
|
end
|
||||||
|
return html.join(" ").html_safe
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -27,6 +27,36 @@ class ArtistVersion < ActiveRecord::Base
|
|||||||
url_string.scan(/\S+/)
|
url_string.scan(/\S+/)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def other_names_array
|
||||||
|
other_names.scan(/\S+/)
|
||||||
|
end
|
||||||
|
|
||||||
|
def urls_diff(version)
|
||||||
|
new_urls = url_array
|
||||||
|
old_urls = version.present? ? version.url_array : []
|
||||||
|
|
||||||
|
return {
|
||||||
|
:added_urls => new_urls - old_urls,
|
||||||
|
:removed_urls => old_urls - new_urls,
|
||||||
|
:unchanged_urls => new_urls & old_urls,
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
|
def other_names_diff(version)
|
||||||
|
new_names = other_names_array
|
||||||
|
old_names = version.present? ? version.other_names_array : []
|
||||||
|
|
||||||
|
return {
|
||||||
|
:added_names => new_names - old_names,
|
||||||
|
:removed_names => old_names - new_names,
|
||||||
|
:unchanged_names => new_names & old_names,
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
|
def previous
|
||||||
|
ArtistVersion.where("artist_id = ? and updated_at < ?", artist_id, updated_at).order("updated_at desc").first
|
||||||
|
end
|
||||||
|
|
||||||
def updater_name
|
def updater_name
|
||||||
User.id_to_name(updater_id).tr("_", " ")
|
User.id_to_name(updater_id).tr("_", " ")
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -24,16 +24,14 @@
|
|||||||
<%= link_to artist_version.name, artist_versions_path(:search => {:artist_id => artist_version.artist_id}) %>
|
<%= link_to artist_version.name, artist_versions_path(:search => {:artist_id => artist_version.artist_id}) %>
|
||||||
</td>
|
</td>
|
||||||
<td><%= link_to "artist", artist_path(artist_version.artist) %></td>
|
<td><%= link_to "artist", artist_path(artist_version.artist) %></td>
|
||||||
<td><%= artist_version.other_names %></td>
|
<td><%= artist_version_other_names_diff(artist_version) %></td>
|
||||||
<td><%= artist_version.group_name %></td>
|
<td><%= artist_version.group_name %></td>
|
||||||
<td><%= compact_time artist_version.created_at %></td>
|
<td><%= compact_time artist_version.created_at %></td>
|
||||||
<td><%= link_to artist_version.updater_name, user_path(artist_version.updater_id) %></td>
|
<td><%= link_to artist_version.updater_name, user_path(artist_version.updater_id) %></td>
|
||||||
<td><%= artist_version.is_active? %></td>
|
<td><%= artist_version.is_active? %></td>
|
||||||
<td>
|
<td>
|
||||||
<ul>
|
<ul>
|
||||||
<% artist_version.url_array.each do |url| %>
|
<%= artist_version_urls_diff(artist_version) %>
|
||||||
<li><%= url %></li>
|
|
||||||
<% end %>
|
|
||||||
</ul>
|
</ul>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
|
|||||||
Reference in New Issue
Block a user