Sha256: 50ced596e2b9f29bf642d050ccd523c89857b374d93ca7ceeda2ffdd26ba8647

Contents?: true

Size: 825 Bytes

Versions: 2

Compression:

Stored size: 825 Bytes

Contents

module PremailerRails
  class Premailer < ::Premailer
    def initialize(html)
      # In order to pass the CSS as string to super it is necessary to access
      # the parsed HTML beforehand. To do so, the adapter needs to be
      # initialized. The ::Premailer::Adaptor handles the discovery of a
      # suitable adaptor (Nokogiri or Hpricot). To make load_html work, an
      # adaptor needs to be included and @options[:with_html_string] needs to be
      # set. For further information, refer to ::Premailer#initialize.
      @options = { :with_html_string => true }
      ::Premailer.send(:include, Adapter.find(Adapter.use))
      doc = load_html(html)

      options = {
        :with_html_string => true,
        :css_string       => CSSHelper.css_for_doc(doc)
      }
      super(html, options)
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
premailer-rails3-1.0.1 lib/premailer-rails3/premailer.rb
premailer-rails3-1.0.0 lib/premailer-rails3/premailer.rb