Move more logic to the helper modules
- Diff view changes -- Only show pool description changes in diff view -- Conditionally render diff link when applicable values are changed -- Conditionally show diff view sections when values are changed - Show renames on index view -- There is plenty of space -- This wasn't shown at all for wikis -- Having to navigate to an alternate page is unwieldy for pools - Show "posts" as a status on pools -- This is so all changes among versions are quantified as a status - Standardize diff/index titles
This commit is contained in:
31
app/helpers/pool_versions_helper.rb
Normal file
31
app/helpers/pool_versions_helper.rb
Normal file
@@ -0,0 +1,31 @@
|
||||
module PoolVersionsHelper
|
||||
def pool_version_show_diff(pool_version)
|
||||
previous = pool_version.previous
|
||||
previous.present? && pool_version.description != previous.description
|
||||
end
|
||||
|
||||
def pool_version_name_diff(pool_version)
|
||||
previous = pool_version.previous
|
||||
if previous.present? && (pool_version.name != previous.name)
|
||||
name_diff = diff_name_html(pool_version.pretty_name, previous.pretty_name)
|
||||
%(<br><br><b>Rename:</b><br> #{name_diff}</p>).html_safe
|
||||
else
|
||||
""
|
||||
end
|
||||
end
|
||||
|
||||
def pool_version_post_diff(pool_version)
|
||||
previous = pool_version.previous
|
||||
diff = {}
|
||||
|
||||
if previous.present?
|
||||
diff[:added_post_ids] = pool_version.post_ids - previous.post_ids
|
||||
diff[:removed_post_ids] = previous.post_ids - pool_version.post_ids
|
||||
else
|
||||
diff[:added_post_ids] = pool_version.added_post_ids
|
||||
diff[:removed_post_ids] = pool_version.removed_post_ids
|
||||
end
|
||||
|
||||
render "pool_versions/diff", diff: diff
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user