Sha256: 644534b69547768d90fb6a62e25435797b89df298cc36ff4dcbc5d91817a0408
Contents?: true
Size: 804 Bytes
Versions: 3
Compression:
Stored size: 804 Bytes
Contents
module ComfyPress::ViewHooks # Array of declared hooks def self.hooks @@hooks ||= { } end # Renders hook content def self.render(name, template, options = {}) out = '' (self.hooks[name.to_sym] || []).each do |path| out += template.render({:partial => path.first}.merge(options)) end return out.html_safe end # Will declare a partial that will be rendered for this hook # Example: # ComfyPress::ViewHooks.add(:navigation, 'shared/navigation') def self.add(name, partial_path, position = 0) self.hooks[name.to_sym] ||= [] self.hooks[name.to_sym] << [partial_path, position] self.hooks[name.to_sym].sort_by! { |hook| hook.last } end # Removing previously declared hook def self.remove(name) self.hooks.delete(name) end end
Version data entries
3 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
comfypress-0.1.4 | db/lib/comfypress/view_hooks.rb |
comfypress-0.1.4 | lib/comfypress/view_hooks.rb |
comfypress-0.1.3 | lib/comfypress/view_hooks.rb |