Class: ActionMailer::Base

Inherits:
AbstractController::Base
  • Object
show all
Defined in:
lib/send_grid_mailer/mailer_base_ext.rb

Instance Method Summary collapse

Instance Method Details

#mail(headers = {}, &_block) ⇒ Object



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/send_grid_mailer/mailer_base_ext.rb', line 11

def mail(headers = {}, &_block)
  return old_mail(headers, &_block) unless enabled_sendgrid?

  # Call all the procs (if any)
  default_values = {}
  self.class.default.each do |k, v|
    default_values[k] = v.is_a?(Proc) ? instance_eval(&v) : v
  end

  # Handle defaults
  headers = headers.reverse_merge(default_values)
  headers[:subject] ||= default_i18n_subject

  define_sg_mail(headers)

  deliverer&.new&.deliver!(sg_definition)
end

#old_mailObject



3
# File 'lib/send_grid_mailer/mailer_base_ext.rb', line 3

alias_method :old_mail, :mail