media assets: add thumbnail view to /media_assets page.
Add a thumbnail view to the /media_assets page. This page lets you see all images uploaded to Danbooru by all users (although you can't see who the uploader is). Also add a link to this page in the subnav bar on the upload page.
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
|
||||
<div id="c-iqdb-queries">
|
||||
<div id="a-check">
|
||||
<h1>Similar Images Search</h1>
|
||||
<h1>Reverse Images Search</h1>
|
||||
<section>
|
||||
<p>Paste a URL or upload a file to perform a reverse image search on <%= Danbooru.config.app_name %>.</p>
|
||||
|
||||
@@ -19,3 +19,5 @@
|
||||
<%= render "iqdb_queries/matches" %>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<%= render "uploads/secondary_links" %>
|
||||
|
||||
15
app/views/media_assets/_gallery.html.erb
Normal file
15
app/views/media_assets/_gallery.html.erb
Normal file
@@ -0,0 +1,15 @@
|
||||
<%= render(MediaAssetGalleryComponent.new) do |gallery| %>
|
||||
<% @media_assets.each do |media_asset| %>
|
||||
<% if policy(media_asset).can_see_image? %>
|
||||
<% gallery.media_asset(media_asset: media_asset, size: gallery.size, link_target: media_asset) do |preview| %>
|
||||
<% preview.footer do %>
|
||||
<div class="text-center text-xs h-8">
|
||||
<% if media_asset.post.present? %>
|
||||
<%= link_to "post ##{media_asset.post.id}", media_asset.post %>
|
||||
<% end %>
|
||||
</div>
|
||||
<% end %>
|
||||
<% end %>
|
||||
<% end %>
|
||||
<% end %>
|
||||
<% end %>
|
||||
20
app/views/media_assets/_table.html.erb
Normal file
20
app/views/media_assets/_table.html.erb
Normal file
@@ -0,0 +1,20 @@
|
||||
<%= table_for @media_assets, class: "striped autofit" do |t| %>
|
||||
<% t.column "File", td: { class: "text-center" } do |media_asset| %>
|
||||
<% if policy(media_asset).can_see_image? %>
|
||||
<%= render MediaAssetPreviewComponent.new(media_asset: media_asset, save_data: CurrentUser.save_data, shrink_to_fit: false) %>
|
||||
<% end %>
|
||||
<% end %>
|
||||
|
||||
<% t.column :image_width %>
|
||||
<% t.column :image_height %>
|
||||
<% t.column :file_size %>
|
||||
<% t.column :file_ext %>
|
||||
|
||||
<% t.column "Metadata" do |media_asset| %>
|
||||
<%= link_to pluralize(media_asset.metadata.size, "tags"), media_asset %>
|
||||
<% end %>
|
||||
|
||||
<% t.column "Created" do |media_asset| %>
|
||||
<%= time_ago_in_words_tagged(media_asset.created_at) %>
|
||||
<% end %>
|
||||
<% end %>
|
||||
@@ -1,42 +1,27 @@
|
||||
<div id="c-media-assets">
|
||||
<div id="a-index">
|
||||
<%= search_form_for(media_assets_path) do |f| %>
|
||||
<%= f.input :md5, input_html: { value: params[:search][:md5] } %>
|
||||
<%= f.input :image_width, input_html: { value: params[:search][:image_width] } %>
|
||||
<%= f.input :image_height, input_html: { value: params[:search][:image_height] } %>
|
||||
<%= f.input :file_size, input_html: { value: params[:search][:file_size] } %>
|
||||
<%= f.input :file_ext, input_html: { value: params[:search][:file_ext] } %>
|
||||
<h1>All Uploads</h1>
|
||||
|
||||
<%= f.simple_fields_for :metadata do |meta| %>
|
||||
<% params.dig(:search, :metadata).to_h.each do |key, value| %>
|
||||
<%= meta.input key, label: key, input_html: { value: value } %>
|
||||
<% if params[:search].present? %>
|
||||
<%= search_form_for(media_assets_path) do |f| %>
|
||||
<%= f.simple_fields_for :metadata do |meta| %>
|
||||
<% params.dig(:search, :metadata).to_h.each do |key, value| %>
|
||||
<%= meta.input key, label: key, input_html: { value: value } %>
|
||||
<% end %>
|
||||
<% end %>
|
||||
<% end %>
|
||||
|
||||
<%= f.submit "Search" %>
|
||||
<%= f.submit "Search" %>
|
||||
<% end %>
|
||||
<% end %>
|
||||
|
||||
<%= table_for @media_assets, class: "striped autofit" do |t| %>
|
||||
<% t.column "File", td: { class: "text-center" } do |media_asset| %>
|
||||
<% if policy(media_asset).can_see_image? %>
|
||||
<%= render MediaAssetPreviewComponent.new(media_asset: media_asset, save_data: CurrentUser.save_data, shrink_to_fit: false) %>
|
||||
<% end %>
|
||||
<% end %>
|
||||
|
||||
<% t.column :image_width %>
|
||||
<% t.column :image_height %>
|
||||
<% t.column :file_size %>
|
||||
<% t.column :file_ext %>
|
||||
|
||||
<% t.column "Metadata" do |media_asset| %>
|
||||
<%= link_to pluralize(media_asset.metadata.size, "tags"), media_asset %>
|
||||
<% end %>
|
||||
|
||||
<% t.column "Created" do |media_asset| %>
|
||||
<%= time_ago_in_words_tagged(media_asset.created_at) %>
|
||||
<% end %>
|
||||
<% if params[:mode] == "table" %>
|
||||
<%= render "media_assets/table" %>
|
||||
<% else %>
|
||||
<%= render "media_assets/gallery" %>
|
||||
<% end %>
|
||||
|
||||
<%= numbered_paginator(@media_assets) %>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<%= render "uploads/secondary_links" %>
|
||||
|
||||
@@ -30,3 +30,5 @@
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<%= render "uploads/secondary_links" %>
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
<% content_for(:secondary_links) do %>
|
||||
<%= subnav_link_to "My Uploads", uploads_path %>
|
||||
<%= subnav_link_to "New Upload", new_upload_path %>
|
||||
<%= subnav_link_to "Batch Upload", batch_uploads_path %>
|
||||
<%= subnav_link_to "Reverse Image Search", iqdb_queries_path %>
|
||||
<%= subnav_link_to "Batch Upload", batch_uploads_path %> |
|
||||
<%= subnav_link_to "My Uploads", uploads_path %>
|
||||
<%= subnav_link_to "All Uploads", media_assets_path %>
|
||||
<%= subnav_link_to "Reverse Image Search", iqdb_queries_path %> |
|
||||
<%= subnav_link_to "Help", wiki_page_path("help:upload") %>
|
||||
<% end %>
|
||||
|
||||
Reference in New Issue
Block a user