Sha256: a2691da3b1e97c347277076e74a89aad1f1194f5c7d801ff28bdd09ae5679d8e

Contents?: true

Size: 985 Bytes

Versions: 2

Compression:

Stored size: 985 Bytes

Contents

# coding: utf-8

module UzuUzu
  #
  #
  #
  module TiltWrapper
    #
    #
    #
    def self.render_engine(instance, view_string, engine=::UzuUzu.engine, options={}, locals={}, &block)
      template = ::Tilt[engine.to_s].new { |t| view_string.force_encoding('UTF-8') }
      contents = template.render(instance, locals, &block)
      unless options.blank?
        layout = options.delete(:layout)
        layout_string = options.delete(:layout_string)
        layout_engine = options.delete(:layout_engine) || engine
        unless layout.blank?
          if ::File.file?(layout)
            layout_string = ::File.respond_to?(:binread) ? ::File.binread(layout) : ::File.read(layout)
          end
        end
        unless layout_string.blank?
          locals[:@contents] = contents
          contents = self.render_engine(instance, layout_string, layout_engine, options, locals)
        end
      end
      contents
    end # self.render_engine
  end # TiltWrapper
end # UzuUzu

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
uzuuzu-core-0.0.8 lib/uzuuzu/wrapper/tilt.rb
uzuuzu-core-0.0.7 lib/uzuuzu/wrapper/tilt.rb