1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
|
# frozen_string_literal: true
class Groups::UploadsController < Groups::ApplicationController
include UploadsActions
include WorkhorseRequest
skip_before_action :group, if: -> { action_name == 'show' && embeddable? }
before_action :authorize_upload_file!, only: [:create, :authorize]
before_action :verify_workhorse_api!, only: [:authorize]
before_action :disallow_new_uploads!, only: :show
feature_category :portfolio_management
urgency :low, [:show]
private
# Starting with this version, #show is handled by Banzai::UploadsController#show
def disallow_new_uploads!
render_404 if upload_version_at_least?(ID_BASED_UPLOAD_PATH_VERSION)
end
def upload_model_class
Group
end
def uploader_class
NamespaceFileUploader
end
def find_model
return @group if @group
group_id = params[:group_id]
Group.find_by_full_path(group_id)
end
def authorize_upload_file!
render_404 unless can?(current_user, :upload_file, group)
end
end
|