Sha256: b339cc711aaa32d204bbc20bbde265e62c4cbf7efb70ff7ea8fa66036295c95c

Contents?: true

Size: 656 Bytes

Versions: 13

Compression:

Stored size: 656 Bytes

Contents

module ComfortableMexicanSofa::ViewHooks
  
  # Array of declared hooks
  def self.hooks
    @@hooks ||= { }
  end
  
  # Renders hook content
  def self.render(name, template, options = {})
    if self.hooks[name.to_sym]
      template.render({:partial => self.hooks[name.to_sym]}.merge(options))
    end
  end
  
  # Will declare a partial that will be rendered for this hook
  # Example:
  # ComfortableMexicanSofa::ViewHooks.add(:navigation, 'shared/navigation')
  def self.add(name, partial_path)
    self.hooks[name.to_sym] = partial_path
  end
  
  # Removing previously declared hook
  def self.remove(name)
    self.hooks.delete(name)
  end
  
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
comfortable_mexican_sofa-1.0.38 lib/comfortable_mexican_sofa/view_hooks.rb
comfortable_mexican_sofa-1.0.37 lib/comfortable_mexican_sofa/view_hooks.rb
comfortable_mexican_sofa-1.0.36 lib/comfortable_mexican_sofa/view_hooks.rb
comfortable_mexican_sofa-1.0.35 lib/comfortable_mexican_sofa/view_hooks.rb
comfortable_mexican_sofa-1.0.34 lib/comfortable_mexican_sofa/view_hooks.rb
comfortable_mexican_sofa-1.0.33 lib/comfortable_mexican_sofa/view_hooks.rb
comfortable_mexican_sofa-1.0.32 lib/comfortable_mexican_sofa/view_hooks.rb
comfortable_mexican_sofa-1.0.31 lib/comfortable_mexican_sofa/view_hooks.rb
comfortable_mexican_sofa-1.0.30 lib/comfortable_mexican_sofa/view_hooks.rb
comfortable_mexican_sofa-1.0.29 lib/comfortable_mexican_sofa/view_hooks.rb
comfortable_mexican_sofa-1.0.28 lib/comfortable_mexican_sofa/view_hooks.rb
comfortable_mexican_sofa-1.0.27 lib/comfortable_mexican_sofa/view_hooks.rb
comfortable_mexican_sofa-1.0.26 lib/comfortable_mexican_sofa/view_hooks.rb