Class: Conjoin::Nav::Config
- Inherits:
-
Struct
- Object
- Struct
- Conjoin::Nav::Config
- Defined in:
- lib/conjoin/nav.rb
Instance Attribute Summary collapse
-
#app ⇒ Object
Returns the value of attribute app.
-
#block ⇒ Object
Returns the value of attribute block.
Instance Method Summary collapse
Instance Attribute Details
#app ⇒ Object
Returns the value of attribute app
24 25 26 |
# File 'lib/conjoin/nav.rb', line 24 def app @app end |
#block ⇒ Object
Returns the value of attribute block
24 25 26 |
# File 'lib/conjoin/nav.rb', line 24 def block @block end |
Instance Method Details
#add_menu(name, links) ⇒ Object
29 30 31 32 |
# File 'lib/conjoin/nav.rb', line 29 def name, links config.navs[name] ||= [] config.navs[name].concat links end |
#config ⇒ Object
58 59 60 |
# File 'lib/conjoin/nav.rb', line 58 def config Conjoin::Nav.settings end |
#load_nav(name) ⇒ Object
34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
# File 'lib/conjoin/nav.rb', line 34 def load_nav name if links = config.navs[name] loaded_links = [] links.each do |link| link = OpenStruct.new(link) if !link.if or app.instance_exec(&link.if) link.icon = config.icon_class + '-' + link.icon if link.icon link.active = app.req.env['REQUEST_PATH'][link.path] link.active_class = link.active ? config.active_class : false if link.active_class or !link.hidden loaded_links << link end end end else raise "There isn't a nav called: #{name}" end block.call loaded_links end |
#run ⇒ Object
25 26 27 |
# File 'lib/conjoin/nav.rb', line 25 def run self.instance_eval(&block) end |