Sha256: dd2372d7295b5f78aefa2987f20c65a884e56f1a85b6edadf212cf102e243eb2

Contents?: true

Size: 1014 Bytes

Versions: 13

Compression:

Stored size: 1014 Bytes

Contents

module Locomotive
  
  module Liquid
    
    module Tags
      
      class Snippet < ::Liquid::Include
    
        def render(context)
          site = context.registers[:site]
      
          partial = ::Liquid::Template.file_system.read_template_file(site, context[@template_name])
      
          variable = context[@variable_name || @template_name[1..-2]]
      
          context.stack do
            @attributes.each do |key, value|
              context[key] = context[value]
            end

            output = (if variable.is_a?(Array)          
              variable.collect do |variable|            
                context[@template_name[1..-2]] = variable
                partial.render(context)
              end
            else
              context[@template_name[1..-2]] = variable
              partial.render(context)
            end)
        
            output
          end
        end
      end

      ::Liquid::Template.register_tag('include', Snippet)  
    
    end
  
  end

end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
locomotive_cms-0.0.2.7 lib/locomotive/liquid/tags/snippet.rb
locomotive_cms-0.0.2.6 lib/locomotive/liquid/tags/snippet.rb
locomotive_cms-0.0.2.5 lib/locomotive/liquid/tags/snippet.rb
locomotive_cms-0.0.2.4 lib/locomotive/liquid/tags/snippet.rb
locomotive_cms-0.0.2.3 lib/locomotive/liquid/tags/snippet.rb
locomotive_cms-0.0.2.2 lib/locomotive/liquid/tags/snippet.rb
locomotive_cms-0.0.2.1 lib/locomotive/liquid/tags/snippet.rb
locomotive_cms-0.0.2 lib/locomotive/liquid/tags/snippet.rb
locomotive_cms-0.0.1.4 lib/locomotive/liquid/tags/snippet.rb
locomotive_cms-0.0.1.3 lib/locomotive/liquid/tags/snippet.rb
locomotive_cms-0.0.1.2 lib/locomotive/liquid/tags/snippet.rb
locomotive_cms-0.0.1.1 lib/locomotive/liquid/tags/snippet.rb
locomotive_cms-0.0.1 lib/locomotive/liquid/tags/snippet.rb