Class: Navgate
- Inherits:
-
Object
- Object
- Navgate
- Defined in:
- lib/navgate.rb
Defined Under Namespace
Classes: Builder
Instance Attribute Summary collapse
-
#controllers ⇒ Object
Returns the value of attribute controllers.
-
#navs ⇒ Object
Returns the value of attribute navs.
Instance Method Summary collapse
-
#initialize {|_self| ... } ⇒ Navgate
constructor
A new instance of Navgate.
- #render_nav(params, options) ⇒ Object
- #select(params) ⇒ Object
Constructor Details
#initialize {|_self| ... } ⇒ Navgate
Returns a new instance of Navgate.
77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'lib/navgate.rb', line 77 def initialize self.controllers = Rails.application.routes.routes.map do |route| route.defaults[:controller] end.uniq.compact yield(self) raise TypeError, "Expected Navgate:Builder or string" unless not_bad_type?(self.navs) if self.navs.is_a?(String) setup = YAML.load_file(self.navs) temp = [] setup.each do || temp.push(Navgate::Builder.new do || [:selection] = [1]['selection'].split(" ") [:default] = [1]['default'] || nill [:namespace] = [1]['namespace'] || nil [:prefix] = [1]['prefix'] || nil [:controller] = [1]['controller'] || nil end ) end self.navs = temp end end |
Instance Attribute Details
#controllers ⇒ Object
Returns the value of attribute controllers.
75 76 77 |
# File 'lib/navgate.rb', line 75 def controllers @controllers end |
#navs ⇒ Object
Returns the value of attribute navs.
75 76 77 |
# File 'lib/navgate.rb', line 75 def navs @navs end |
Instance Method Details
#render_nav(params, options) ⇒ Object
102 103 104 |
# File 'lib/navgate.rb', line 102 def render_nav params, select_nav(params[:controller]).render_it_with().html_safe end |
#select(params) ⇒ Object
106 107 108 109 |
# File 'lib/navgate.rb', line 106 def select params nav = select_nav(params[:controller]) return params[:selection] ? params[:selection] : nav.default end |