Sha256: 53bb353e6ae13a7067fc1edb9776adf8dbb0abd1fe9057e7b19fa951170c110c

Contents?: true

Size: 915 Bytes

Versions: 10

Compression:

Stored size: 915 Bytes

Contents

# frozen_string_literal: true

require "renalware/letters"

module Renalware
  module Letters
    module Delivery
      # Utility class to help us resolve the correct email address when sending to the practice.
      # If we allow_external_mail then we use the practice email, other wise we use the email
      # of the last user to update the letter (useful for testing, ie you get the GP email if you
      # approve the letter) or a system default for testing if the user has no email address.
      class PracticeEmail
        pattr_initialize :letter
        delegate :patient, to: :letter
        delegate :practice, to: :patient
        delegate :config, to: :Renalware

        def address
          if config.allow_external_mail
            practice&.email # nil is acceptable
          else
            config.fallback_email_address_for_test_messages
          end
        end
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
renalware-core-2.1.1 app/models/renalware/letters/delivery/practice_email.rb
renalware-core-2.1.0 app/models/renalware/letters/delivery/practice_email.rb
renalware-core-2.0.167 app/models/renalware/letters/delivery/practice_email.rb
renalware-core-2.0.166 app/models/renalware/letters/delivery/practice_email.rb
renalware-core-2.0.165 app/models/renalware/letters/delivery/practice_email.rb
renalware-core-2.0.164 app/models/renalware/letters/delivery/practice_email.rb
renalware-core-2.0.163 app/models/renalware/letters/delivery/practice_email.rb
renalware-core-2.0.162 app/models/renalware/letters/delivery/practice_email.rb
renalware-core-2.0.161 app/models/renalware/letters/delivery/practice_email.rb
renalware-core-2.0.160 app/models/renalware/letters/delivery/practice_email.rb