uploads: refactor /uploads/:id page for multi-file uploads.
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
|
||||
class ApplicationController < ActionController::Base
|
||||
include Pundit
|
||||
helper_method :search_params
|
||||
helper_method :search_params, :permitted_attributes
|
||||
|
||||
self.responder = ApplicationResponder
|
||||
|
||||
|
||||
@@ -65,7 +65,7 @@ class PostsController < ApplicationController
|
||||
|
||||
def create
|
||||
@upload_media_asset = UploadMediaAsset.find(params[:upload_media_asset_id])
|
||||
@post = authorize Post.new_from_upload(@upload_media_asset.upload, @upload_media_asset.media_asset, **permitted_attributes(Post).to_h.symbolize_keys)
|
||||
@post = authorize Post.new_from_upload(@upload_media_asset, **permitted_attributes(Post).to_h.symbolize_keys)
|
||||
@post.save_if_unique(:md5)
|
||||
|
||||
if @post.errors.none?
|
||||
|
||||
@@ -39,14 +39,8 @@ class UploadsController < ApplicationController
|
||||
|
||||
def show
|
||||
@upload = authorize Upload.find(params[:id])
|
||||
@upload_media_asset = @upload.upload_media_assets.first
|
||||
@media_asset = @upload_media_asset&.media_asset
|
||||
|
||||
@post = Post.new_from_upload(@upload, @media_asset, source: @upload.source, **permitted_attributes(Post).to_h.symbolize_keys)
|
||||
@post.tag_string = "#{@post.tag_string} #{@upload.source_strategy&.artists.to_a.map(&:tag).map(&:name).join(" ")}".strip
|
||||
@post.tag_string += " " if @post.tag_string.present?
|
||||
|
||||
if request.format.html? && @upload.is_completed? && @upload.media_assets.first&.post.present?
|
||||
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}"
|
||||
redirect_to @upload.media_assets.first.post
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user