diff --git a/app/controllers/api/submissions_controller.rb b/app/controllers/api/submissions_controller.rb index dd1f8e52..daf9eceb 100644 --- a/app/controllers/api/submissions_controller.rb +++ b/app/controllers/api/submissions_controller.rb @@ -170,7 +170,7 @@ module Api :completed, :phone, :application_key, :external_id, :reply_to, { metadata: {}, values: {}, readonly_fields: [], message: %i[subject body], fields: [:name, :uuid, :default_value, :title, :description, - :readonly, :validation_pattern, :invalid_message, + :readonly, :redacted, :validation_pattern, :invalid_message, { default_value: [] }] }]] } ] diff --git a/app/controllers/api/submitters_controller.rb b/app/controllers/api/submitters_controller.rb index bc715a6e..d36ee051 100644 --- a/app/controllers/api/submitters_controller.rb +++ b/app/controllers/api/submitters_controller.rb @@ -76,7 +76,7 @@ module Api :send_email, :send_sms, :reply_to, :completed_redirect_url, :uuid, :name, :email, :role, :completed, :phone, :application_key, :external_id, { metadata: {}, values: {}, readonly_fields: [], message: %i[subject body], - fields: [[:name, :uuid, :default_value, :readonly, :validation_pattern, :invalid_message, + fields: [[:name, :uuid, :default_value, :readonly, :redacted, :validation_pattern, :invalid_message, { default_value: [] }]] } ) end diff --git a/app/views/submit_form/show.html.erb b/app/views/submit_form/show.html.erb index 74138eff..efe2820e 100644 --- a/app/views/submit_form/show.html.erb +++ b/app/views/submit_form/show.html.erb @@ -24,6 +24,7 @@ <% value = values[field['uuid']].presence || (field['default_value'].present? ? Submitters::SubmitValues.template_default_value_for_submitter(field['default_value'], @submitter.submission.submitters.find { |e| e.uuid == field['submitter_uuid'] }, with_time: false) : nil) %> <% next if value.blank? %> <% next if !field['readonly'] && field['submitter_uuid'] == @submitter.uuid %> + <% next if field['redacted'] && field['submitter_uuid'] != @submitter.uuid %> <% next if value == '{{date}}' && field['submitter_uuid'] != @submitter.uuid %> <% next if field.dig('preferences', 'formula') && field['submitter_uuid'] == @submitter.uuid %> <%= render 'submissions/value', area:, field:, attachments_index:, value:, locale: @submitter.account.locale, timezone: @submitter.account.timezone %> diff --git a/lib/submissions/create_from_submitters.rb b/lib/submissions/create_from_submitters.rb index b62dfae6..bbadada6 100644 --- a/lib/submissions/create_from_submitters.rb +++ b/lib/submissions/create_from_submitters.rb @@ -119,6 +119,7 @@ module Submissions field['title'] = attrs['title'] if attrs['title'].present? field['description'] = attrs['description'] if attrs['description'].present? field['readonly'] = attrs['readonly'] if attrs.key?('readonly') + field['redacted'] = attrs['redacted'] if attrs.key?('redacted') field['required'] = attrs['required'] if attrs.key?('required') if attrs.key?('default_value') && !field['type'].in?(%w[signature image initials file])