Module: Quadro::NavigationHelper
- Defined in:
- app/helpers/quadro/navigation_helper.rb
Instance Method Summary collapse
- #dropdown_for(node, *args) ⇒ Object
- #link_or_dropdown_for(node, *args) ⇒ Object
- #navigation_for(node, *args) ⇒ Object
Instance Method Details
#dropdown_for(node, *args) ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'app/helpers/quadro/navigation_helper.rb', line 15 def dropdown_for(node, *args) return '' unless node = args[0] || {} content_tag :li, class: [:class] do concat(content_tag :a, (node.title + tag(:span, class: 'caret')).html_safe, class: 'dropdown', href: page_path(node)) concat(content_tag(:ul, class: 'dropdown-menu') do link_or_dropdown_for(node) end) end end |
#link_or_dropdown_for(node, *args) ⇒ Object
28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'app/helpers/quadro/navigation_helper.rb', line 28 def link_or_dropdown_for(node, *args) return '' unless node = args[0] || {} node.children.each do |child| css_class = 'active' if page.path_ids.include?(child.id) if child.has_children? concat dropdown_for child, class: 'dropdown' else concat content_tag :li, content_tag(:a, child.title, href: page_path(child)), class: css_class end end end |
#navigation_for(node, *args) ⇒ Object
3 4 5 6 7 8 9 10 11 12 13 |
# File 'app/helpers/quadro/navigation_helper.rb', line 3 def (node, *args) return '' unless node = args[0] || {} content_tag :ul, class: [:class] do unless node.is_childless? link_or_dropdown_for(node) end end.html_safe end |