module ActionMailerPixel::DSL::TrackingPixel
Public Instance Methods
open_tracking_pixel(recipient: nil, campaign: nil)
click to toggle source
# File lib/action_mailer_pixel/dsl/tracking_pixel.rb, line 22 def open_tracking_pixel(recipient: nil, campaign: nil) define_method :open_pixel_configuration do @open_pixel_configuration ||= Configuration.new( recipient.nil? ? send(:open_pixel_recipient) : recipient, campaign.nil? ? send(:open_pixel_campaign) : campaign ) end define_method :open_pixel_recipient do -> do begin @user || params[:user] || ActionMailerPixel.recipient_class.find_by(email: message.to.first) rescue NameError nil end end end define_method :open_pixel_campaign do -> do begin @campaign || params[:campaign] rescue NameError nil end end end define_method :append_open_tracking_pixel do interceptor = ActionMailerPixel::Interceptor.new self interceptor.setup_pixel end after_action :append_open_tracking_pixel end