module LayoutByAction::Able::ClassMethods
Public Instance Methods
default_layout()
click to toggle source
# File lib/layout_by_action/able.rb, line 14 def default_layout @default_layout end
default_layout=(value)
click to toggle source
# File lib/layout_by_action/able.rb, line 10 def default_layout=(value) @default_layout = value end
layout_by_action(default=nil, actions_and_layouts)
click to toggle source
# File lib/layout_by_action/able.rb, line 22 def layout_by_action(default=nil, actions_and_layouts) include LayoutByAction::Able self.default_layout = default actions_and_layouts.each do |actions, layout| Array(actions).each do |action| layouts[action] = layout end end layout :layout_by_action end
layout_heirarchy(action_name)
click to toggle source
# File lib/layout_by_action/able.rb, line 33 def layout_heirarchy(action_name) ancestors.grep(Class).select do |klass| klass.ancestors.grep(Class).include?(ActionController::Base) end.select do |klass| klass != ActionController::Base end.collect do |klass| klass.layouts[action_name] || klass.default_layout end.compact end
layouts()
click to toggle source
# File lib/layout_by_action/able.rb, line 18 def layouts @layouts ||= HashWithIndifferentAccess.new end