Class: Renalware::Letters::Delivery::PracticeMailer

Inherits:
ApplicationMailer
  • Object
show all
Defined in:
app/mailers/renalware/letters/delivery/practice_mailer.rb

Overview

Note PracticeMailer not the best name as we use this mailer to send a letter to any recipient (practices, hospital secretaries etc)

Instance Method Summary collapse

Instance Method Details

#patient_letter(letter:, to:) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'app/mailers/renalware/letters/delivery/practice_mailer.rb', line 13

def patient_letter(letter:, to:)
  validate_letter(letter)
  letter_presenter = LetterPresenterFactory.new(letter)
  attachments["letter.pdf"] = Letters::PdfRenderer.call(letter_presenter)

  # Note here we render the content in a block so that we can use the locals: {..} syntax
  # which is cleaner than using @vars.
  mail(
    to: to,
    subject: build_subject_for(letter),
    from: Renalware.config.default_from_email_address,
    locals: locals_for(letter)
  ) { |format| format.text { render(locals: locals_for(letter)) } }
end