From ca8de23082765de53fe58212df87d2ea2a6b0798 Mon Sep 17 00:00:00 2001 From: Pete Matsyburka Date: Fri, 15 Nov 2024 22:17:55 +0200 Subject: [PATCH] use account archived at --- app/controllers/submissions_preview_controller.rb | 2 +- app/controllers/submit_form_controller.rb | 14 +++++++++++--- app/views/start_form/show.html.erb | 2 +- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/app/controllers/submissions_preview_controller.rb b/app/controllers/submissions_preview_controller.rb index 65b3fff3..e1bf4a81 100644 --- a/app/controllers/submissions_preview_controller.rb +++ b/app/controllers/submissions_preview_controller.rb @@ -20,7 +20,7 @@ class SubmissionsPreviewController < ApplicationController @submission ||= Submission.find_by!(slug: params[:slug]) - if !@submission.submitters.all?(&:completed_at?) && current_user.blank? + if @submission.account.archived_at? || (!@submission.submitters.all?(&:completed_at?) && current_user.blank?) raise ActionController::RoutingError, I18n.t('not_found') end diff --git a/app/controllers/submit_form_controller.rb b/app/controllers/submit_form_controller.rb index 621849eb..90343331 100644 --- a/app/controllers/submit_form_controller.rb +++ b/app/controllers/submit_form_controller.rb @@ -15,7 +15,9 @@ class SubmitFormController < ApplicationController submission = @submitter.submission return redirect_to submit_form_completed_path(@submitter.slug) if @submitter.completed_at? - return render :archived if submission.template.archived_at? || submission.archived_at? + return render :archived if submission.template.archived_at? || + submission.archived_at? || + @submitter.account.archived_at? return render :expired if submission.expired? return render :declined if @submitter.declined_at? return render :awaiting if submission.template.preferences['submitters_order'] == 'preserved' && @@ -25,8 +27,7 @@ class SubmitFormController < ApplicationController Submitters::MaybeUpdateDefaultValues.call(@submitter, current_user) - @attachments_index = ActiveStorage::Attachment.where(record: submission.submitters, name: :attachments) - .preload(:blob).index_by(&:uuid) + @attachments_index = build_attachments_index(submission) @form_configs = Submitters::FormConfigs.call(@submitter, CONFIG_KEYS) @@ -78,4 +79,11 @@ class SubmitFormController < ApplicationController end def success; end + + private + + def build_attachments_index(submission) + ActiveStorage::Attachment.where(record: submission.submitters, name: :attachments) + .preload(:blob).index_by(&:uuid) + end end diff --git a/app/views/start_form/show.html.erb b/app/views/start_form/show.html.erb index f96d67bf..b38ab33b 100644 --- a/app/views/start_form/show.html.erb +++ b/app/views/start_form/show.html.erb @@ -25,7 +25,7 @@ - <% unless @template.archived_at? %> + <% if !@template.archived_at? && !@template.account.archived_at? %> <%= form_for @submitter, url: start_form_path(@template.slug), data: { turbo_frame: :_top }, method: :put, html: { class: 'space-y-4' } do |f| %>
<%= f.label :email, t('email'), class: 'label' %>