Module: NavigationHelper
- Defined in:
- app/helpers/navigation_helper.rb
Instance Method Summary collapse
- #current_feature ⇒ Object
- #render_nav_for_feature(feature) ⇒ Object
- #render_nav_link(name, href, icon: "fa-circle-thin") ⇒ Object
- #render_nav_menu(name, items: [], icon: "fa-circle-thin") ⇒ Object
- #render_navigation(key) ⇒ Object
Instance Method Details
#current_feature ⇒ Object
11 12 13 14 15 16 |
# File 'app/helpers/navigation_helper.rb', line 11 def current_feature return nil unless current_project && current_project.persisted? @current_feature ||= current_project.features.find do |feature| current_page? feature_path(current_project, feature) end end |
#render_nav_for_feature(feature) ⇒ Object
18 19 20 21 22 23 |
# File 'app/helpers/navigation_helper.rb', line 18 def render_nav_for_feature(feature) feature = Houston.config.get_project_feature feature return unless feature.permitted?(current_ability, current_project) render_nav_link feature.name, feature.project_path(current_project), icon: feature.icon end |
#render_nav_link(name, href, icon: "fa-circle-thin") ⇒ Object
42 43 44 45 46 47 48 |
# File 'app/helpers/navigation_helper.rb', line 42 def render_nav_link(name, href, icon: "fa-circle-thin") if current_page? href "<li class=\"current\">#{_render_nav(name, icon: icon)}</li>".html_safe else "<li><a href=\"#{href}\" title=\"#{h name}\">#{_render_nav(name, icon: icon)}</a></li>".html_safe end end |
#render_nav_menu(name, items: [], icon: "fa-circle-thin") ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'app/helpers/navigation_helper.rb', line 25 def (name, items: [], icon: "fa-circle-thin") items.flatten! return "" if items.empty? " <li class=\"dropdown\">\n <a href=\"#\" title=\"\#{h name}\" class=\"dropdown-toggle\" data-toggle=\"dropdown\">\n \#{_render_nav(name, icon: icon)} <b class=\"caret\"></b>\n </a>\n <ul class=\"dropdown-menu releases-menu\">\n \#{items.map(&:to_html).join(\"\")}\n </ul>\n </li>\n HTML\nend\n".html_safe |
#render_navigation(key) ⇒ Object
3 4 5 6 7 8 9 |
# File 'app/helpers/navigation_helper.rb', line 3 def (key) renderer = Houston.config.(key) instance_eval &renderer rescue KeyError Rails.logger.error "\e[31;1mThere is no navigation renderer named #{key.inspect}\e[0m" nil end |