Sha256: ac9c5ace758363c57e81738b893f32ea06b35331d63372754c39b5602c0f47be
Contents?: true
Size: 742 Bytes
Versions: 4
Compression:
Stored size: 742 Bytes
Contents
module Mailkick class Processor attr_reader :message def initialize(message) @message = message end def process email = message.to.first user = Mailkick.user_method.call(email) if Mailkick.user_method list = message[:mailkick_list].try(:value) if list # remove header message[:mailkick_list] = nil end verifier = ActiveSupport::MessageVerifier.new(Mailkick.secret_token) token = verifier.generate([email, user.try(:id), user.try(:class).try(:name), list]) parts = message.parts.any? ? message.parts : [message] parts.each do |part| part.body.raw_source.gsub!(/%7B%7BMAILKICK_TOKEN%7D%7D/, CGI.escape(token)) end end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
mailkick-0.1.5 | lib/mailkick/processor.rb |
mailkick-0.1.4 | lib/mailkick/processor.rb |
mailkick-0.1.3 | lib/mailkick/processor.rb |
mailkick-0.1.2 | lib/mailkick/processor.rb |