From 28b583691f9ade3ebe4db3a9037e0783ae475006 Mon Sep 17 00:00:00 2001 From: Pete Matsyburka Date: Fri, 6 Jun 2025 16:23:44 +0300 Subject: [PATCH] partial download toggle --- .../submit_form_download_controller.rb | 5 +++- app/models/account_config.rb | 1 + app/views/submit_form/show.html.erb | 22 ++++++++------- lib/submitters/form_configs.rb | 27 ++++++++++--------- 4 files changed, 31 insertions(+), 24 deletions(-) diff --git a/app/controllers/submit_form_download_controller.rb b/app/controllers/submit_form_download_controller.rb index 574d520a..d357019c 100644 --- a/app/controllers/submit_form_download_controller.rb +++ b/app/controllers/submit_form_download_controller.rb @@ -14,7 +14,10 @@ class SubmitFormDownloadController < ApplicationController return head :unprocessable_entity if @submitter.declined_at? || @submitter.submission.archived_at? || @submitter.submission.expired? || - @submitter.submission.template&.archived_at? + @submitter.submission.template&.archived_at? || + AccountConfig.exists?(account_id: @submitter.account_id, + key: AccountConfig::ALLOW_TO_PARTIAL_DOWNLOAD_KEY, + value: false) last_completed_submitter = @submitter.submission.submitters .where.not(id: @submitter.id) diff --git a/app/models/account_config.rb b/app/models/account_config.rb index d573ad0f..3fbfe20a 100644 --- a/app/models/account_config.rb +++ b/app/models/account_config.rb @@ -29,6 +29,7 @@ class AccountConfig < ApplicationRecord ALLOW_TYPED_SIGNATURE = 'allow_typed_signature' ALLOW_TO_RESUBMIT = 'allow_to_resubmit' ALLOW_TO_DECLINE_KEY = 'allow_to_decline' + ALLOW_TO_PARTIAL_DOWNLOAD_KEY = 'allow_to_partial_download' SUBMITTER_REMINDERS = 'submitter_reminders' ENFORCE_SIGNING_ORDER_KEY = 'enforce_signing_order' FORM_COMPLETED_BUTTON_KEY = 'form_completed_button' diff --git a/app/views/submit_form/show.html.erb b/app/views/submit_form/show.html.erb index 2a9f0dc7..bdd5351f 100644 --- a/app/views/submit_form/show.html.erb +++ b/app/views/submit_form/show.html.erb @@ -24,16 +24,18 @@ <% end %> <% end %> - - - <%= svg_icon('download', class: 'w-6 h-6 inline md:hidden') %> - - - - + <% if @form_configs[:with_partial_download] %> + + + <%= svg_icon('download', class: 'w-6 h-6 inline md:hidden') %> + + + + + <% end %>