Sha256: ac5991f1e7987a061c033fe31071d73bb4e4fd704507459263fc10e05b5982cc

Contents?: true

Size: 1.01 KB

Versions: 1

Compression:

Stored size: 1.01 KB

Contents

require "action_view"
require "action_controller"
require "call_with_params"

module Blocks
  autoload :Base,          "blocks/base"
  autoload :Container,     "blocks/container"
  autoload :ProcWithArgs,     "blocks/proc_with_args"
  autoload :ViewAdditions, "blocks/view_additions"
  autoload :ControllerAdditions, "blocks/controller_additions"

  mattr_accessor :template_folder
  @@template_folder = "blocks"

  mattr_accessor :use_partials
  @@use_partials = false

  mattr_accessor :surrounding_tag_surrounds_before_and_after_blocks
  @@surrounding_tag_surrounds_before_and_after_blocks = false

  # Shortcut for using the templating feature / rendering templates
  def self.render_template(view, partial, options={}, &block)
    Blocks::Base.new(view, options).render_template(partial, &block)
  end

  # Default way to setup Blocks
  def self.setup
    yield self
  end
end

ActionView::Base.send :include, Blocks::ViewAdditions::ClassMethods
ActionController::Base.send :include, Blocks::ControllerAdditions::ClassMethods

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
blocks-2.3.0 lib/blocks.rb