diff --git a/lib/submitters/create_stamp_attachment.rb b/lib/submitters/create_stamp_attachment.rb index 5b5f1d64..b08e2363 100644 --- a/lib/submitters/create_stamp_attachment.rb +++ b/lib/submitters/create_stamp_attachment.rb @@ -67,25 +67,16 @@ module Submitters end def build_text_image(submitter) - time = I18n.l(submitter.completed_at.in_time_zone(submitter.submission.account.timezone), - format: :long, - locale: submitter.submission.account.locale) + if submitter.completed_at + time = I18n.l(submitter.completed_at.in_time_zone(submitter.submission.account.timezone), + format: :long, + locale: submitter.submission.account.locale) - timezone = TimeUtils.timezone_abbr(submitter.submission.account.timezone, submitter.completed_at) + timezone = TimeUtils.timezone_abbr(submitter.submission.account.timezone, submitter.completed_at) + end - name = if submitter.name.present? && submitter.email.present? - "#{submitter.name} #{submitter.email}" - else - submitter.name || submitter.email || submitter.phone - end - - role = if submitter.submission.template_submitters.size > 1 - item = submitter.submission.template_submitters.find { |e| e['uuid'] == submitter.uuid } - - "#{I18n.t(:role, locale: submitter.account.locale)}: #{item['name']}\n" - else - '' - end + name = build_name(submitter) + role = build_role(submitter) digitally_signed_by = I18n.t(:digitally_signed_by, locale: submitter.submission.account.locale) @@ -97,6 +88,24 @@ module Submitters Vips::Image.text(text, width: WIDTH, height: HEIGHT, wrap: :'word-char') end + def build_name(submitter) + if submitter.name.present? && submitter.email.present? + "#{submitter.name} #{submitter.email}" + else + submitter.name || submitter.email || submitter.phone + end + end + + def build_role(submitter) + if submitter.submission.template_submitters.size > 1 + item = submitter.submission.template_submitters.find { |e| e['uuid'] == submitter.uuid } + + "#{I18n.t(:role, locale: submitter.account.locale)}: #{item['name']}\n" + else + '' + end + end + def load_logo(_submitter) PdfIcons.stamp_logo_io end