uploads: autorefresh thumbnails on multi-file uploads page.

Automatically refresh thumbnails on the multi-file upload page as images
are processed in the background.
This commit is contained in:
evazion
2022-02-15 00:47:21 -06:00
parent 37075988ce
commit 36265dbff0
10 changed files with 32 additions and 10 deletions

View File

@@ -1,4 +1,4 @@
<%= render(MediaAssetGalleryComponent.new) do |gallery| %>
<%= render(MediaAssetGalleryComponent.new(classes: ["upload-media-asset-gallery"])) do |gallery| %>
<% upload_media_assets.each do |upload_media_asset| %>
<% gallery.media_asset do %>
<%= render "upload_media_assets/preview", upload_media_asset: upload_media_asset, size: gallery.size %>

View File

@@ -1,6 +1,6 @@
<% media_asset = upload_media_asset.media_asset %>
<%= render MediaAssetPreviewComponent.new(media_asset: media_asset, size: size, link_target: [upload_media_asset.upload, upload_media_asset]) do |preview| %>
<%= render MediaAssetPreviewComponent.new(media_asset: media_asset, size: size, link_target: [upload_media_asset.upload, upload_media_asset], classes: ["upload-media-asset-preview", ("upload-media-asset-loading" if upload_media_asset.loading?)], html: { "data-id": upload_media_asset.id }) do |preview| %>
<% preview.missing_image do %>
<% if upload_media_asset.failed? %>
Failed

View File

@@ -0,0 +1,3 @@
<% @upload_media_assets.each do |upload_media_asset| %>
$(".upload-media-asset-preview[data-id=<%= upload_media_asset.id %>]").replaceWith("<%= j render("upload_media_assets/preview", upload_media_asset: upload_media_asset, size: params.fetch(:size, 180)) %>");
<% end %>

View File

@@ -1,4 +1,4 @@
<%= render(MediaAssetGalleryComponent.new) do |gallery| %>
<%= render(MediaAssetGalleryComponent.new(classes: ["upload-media-asset-gallery"])) do |gallery| %>
<% upload.upload_media_assets.order(id: :asc).each do |upload_media_asset| %>
<% gallery.media_asset do %>
<%= render "upload_media_assets/preview", upload_media_asset: upload_media_asset, size: gallery.size %>