Sha256: 452e888e2bc29b69ddf370879a1720ba8866d9562fe1c3f1bb851c22b05dfb8a

Contents?: true

Size: 659 Bytes

Versions: 9

Compression:

Stored size: 659 Bytes

Contents

require 'volt/page/bindings/base_binding'

module Volt
  class TemplateRenderer < BaseBinding
    attr_reader :context

    def initialize(volt_app, target, context, binding_name, template_name)
      super(volt_app, target, context, binding_name)

      @sub_bindings = []

      bindings = dom_section.set_content_to_template(volt_app.page, template_name)

      bindings.each_pair do |id, bindings_for_id|
        bindings_for_id.each do |binding|
          @sub_bindings << binding.call(volt_app, target, context, id)
        end
      end
    end

    def remove
      @sub_bindings.each(&:remove)
      @sub_bindings = []

      super
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
volt-0.9.4.pre3 lib/volt/page/template_renderer.rb
volt-0.9.4.pre2 lib/volt/page/template_renderer.rb
volt-0.9.4.pre1 lib/volt/page/template_renderer.rb
volt-0.9.3 lib/volt/page/template_renderer.rb
volt-0.9.3.pre6 lib/volt/page/template_renderer.rb
volt-0.9.3.pre5 lib/volt/page/template_renderer.rb
volt-0.9.3.pre4 lib/volt/page/template_renderer.rb
volt-0.9.3.pre3 lib/volt/page/template_renderer.rb
volt-0.9.3.pre2 lib/volt/page/template_renderer.rb