diff --git a/app/javascript/form.js b/app/javascript/form.js index 6513a001..662f47c4 100644 --- a/app/javascript/form.js +++ b/app/javascript/form.js @@ -15,7 +15,7 @@ window.customElements.define('submission-form', class extends HTMLElement { goToLast: this.dataset.goToLast === 'true', isDemo: this.dataset.isDemo === 'true', attribution: this.dataset.attribution !== 'false', - withConfetti: true, + withConfetti: this.dataset.withConfetti !== 'false', withTypedSignature: this.dataset.withTypedSignature !== 'false', values: reactive(JSON.parse(this.dataset.values)), completedButton: JSON.parse(this.dataset.completedButton), diff --git a/app/models/account_config.rb b/app/models/account_config.rb index daaa8058..fdbaa1b9 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' SUBMITTER_REMAILERS = 'submitter_reminders' FORM_COMPLETED_BUTTON_KEY = 'form_completed_button' + FORM_WITH_CONFETTI_KEY = 'form_with_confetti' ESIGNING_PREFERENCE_KEY = 'esigning_preference' DEFAULT_VALUES = { diff --git a/app/views/submit_form/_submission_form.html.erb b/app/views/submit_form/_submission_form.html.erb index 34d54a0d..ededd663 100644 --- a/app/views/submit_form/_submission_form.html.erb +++ b/app/views/submit_form/_submission_form.html.erb @@ -1,4 +1,4 @@ <% data_attachments = attachments_index.values.select { |e| e.record_id == submitter.id }.to_json(only: %i[uuid], methods: %i[url filename content_type]) %> <% data_fields = (submitter.submission.template_fields || submitter.submission.template.fields).select { |f| f['submitter_uuid'] == submitter.uuid }.to_json %> <% configs = Submitters::FormConfigs.call(submitter) %> - + diff --git a/lib/submitters/form_configs.rb b/lib/submitters/form_configs.rb index d5f69e7b..95a85378 100644 --- a/lib/submitters/form_configs.rb +++ b/lib/submitters/form_configs.rb @@ -7,13 +7,15 @@ module Submitters def call(submitter) configs = submitter.submission.template.account.account_configs .where(key: [AccountConfig::FORM_COMPLETED_BUTTON_KEY, + AccountConfig::FORM_WITH_CONFETTI_KEY, AccountConfig::ALLOW_TYPED_SIGNATURE]) completed_button = configs.find { |e| e.key == AccountConfig::FORM_COMPLETED_BUTTON_KEY }&.value || {} with_typed_signature = configs.find { |e| e.key == AccountConfig::ALLOW_TYPED_SIGNATURE }&.value != false + with_confetti = configs.find { |e| e.key == AccountConfig::FORM_WITH_CONFETTI_KEY }&.value != false - { completed_button:, with_typed_signature: } + { completed_button:, with_typed_signature:, with_confetti: } end end end