Sha256: 430c9f5273113935570158c07153c8273d4b4d165e829d24e339a6bde9c1fc04

Contents?: true

Size: 842 Bytes

Versions: 2

Compression:

Stored size: 842 Bytes

Contents

require 'slippers'

module Ramaze
  module View
    module Slippers
      def self.call(action, string)
        slippers = View.compile(string){|s| ::Slippers::Engine.new(s, :template_group => template_group(action)) }
        object_to_render = ::Slippers::BindingWrapper.new(action.instance.binding)
        html = slippers.render(object_to_render)
        return html, 'text/html'
      end
      
      private
        def self.template_group(action)
          subtemplates = action.instance.ancestral_trait[:slippers_options] || {}
          view_root = "#{action.instance.options[:roots]}/#{action.instance.options[:views]}"
          super_group = ::Slippers::TemplateGroup.new(:templates => subtemplates)
          ::Slippers::TemplateGroupDirectory.new(view_root, :super_group => super_group)          
        end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
starapor-slippers-0.0.6 lib/ramazeTemplates/slippers.rb
starapor-slippers-0.0.8 lib/ramazeTemplates/slippers.rb