module Moist::ActionMailer::Extension
Constants
- MOIST_VARS
Public Class Methods
included(klass)
click to toggle source
# File lib/moist/action_mailer/extension.rb, line 5 def self.included(klass) klass.extend ClassMethods klass.after_action :attach_metadata end
Private Instance Methods
attach_metadata()
click to toggle source
# File lib/moist/action_mailer/extension.rb, line 12 def attach_metadata mailer_class = self.class.to_s mailer_action = self.action_name self.message.instance_variable_set(:@mailer_class, mailer_class) self.message.instance_variable_set(:@mailer_action, mailer_action) self.message.class.send(:attr_reader, :mailer_class) self.message.class.send(:attr_reader, :mailer_action) MOIST_VARS.each do |var| if instance_variable_defined?(var) self.message.instance_variable_set(var, instance_variable_get(var)) self.message.class.send(:attr_reader, var.to_s[1..].to_sym) end end end