Sha256: 385df039f0b1385d20407d156c9f5df7c7c0fdd5a45af15bf0e328321458110f

Contents?: true

Size: 1.02 KB

Versions: 25

Compression:

Stored size: 1.02 KB

Contents

module Railgun

  class Attachment < StringIO

    attr_reader :filename, :content_type, :path,
                :original_filename, :overwritten_filename

    def initialize(attachment, *args)
      @path = ''
      @inline = args.detect { |opt| opt[:inline] }

      if @inline
        @filename = attachment.cid
      else
        @filename = attachment.filename
      end

      @original_filename = @filename

      if args.detect { |opt| opt[:filename] }
        @filename = opt[:filename]
      end

      @overwritten_filename = @filename

      @content_type = attachment.content_type.split(';')[0]

      super attachment.body.decoded
    end

    def inline?
      @inline
    end

    def is_original_filename
      @original_filename == @overwritten_filename
    end

    def source_filename
      @filename
    end

    def attach_to_message!(mb)
      if mb.nil?
        nil
      end

      if inline?
        mb.add_inline_image self, @filename
      else
        mb.add_attachment self, @filename
      end
    end

  end
end

Version data entries

25 entries across 25 versions & 2 rubygems

Version Path
mailgun-ruby-1.3.2 lib/railgun/attachment.rb
mailgun-ruby-1.3.1 lib/railgun/attachment.rb
mailgun-ruby-1.3.0 lib/railgun/attachment.rb
mailgun-ruby-1.2.16 lib/railgun/attachment.rb
mailgun-ruby-1.2.15 lib/railgun/attachment.rb
mailgun-ruby-1.2.14 lib/railgun/attachment.rb
mailgun-ruby-1.2.13 lib/railgun/attachment.rb
mailgun-ruby-1.2.12 lib/railgun/attachment.rb
mailgun-ruby-1.2.11 lib/railgun/attachment.rb
mailgun-ruby-1.2.10 lib/railgun/attachment.rb
mailgun-ruby-1.2.9 lib/railgun/attachment.rb
mailgun-ruby-1.2.8 lib/railgun/attachment.rb
mailgun-ruby-1.2.7 lib/railgun/attachment.rb
mailgun-ruby-1.2.6 lib/railgun/attachment.rb
mailgun-ruby-1.2.5 lib/railgun/attachment.rb
mailgun-ruby-1.2.4 lib/railgun/attachment.rb
mailgun-ruby-1.2.3 lib/railgun/attachment.rb
mailgun-ruby-1.2.0 lib/railgun/attachment.rb
mailgun-ruby-1.1.11 lib/railgun/attachment.rb
mailgun-ruby-1.1.10 lib/railgun/attachment.rb