fix view only download

This commit is contained in:
Pete Matsyburka
2026-08-10 12:06:42 +03:00
parent dd358a8401
commit 97d91d8f27
@@ -10,14 +10,11 @@ class SubmitFormCompletedDownloadController < ApplicationController
def index
@submitter = Submitter.find_signed(params[:sig], purpose: :download_completed) if params[:sig].present?
signature_valid =
if @submitter&.slug == submitter_slug
true
else
@submitter = nil
end
signature_valid = @submitter&.slug == submitter_slug
@submitter ||= Submitter.completed.find_by!(slug: submitter_slug)
@submitter = Submitter.find_by!(slug: submitter_slug) unless signature_valid
return head :not_found unless completed_submitter?(@submitter)
Submissions::EnsureResultGenerated.call(@submitter) if @submitter.completed_at?
@@ -60,6 +57,10 @@ class SubmitFormCompletedDownloadController < ApplicationController
end
end
def completed_submitter?(submitter)
submitter.completed_at? || (submitter.viewer? && submitter.submission.completed_at?)
end
def current_user_submitter?(submitter)
current_user && current_ability.can?(:read, submitter)
end