uploads: allow changing thumbnail size on My Uploads / All Uploads pages.

* Add a "Size" menu to the My Uploads / All Uploads pages to allow
  changing the thumbnail size.
* Make the My Uploads / All Uploads pages use the same thumbnail size as
  the post index page.
* Change the "Gallery | Table" links on the My Uploads page to icons.
This commit is contained in:
evazion
2022-02-16 14:11:02 -06:00
parent f890e8595e
commit 0b8d042c06
19 changed files with 127 additions and 91 deletions

View File

@@ -35,6 +35,7 @@ class UploadsController < ApplicationController
@defaults[:uploader_id] = params[:user_id]
@defaults[:status] = "completed" if request.format.html?
@limit = params.fetch(:limit, CurrentUser.user.per_page).to_i.clamp(0, PostSets::Post::MAX_PER_PAGE)
@preview_size = params[:size].presence || cookies[:post_preview_size].presence || MediaAssetGalleryComponent::DEFAULT_SIZE
@uploads = authorize Upload.visible(CurrentUser.user).paginated_search(params, limit: @limit, count_pages: true, defaults: @defaults)
@uploads = @uploads.includes(:uploader, media_assets: :post, upload_media_assets: { media_asset: :post }) if request.format.html?
@@ -44,6 +45,7 @@ class UploadsController < ApplicationController
def show
@upload = authorize Upload.find(params[:id])
@preview_size = params[:size].presence || cookies[:post_preview_size].presence || MediaAssetGalleryComponent::DEFAULT_SIZE
if request.format.html? && @upload.media_asset_count == 1 && @upload.media_assets.first&.post.present?
flash[:notice] = "Duplicate of post ##{@upload.media_assets.first.post.id}"