Sha256: daacdb695a090fdf271e5f8191621dd6538b2a2c5603c3a954ad00d5649e5549
Contents?: true
Size: 839 Bytes
Versions: 2
Compression:
Stored size: 839 Bytes
Contents
begin require 'mail/check_delivery_params' rescue LoadError => e end module LetterOpener class DeliveryMethod include Mail::CheckDeliveryParams if defined?(Mail::CheckDeliveryParams) class InvalidOption < StandardError; end attr_accessor :settings def initialize(options = {}) raise InvalidOption, "A location option is required when using the Letter Opener delivery method" if options[:location].nil? self.settings = options end def deliver!(mail) check_delivery_params(mail) if respond_to?(:check_delivery_params) location = File.join(settings[:location], "#{Time.now.to_i}_#{Digest::SHA1.hexdigest(mail.encoded)[0..6]}") messages = Message.rendered_messages(location, mail) Launchy.open("file:///#{URI.parse(URI.escape(messages.first.filepath))}") end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
letter_opener-1.4.1 | lib/letter_opener/delivery_method.rb |
letter_opener-1.4.0 | lib/letter_opener/delivery_method.rb |