Refactor post preview attributes into one method
This commit is contained in:
@@ -14,7 +14,7 @@ class PostPresenter < Presenter
|
||||
|
||||
path = options[:path_prefix] || "/posts"
|
||||
|
||||
html = %{<article class="#{preview_class(post)}" id="post_#{post.id}" data-id="#{post.id}" data-tags="#{h(post.tag_string)}" data-uploader="#{h(post.uploader_name)}" data-rating="#{post.rating}" data-width="#{post.image_width}" data-height="#{post.image_height}" data-flags="#{post.status_flags}" data-parent-id="#{post.parent_id}" data-has-children="#{post.has_children?}" data-score="#{post.score}" data-fav-count="#{post.fav_count}">}
|
||||
html = %{<article class="#{preview_class(post)}" #{preview_attributes(post)}>}
|
||||
if options[:tags].present?
|
||||
tag_param = "?tags=#{CGI::escape(options[:tags])}"
|
||||
elsif options[:pool_id]
|
||||
@@ -39,6 +39,23 @@ class PostPresenter < Presenter
|
||||
klass
|
||||
end
|
||||
|
||||
def self.preview_attributes(post)
|
||||
%{
|
||||
id="post_#{post.id}"
|
||||
data-id="#{post.id}"
|
||||
data-tags="#{h(post.tag_string)}"
|
||||
data-uploader="#{h(post.uploader_name)}"
|
||||
data-rating="#{post.rating}"
|
||||
data-width="#{post.image_width}"
|
||||
data-height="#{post.image_height}"
|
||||
data-flags="#{post.status_flags}"
|
||||
data-parent-id="#{post.parent_id}"
|
||||
data-has-children="#{post.has_children?}"
|
||||
data-score="#{post.score}"
|
||||
data-fav-count="#{post.fav_count}"
|
||||
}.html_safe
|
||||
end
|
||||
|
||||
def initialize(post)
|
||||
@post = post
|
||||
end
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<div class="comments-for-post">
|
||||
<div class="list-of-comments">
|
||||
<% @comments.each do |comment| %>
|
||||
<div class="post <%= PostPresenter.preview_class(comment.post) %>" data-tags="<%= comment.post.tag_string %>" data-uploader="<%= comment.post.uploader_name %>" data-rating="<%= comment.post.rating %>" data-flags="<%= comment.post.status %>" data-score="<%= comment.post.score %>" data-fav-count="<%= comment.post.fav_count %>" data-parent-id="<%= comment.post.parent_id %>" data-has-children="<%= comment.post.has_children? %>">
|
||||
<div class="post <%= PostPresenter.preview_class(comment.post) %>" <%= PostPresenter.preview_attributes(comment.post) %>>
|
||||
<div class="preview">
|
||||
<%= link_to(image_tag(comment.post.preview_file_url), post_path(comment.post)) %>
|
||||
</div>
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
<% end %>
|
||||
|
||||
<% @posts.select {|x| Danbooru.config.can_user_see_post?(CurrentUser.user, x)}.each do |post| %>
|
||||
<div class="post <%= PostPresenter.preview_class(post) %>" data-tags="<%= post.tag_string %>" data-uploader="<%= post.uploader_name %>" data-rating="<%= post.rating %>" data-flags="<%= post.status %>" data-score="<%= post.score %>" data-fav-count="<%= post.fav_count %>" data-parent-id="<%= post.parent_id %>" data-has-children="<%= post.has_children? %>" data-id="<%= post.id %>" data-width="<%= post.image_width %>" data-height="<%= post.image_height %>">
|
||||
<div class="post <%= PostPresenter.preview_class(post) %>" <%= PostPresenter.preview_attributes(post) %>>
|
||||
<div class="preview">
|
||||
<%= link_to(image_tag(post.preview_file_url), post_path(post)) %>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user