From a048a704cbf5389513f79f8a3b64073c8cf24ca4 Mon Sep 17 00:00:00 2001 From: evazion Date: Tue, 29 Nov 2022 20:52:19 -0600 Subject: [PATCH] uploads: add reverse image search links to upload page. On the upload page, change the file size info beneath the image to be formatted the same way as on the media assets page, and to include a menu with links to offsite reverse image search tools. --- .../uploads/_single_asset_upload.html.erb | 68 +++++++++++++++++-- 1 file changed, 61 insertions(+), 7 deletions(-) diff --git a/app/views/uploads/_single_asset_upload.html.erb b/app/views/uploads/_single_asset_upload.html.erb index 0a5d86e09..b6ddd9b4b 100644 --- a/app/views/uploads/_single_asset_upload.html.erb +++ b/app/views/uploads/_single_asset_upload.html.erb @@ -25,14 +25,68 @@
<%= render MediaAssetComponent.new(media_asset: media_asset, current_user: CurrentUser.user) %> -

- Size - <%= link_to media_asset.variant(:original).file_url do %> - <%= number_to_human_size(media_asset.file_size) %> .<%= media_asset.file_ext %> +

+ <% if media_asset.source_urls.present? %> + + <% media_asset.source_urls.take(5).each do |url| %> + <%= external_link_to url, external_site_icon(Source::URL.site_name(url), class: "h-4"), title: url, class: "inline-block align-top" %> + <% end %> + <% end %> - (<%= media_asset.image_width %>x<%= media_asset.image_height %>) - <%= link_to "ยป", media_asset_path(media_asset) %> -

+ + <%= link_to media_asset do %> + <%= number_to_human_size(media_asset.file_size) %> .<%= media_asset.file_ext %>, + <%= media_asset.image_width %>x<%= media_asset.image_height %> + + <% if media_asset.duration.present? %> + (<%= duration_to_hhmmss(media_asset.duration) %>) + <% end %> + <% end %> + + + <%= render PopupMenuComponent.new(hide_on_click: false) do |menu| %> + <% menu.item(hide_on_click: true) do %> + <%= link_to "#{media_asset.original.file_url}?download=1", download: media_asset.original.file_name do %> + <%= download_icon %> Download + <% end %> + <% end %> + + <% menu.item do %> +
+ <% end %> + + <% menu.item do %> + <%= external_link_to "https://saucenao.com/search.php?url=#{CGI.escape(media_asset.original.file_url)}", target: "_blank" do %> + <%= search_icon %> SauceNAO + <% end %> + <% end %> + + <% menu.item do %> + <%= external_link_to "https://yandex.com/images/search?rpt=imageview&url=#{CGI.escape(media_asset.original.file_url)}", target: "_blank" do %> + <%= search_icon %> Yandex + <% end %> + <% end %> + + <% menu.item do %> + <%= external_link_to "https://lens.google.com/uploadbyurl?url=#{CGI.escape(media_asset.original.file_url)}", target: "_blank" do %> + <%= search_icon %> Google + <% end %> + <% end %> + + <% menu.item do %> + <%= external_link_to "https://www.bing.com/images/searchbyimage?cbir=sbi&imgurl=#{CGI.escape(media_asset.original.file_url)}", target: "_blank" do %> + <%= search_icon %> Bing + <% end %> + <% end %> + + <% menu.item do %> + <%= link_to iqdb_queries_path(search: { media_asset_id: media_asset.id }), target: "_blank" do %> + <%= search_icon %> <%= Danbooru.config.app_name %> + <% end %> + <% end %> + <% end %> +
+
<%= render "uploads/related_posts", source: upload_media_asset.source_extractor %>