From 3811f8bbb8cd0036cc385322ccd1195932c82536 Mon Sep 17 00:00:00 2001 From: Pete Matsyburka Date: Tue, 23 Jun 2026 08:48:49 +0300 Subject: [PATCH] fix submission nil name --- app/mailers/submitter_mailer.rb | 2 +- app/views/start_form/completed.html.erb | 2 +- app/views/submissions/show.html.erb | 2 +- app/views/submissions_preview/completed.html.erb | 2 +- app/views/submit_form/archived.html.erb | 2 +- app/views/submit_form/awaiting.html.erb | 2 +- app/views/submit_form/completed.html.erb | 2 +- app/views/submit_form/declined.html.erb | 2 +- app/views/submit_form/delegated.html.erb | 2 +- app/views/submit_form/email_2fa.html.erb | 4 ++-- app/views/submit_form/expired.html.erb | 2 +- app/views/submit_form/show.html.erb | 4 ++-- app/views/submitter_mailer/completed_email.html.erb | 2 +- app/views/submitter_mailer/declined_email.html.erb | 2 +- app/views/submitter_mailer/documents_copy_email.html.erb | 4 ++-- app/views/submitter_mailer/invitation_email.html.erb | 2 +- app/views/submitter_mailer/otp_verification_email.html.erb | 2 +- app/views/templates/_submission.html.erb | 2 +- lib/submissions/generate_audit_trail.rb | 2 +- lib/submissions/generate_combined_attachment.rb | 2 +- lib/submissions/generate_preview_attachments.rb | 4 ++-- lib/submissions/generate_result_attachments.rb | 2 +- 22 files changed, 26 insertions(+), 26 deletions(-) diff --git a/app/mailers/submitter_mailer.rb b/app/mailers/submitter_mailer.rb index 6736c21d..d081a7b1 100644 --- a/app/mailers/submitter_mailer.rb +++ b/app/mailers/submitter_mailer.rb @@ -97,7 +97,7 @@ class SubmitterMailer < ApplicationMailer to: user.role == 'integration' ? user.friendly_name.sub(/\+\w+@/, '@') : user.friendly_name, reply_to: @submitter.friendly_name, subject: I18n.t(:name_declined_by_submitter, - name: (@submission.name || @submission.template.name).truncate(20), + name: (@submission.name || @submission.template&.name).to_s.truncate(20), submitter: @submitter.name || @submitter.email || @submitter.phone)) end end diff --git a/app/views/start_form/completed.html.erb b/app/views/start_form/completed.html.erb index e0f7a499..0f809b47 100644 --- a/app/views/start_form/completed.html.erb +++ b/app/views/start_form/completed.html.erb @@ -10,7 +10,7 @@ <%= svg_icon('writing_sign', class: 'w-10 h-10') %>
-

<%= @submitter.submission.template.name %>

+

<%= @submitter.submission.template&.name %>

<%= t(@submitter.with_signature_fields? ? 'signed_on_time' : 'completed_on_time', time: l(@submitter.completed_at.to_date, format: :long)) %>

diff --git a/app/views/submissions/show.html.erb b/app/views/submissions/show.html.erb index 94a25199..fdbe0350 100644 --- a/app/views/submissions/show.html.erb +++ b/app/views/submissions/show.html.erb @@ -12,7 +12,7 @@
<%= render 'submissions/logo' %> -

<% (@submission.name || @submission.template.name).split(/(_)/).each do |item| %><%= item %><% end %>

+

<% (@submission.name || @submission.template&.name).to_s.split(/(_)/).each do |item| %><%= item %><% end %>

<% is_all_completed = @submission.submitters.to_a.all?(&:completed_at?) %> diff --git a/app/views/submissions_preview/completed.html.erb b/app/views/submissions_preview/completed.html.erb index 60370a46..f844b618 100644 --- a/app/views/submissions_preview/completed.html.erb +++ b/app/views/submissions_preview/completed.html.erb @@ -11,7 +11,7 @@ <%= svg_icon('writing_sign', class: 'w-10 h-10') %>
-

<%= @submission.name || @submission.template.name %>

+

<%= @submission.name || @submission.template&.name %>

<% last_submitter = @submission.submitters.completed.order(:completed_at).last %> <% if last_submitter %>

diff --git a/app/views/submit_form/archived.html.erb b/app/views/submit_form/archived.html.erb index 7e59aece..35131534 100644 --- a/app/views/submit_form/archived.html.erb +++ b/app/views/submit_form/archived.html.erb @@ -10,7 +10,7 @@ <%= svg_icon('writing_sign', class: 'w-10 h-10') %>

-

<%= @submitter.submission.name || @submitter.submission.template.name %>

+

<%= @submitter.submission.name || @submitter.submission.template&.name %>

<%= t('form_has_been_deleted_by_html', name: @submitter.account.name) %>

diff --git a/app/views/submit_form/awaiting.html.erb b/app/views/submit_form/awaiting.html.erb index 34c0acc8..16173729 100644 --- a/app/views/submit_form/awaiting.html.erb +++ b/app/views/submit_form/awaiting.html.erb @@ -10,7 +10,7 @@ <%= svg_icon('writing_sign', class: 'w-10 h-10') %>
-

<%= @submitter.submission.name || @submitter.submission.template.name %>

+

<%= @submitter.submission.name || @submitter.submission.template&.name %>

<%= t('awaiting_completion_by_the_other_party') %>

diff --git a/app/views/submit_form/completed.html.erb b/app/views/submit_form/completed.html.erb index a1a5a80a..adc54428 100644 --- a/app/views/submit_form/completed.html.erb +++ b/app/views/submit_form/completed.html.erb @@ -10,7 +10,7 @@ <%= svg_icon('writing_sign', class: 'w-10 h-10') %>
-

<%= @submitter.submission.name || @submitter.submission.template.name %>

+

<%= @submitter.submission.name || @submitter.submission.template&.name %>

<%= t(@submitter.with_signature_fields? ? 'signed_on_time' : 'completed_on_time', time: l(@submitter.completed_at.to_date, format: :long)) %>

diff --git a/app/views/submit_form/declined.html.erb b/app/views/submit_form/declined.html.erb index cc45cc23..1c896dc0 100644 --- a/app/views/submit_form/declined.html.erb +++ b/app/views/submit_form/declined.html.erb @@ -10,7 +10,7 @@ <%= svg_icon('writing_sign', class: 'w-10 h-10') %>
-

<%= @submitter.submission.name || @submitter.submission.template.name %>

+

<%= @submitter.submission.name || @submitter.submission.template&.name %>

<%= t('form_has_been_declined_on_html', time: l(@submitter.declined_at, format: :long)) %>

diff --git a/app/views/submit_form/delegated.html.erb b/app/views/submit_form/delegated.html.erb index de96b574..18a22561 100644 --- a/app/views/submit_form/delegated.html.erb +++ b/app/views/submit_form/delegated.html.erb @@ -10,7 +10,7 @@ <%= svg_icon('user_share', class: 'w-10 h-10') %>
-

<%= @submitter.submission.name || @submitter.submission.template.name %>

+

<%= @submitter.submission.name || @submitter.submission.template&.name %>

<%= t('document_has_been_delegated_on_html', time: l(@submitter.submission_events.order(event_timestamp: :desc).find_by!(event_type: :delegate_form).event_timestamp, format: :long)) %>

diff --git a/app/views/submit_form/email_2fa.html.erb b/app/views/submit_form/email_2fa.html.erb index 319a3c80..216c82b8 100644 --- a/app/views/submit_form/email_2fa.html.erb +++ b/app/views/submit_form/email_2fa.html.erb @@ -1,4 +1,4 @@ -<% content_for(:html_title, "#{@submitter.submission.name || @submitter.submission.template.name} | DocuSeal") %> +<% content_for(:html_title, "#{@submitter.submission.name || @submitter.submission.template&.name} | DocuSeal") %> <% I18n.with_locale(@submitter.account.locale) do %> <% content_for(:html_description, t('account_name_has_invited_you_to_fill_and_sign_documents_online_effortlessly_with_a_secure_fast_and_user_friendly_digital_document_signing_solution', account_name: @submitter.account.name)) %> <% end %> @@ -14,7 +14,7 @@ <%= svg_icon('writing_sign', class: 'w-10 h-10') %>
-

<%= @submitter.submission.name || @submitter.submission.template.name %>

+

<%= @submitter.submission.name || @submitter.submission.template&.name %>

<% last_submitter = @submitter.submission.submitters.completed.order(:completed_at).last %> <% if last_submitter %>

diff --git a/app/views/submit_form/expired.html.erb b/app/views/submit_form/expired.html.erb index d012185f..1631f7ae 100644 --- a/app/views/submit_form/expired.html.erb +++ b/app/views/submit_form/expired.html.erb @@ -10,7 +10,7 @@ <%= svg_icon('writing_sign', class: 'w-10 h-10') %>

-

<%= @submitter.submission.name || @submitter.submission.template.name %>

+

<%= @submitter.submission.name || @submitter.submission.template&.name %>

<%= t('form_expired_at_html', time: l(@submitter.submission.expire_at, format: :long)) %>

diff --git a/app/views/submit_form/show.html.erb b/app/views/submit_form/show.html.erb index 8ed8aaba..2f3cf4af 100644 --- a/app/views/submit_form/show.html.erb +++ b/app/views/submit_form/show.html.erb @@ -1,4 +1,4 @@ -<% content_for(:html_title, "#{@submitter.submission.name || @submitter.submission.template.name} | DocuSeal") %> +<% content_for(:html_title, "#{@submitter.submission.name || @submitter.submission.template&.name} | DocuSeal") %> <% I18n.with_locale(@submitter.account.locale) do %> <% content_for(:html_description, t('account_name_has_invited_you_to_fill_and_sign_documents_online_effortlessly_with_a_secure_fast_and_user_friendly_digital_document_signing_solution', account_name: @submitter.account.name)) %> <% end %> @@ -20,7 +20,7 @@ <%= render('submit_form/banner') %>

- <%= @submitter.submission.name || @submitter.submission.template.name %> + <%= @submitter.submission.name || @submitter.submission.template&.name %>

<% if @form_configs[:with_decline] %> diff --git a/app/views/submitter_mailer/completed_email.html.erb b/app/views/submitter_mailer/completed_email.html.erb index 382efb16..14cce73b 100644 --- a/app/views/submitter_mailer/completed_email.html.erb +++ b/app/views/submitter_mailer/completed_email.html.erb @@ -2,6 +2,6 @@ <%= render 'custom_content', content: @body, submitter: @submitter %> <% else %>

<%= t('hi_there') %>,

-

<%= I18n.t(:name_has_been_completed_by_submitters, name: @submitter.submission.name || @submitter.submission.template.name, submitters: @submitter.submission.submitters.order(:completed_at).map { |e| e.name || e.email || e.phone }.uniq.join(', ')) %>

+

<%= I18n.t(:name_has_been_completed_by_submitters, name: @submitter.submission.name || @submitter.submission.template&.name, submitters: @submitter.submission.submitters.order(:completed_at).map { |e| e.name || e.email || e.phone }.uniq.join(', ')) %>

<%= link_to submission_url(@submitter.submission), submission_url(@submitter.submission) %>

<% end %> diff --git a/app/views/submitter_mailer/declined_email.html.erb b/app/views/submitter_mailer/declined_email.html.erb index 40e02391..58559f2f 100644 --- a/app/views/submitter_mailer/declined_email.html.erb +++ b/app/views/submitter_mailer/declined_email.html.erb @@ -1,4 +1,4 @@

<%= t('hi_there') %>,

-

<%= t('name_declined_by_submitter_with_the_following_reason', name: @submitter.submission.name || @submitter.submission.template.name, submitter: @submitter.name || @submitter.email || @submitter.phone) %>

+

<%= t('name_declined_by_submitter_with_the_following_reason', name: @submitter.submission.name || @submitter.submission.template&.name, submitter: @submitter.name || @submitter.email || @submitter.phone) %>

<%= simple_format(h(@submitter.submission_events.find_by(event_type: :decline_form).data['reason']), {}, sanitize: false) %>

<%= link_to submission_url(@submitter.submission), submission_url(@submitter.submission) %>

diff --git a/app/views/submitter_mailer/documents_copy_email.html.erb b/app/views/submitter_mailer/documents_copy_email.html.erb index 9e230cf2..e1909b35 100644 --- a/app/views/submitter_mailer/documents_copy_email.html.erb +++ b/app/views/submitter_mailer/documents_copy_email.html.erb @@ -2,10 +2,10 @@ <%= render 'custom_content', content: @body, submitter: @submitter, sig: @sig %> <% else %>

<%= t('hi_there') %>,

-

<%= t('please_check_the_copy_of_your_name_in_the_email_attachments', name: @submitter.submission.name || @submitter.submission.template.name) %> +

<%= t('please_check_the_copy_of_your_name_in_the_email_attachments', name: @submitter.submission.name || @submitter.submission.template&.name) %>

<%= t('alternatively_you_can_review_and_download_your_copy_using_the_link_below') %>

- <%= link_to @submitter.submission.name || @submitter.submission.template.name, submissions_preview_url(@submitter.submission.slug, { sig: @sig, host: @custom_domain || ENV.fetch('EMAIL_HOST', Docuseal.default_url_options[:host]) }.compact) %> + <%= link_to @submitter.submission.name || @submitter.submission.template&.name, submissions_preview_url(@submitter.submission.slug, { sig: @sig, host: @custom_domain || ENV.fetch('EMAIL_HOST', Docuseal.default_url_options[:host]) }.compact) %>

<%= t('thanks') %>,
<%= @current_account.name %> diff --git a/app/views/submitter_mailer/invitation_email.html.erb b/app/views/submitter_mailer/invitation_email.html.erb index 408016df..dadd60e1 100644 --- a/app/views/submitter_mailer/invitation_email.html.erb +++ b/app/views/submitter_mailer/invitation_email.html.erb @@ -5,7 +5,7 @@ <% end %> <% else %>

<%= t('hi_there') %>,

-

<%= I18n.t(@submitter.with_signature_fields? ? :you_have_been_invited_to_sign_the_name : :you_have_been_invited_to_submit_the_name_form, name: @submitter.submission.name || @submitter.submission.template.name) %>

+

<%= I18n.t(@submitter.with_signature_fields? ? :you_have_been_invited_to_sign_the_name : :you_have_been_invited_to_submit_the_name_form, name: @submitter.submission.name || @submitter.submission.template&.name) %>

<%= link_to I18n.t(@submitter.with_signature_fields? ? :review_and_sign : :review_and_submit), submit_form_url(slug: @submitter.slug, t: SubmissionEvents.build_tracking_param(@submitter, 'click_email'), host: @custom_domain || ENV.fetch('EMAIL_HOST', Docuseal.default_url_options[:host])) %>

<%= t('please_contact_us_by_replying_to_this_email_if_you_have_any_questions') %>

diff --git a/app/views/submitter_mailer/otp_verification_email.html.erb b/app/views/submitter_mailer/otp_verification_email.html.erb index 6b9c959e..08e6b023 100644 --- a/app/views/submitter_mailer/otp_verification_email.html.erb +++ b/app/views/submitter_mailer/otp_verification_email.html.erb @@ -1,3 +1,3 @@ -

<%= t('your_verification_code_to_access_the_name', name: @submitter.submission.name || @submitter.submission.template.name) %>

+

<%= t('your_verification_code_to_access_the_name', name: @submitter.submission.name || @submitter.submission.template&.name) %>

<%= @otp_code %>

<%= t('please_reply_to_this_email_if_you_didnt_request_this') %>

diff --git a/app/views/templates/_submission.html.erb b/app/views/templates/_submission.html.erb index 35e45851..7faa1a83 100644 --- a/app/views/templates/_submission.html.erb +++ b/app/views/templates/_submission.html.erb @@ -7,7 +7,7 @@ diff --git a/lib/submissions/generate_audit_trail.rb b/lib/submissions/generate_audit_trail.rb index a76497f3..35ed789e 100644 --- a/lib/submissions/generate_audit_trail.rb +++ b/lib/submissions/generate_audit_trail.rb @@ -61,7 +61,7 @@ module Submissions ActiveStorage::Attachment.create!( blob: ActiveStorage::Blob.create_and_upload!( io: io.tap(&:rewind), filename: "#{I18n.t('audit_log')} - " \ - "#{submission.name || submission.template.name}.pdf" + "#{submission.name || submission.template&.name}.pdf" ), name: 'audit_trail', record: submission diff --git a/lib/submissions/generate_combined_attachment.rb b/lib/submissions/generate_combined_attachment.rb index bafd20a7..d8a60bf9 100644 --- a/lib/submissions/generate_combined_attachment.rb +++ b/lib/submissions/generate_combined_attachment.rb @@ -37,7 +37,7 @@ module Submissions ActiveStorage::Attachment.create!( blob: ActiveStorage::Blob.create_and_upload!( - io: io.tap(&:rewind), filename: "#{submission.name || submission.template.name}.pdf" + io: io.tap(&:rewind), filename: "#{submission.name || submission.template&.name}.pdf" ), name: with_audit ? 'combined_document' : 'merged_document', record: submission diff --git a/lib/submissions/generate_preview_attachments.rb b/lib/submissions/generate_preview_attachments.rb index 9b712733..10bbdcd0 100644 --- a/lib/submissions/generate_preview_attachments.rb +++ b/lib/submissions/generate_preview_attachments.rb @@ -68,7 +68,7 @@ module Submissions submission:, values_hash:, name: 'preview_merged_document', - filename: "#{submission.name || template.name}.pdf" + filename: "#{submission.name || template&.name}.pdf" ) ApplicationRecord.no_touching { attachment.save! } @@ -112,7 +112,7 @@ module Submissions submitter:, uuid: GenerateResultAttachments.images_pdf_uuid(original_documents.select(&:image?)), values_hash:, - filename: "#{submission.name || template.name}.pdf" + filename: "#{submission.name || template&.name}.pdf" ) ApplicationRecord.no_touching do diff --git a/lib/submissions/generate_result_attachments.rb b/lib/submissions/generate_result_attachments.rb index 7b3ed4cd..e9964400 100644 --- a/lib/submissions/generate_result_attachments.rb +++ b/lib/submissions/generate_result_attachments.rb @@ -125,7 +125,7 @@ module Submissions tsa_url:, pkcs:, uuid: images_pdf_uuid(original_documents.select(&:image?)), - name: submission.name || submission.template.name + name: submission.name || submission.template&.name ) ApplicationRecord.no_touching do