Module: Quadro::NavigationHelper

Defined in:
app/helpers/quadro/navigation_helper.rb

Instance Method Summary collapse

Instance Method Details



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

  options = args[0] || {}

   :li, class: options[:class] do
    concat( :a, (node.title + tag(:span, class: 'caret')).html_safe, class: 'dropdown', href: page_path(node))
    concat((:ul, class: 'dropdown-menu') do
      link_or_dropdown_for(node)
    end)
  end
end


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

  options = 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  :li, (:a, child.title, href: page_path(child)), class: css_class
    end
  end
end


3
4
5
6
7
8
9
10
11
12
13
# File 'app/helpers/quadro/navigation_helper.rb', line 3

def navigation_for(node, *args)
  return '' unless node

  options = args[0] || {}

   :ul, class: options[:class] do
    unless node.is_childless?
      link_or_dropdown_for(node)
    end
  end.html_safe
end