class SimpleNavigationRenderers::RenderedItem

Attributes

bootstrap_version[R]
divider[R]
header[R]
item[R]
level[R]
navbar_text[R]
options[R]
renderer[R]
split[R]

Public Class Methods

new( renderer, item, level, bootstrap_version ) click to toggle source
# File lib/simple_navigation_renderers/rendered_item.rb, line 11
def initialize( renderer, item, level, bootstrap_version )
  @renderer = renderer
  @item = item
  @level = level
  @bootstrap_version = bootstrap_version

  @options = item.html_options
  @navbar_text = options.delete(:navbar_text)
  @divider = options.delete(:divider)
  @header = options.delete(:header)
  @link_options = options.delete(:link) || {}
  @split = options.delete(:split)
end

Public Instance Methods

to_s() click to toggle source
# File lib/simple_navigation_renderers/rendered_item.rb, line 25
def to_s
  if navbar_text
    li_text
  elsif divider
    li_divider
  elsif header && (level != 1)
    li_header
  else
    li_link
  end
end

Private Instance Methods

caret() click to toggle source
# File lib/simple_navigation_renderers/rendered_item.rb, line 96
def caret
  content_tag(:b, '', class: "caret")
end
dropdown_part( name ) click to toggle source
li_divider() click to toggle source
# File lib/simple_navigation_renderers/rendered_item.rb, line 46
def li_divider
  options[:class] = [ options[:class], ((level == 1) ? "divider-vertical" : "divider") ].flatten.compact.join(' ')
  content_tag(:li, '', options)
end
li_header() click to toggle source
# File lib/simple_navigation_renderers/rendered_item.rb, line 51
def li_header
  options[:class] = [ options[:class], ((bootstrap_version == 3) ? "dropdown-header" : "nav-header") ].flatten.compact.join(' ')
  content_tag(:li, item.name, options)
end
li_text() click to toggle source
# File lib/simple_navigation_renderers/rendered_item.rb, line 42
def li_text
  content_tag(:li, content_tag(:p, item.name, {class: 'navbar-text'}), options)
end
splitted_dropdown_part() click to toggle source
# File lib/simple_navigation_renderers/rendered_item.rb, line 78
def splitted_dropdown_part
  item.sub_navigation.dom_class = [ item.sub_navigation.dom_class, "pull-right" ].flatten.compact.join(' ')
  link_options = {}
  options[:id] = nil
  options[:class] = [ options[:class], "dropdown-split-right" ].flatten.compact.join(' ')
  dropdown_part( caret )
end
splitted_simple_part() click to toggle source
# File lib/simple_navigation_renderers/rendered_item.rb, line 72
def splitted_simple_part
  main_li_options = options.dup
  main_li_options[:class] = [ main_li_options[:class], "dropdown-split-left" ].flatten.compact.join(' ')
  content_tag(:li, simple_link, main_li_options)
end