From 379775d10d52549f9216ca654e07264c2273e449 Mon Sep 17 00:00:00 2001 From: evazion Date: Thu, 16 Dec 2021 15:48:07 -0600 Subject: [PATCH] Remove HTML data attributes from thumbnails #4943 Remove most data attributes from thumbnails, except the ones used by our own Javascript. --- app/components/post_preview_component.rb | 24 +----------------------- app/helpers/posts_helper.rb | 23 +++++++++++++++++++++++ app/views/posts/show.html.erb | 2 +- 3 files changed, 25 insertions(+), 24 deletions(-) diff --git a/app/components/post_preview_component.rb b/app/components/post_preview_component.rb index 725763559..9f2de839d 100644 --- a/app/components/post_preview_component.rb +++ b/app/components/post_preview_component.rb @@ -90,36 +90,14 @@ class PostPreviewComponent < ApplicationComponent end def data_attributes - attributes = { + { "data-id" => post.id, - "data-has-sound" => has_sound?, "data-tags" => post.tag_string, - "data-approver-id" => post.approver_id, "data-rating" => post.rating, - "data-large-width" => post.large_image_width, - "data-large-height" => post.large_image_height, - "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, - "data-pixiv-id" => post.pixiv_id, - "data-file-ext" => post.file_ext, - "data-source" => post.source, "data-uploader-id" => post.uploader_id, - "data-normalized-source" => post.normalized_source, } - - if post.visible?(current_user) - attributes["data-md5"] = post.md5 - attributes["data-file-url"] = post.file_url - attributes["data-large-file-url"] = post.large_file_url - attributes["data-preview-file-url"] = post.preview_file_url - end - - attributes end def has_sound? diff --git a/app/helpers/posts_helper.rb b/app/helpers/posts_helper.rb index a759d02e3..8ae733097 100644 --- a/app/helpers/posts_helper.rb +++ b/app/helpers/posts_helper.rb @@ -43,4 +43,27 @@ module PostsHelper def is_danbirthday?(post) post.id == 1 && post.created_at.strftime("%m-%d") == Time.zone.today.strftime("%m-%d") end + + def image_container_data_attributes(post, current_user) + attributes = { + "data-id" => post.id, + "data-tags" => post.tag_string, + "data-rating" => post.rating, + "data-large-width" => post.large_image_width, + "data-large-height" => post.large_image_height, + "data-width" => post.image_width, + "data-height" => post.image_height, + "data-flags" => post.status_flags, + "data-score" => post.score, + "data-uploader-id" => post.uploader_id, + "data-source" => post.source, + "data-normalized-source" => post.normalized_source, + } + + if post.visible?(current_user) + attributes["data-file-url"] = post.file_url + end + + attributes + end end diff --git a/app/views/posts/show.html.erb b/app/views/posts/show.html.erb index f23d3a8b6..810489a31 100644 --- a/app/views/posts/show.html.erb +++ b/app/views/posts/show.html.erb @@ -44,7 +44,7 @@ <%= render "posts/partials/show/notices", :post => @post %> - <%= tag.section class: ["image-container", "note-container", ("danbirthday" if is_danbirthday?(@post))], **PostPreviewComponent.new(post: @post).data_attributes do -%> + <%= tag.section class: ["image-container", "note-container", ("danbirthday" if is_danbirthday?(@post))], **image_container_data_attributes(@post, CurrentUser.user) do -%> <%= render "posts/partials/show/embedded", post: @post %>
<% end -%>