Sha256: 07bc03db2ca1170f03753ef6d7ee3b56eef04356447ad4b474cf3c543ccd3c6e

Contents?: true

Size: 1.36 KB

Versions: 27

Compression:

Stored size: 1.36 KB

Contents

module Padrino
  module Mailer
    ##
    # Handles MIME type declarations for mail delivery.
    #
    module Mime
      ##
      # Returns Symbol with mime type if found, otherwise use +fallback+.
      # +mime+ should be the content type like "text/plain"
      # +fallback+ may be any symbol.
      #
      # Also see the documentation for {MIME_TYPES}.
      #
      # @param [String] mime
      #   The mime alias to fetch (i.e 'text/plain').
      # @param [Symbol] fallback
      #   The fallback mime to use if +mime+ doesn't exist.
      #
      # @example
      #   Padrino::Mailer::Mime.mime_type('text/plain')
      #   # => :plain
      #   Padrino::Mailer::Mime.mime_type('text/html')
      #   # => :html
      #
      # This is a shortcut for:
      #
      #   Padrino::Mailer::Mime::MIME_TYPES.fetch('text/plain', :plain)
      #
      def self.mime_type(mime, fallback=:plain)
        MIME_TYPES.fetch(mime.to_s.split(';').first.to_s.downcase, fallback)
      end

      ##
      # List of common mime-types, selected from various sources
      # according to their usefulness for an email scope.
      #
      # You can add your own mime types like:
      #
      #   Padrino::Mailer::Mime::MIME_TYPES.merge!("text/xml" => :xml)
      #
      MIME_TYPES = {
        "text/html"  => :html,
        "text/plain" => :plain,
        "text/xml"   => :xml
      }
    end
  end
end

Version data entries

27 entries across 27 versions & 1 rubygems

Version Path
padrino-mailer-0.16.0.pre3 lib/padrino-mailer/mime.rb
padrino-mailer-0.16.0.pre2 lib/padrino-mailer/mime.rb
padrino-mailer-0.15.3 lib/padrino-mailer/mime.rb
padrino-mailer-0.15.2 lib/padrino-mailer/mime.rb
padrino-mailer-0.15.1 lib/padrino-mailer/mime.rb
padrino-mailer-0.15.0 lib/padrino-mailer/mime.rb
padrino-mailer-0.14.4 lib/padrino-mailer/mime.rb
padrino-mailer-0.14.3 lib/padrino-mailer/mime.rb
padrino-mailer-0.12.9 lib/padrino-mailer/mime.rb
padrino-mailer-0.14.2 lib/padrino-mailer/mime.rb
padrino-mailer-0.13.3.4 lib/padrino-mailer/mime.rb
padrino-mailer-0.14.1.1 lib/padrino-mailer/mime.rb
padrino-mailer-0.14.1 lib/padrino-mailer/mime.rb
padrino-mailer-0.14.0.2 lib/padrino-mailer/mime.rb
padrino-mailer-0.14.0.1 lib/padrino-mailer/mime.rb
padrino-mailer-0.14.0 lib/padrino-mailer/mime.rb
padrino-mailer-0.14.0.rc2 lib/padrino-mailer/mime.rb
padrino-mailer-0.14.0.rc1 lib/padrino-mailer/mime.rb
padrino-mailer-0.13.3.3 lib/padrino-mailer/mime.rb
padrino-mailer-0.13.3.2 lib/padrino-mailer/mime.rb