class SimpleNavigation::Renderer::Breadcrumbs
Renders an ItemContainer as a <div> element and its containing items as <a> elements. It only renders 'selected' elements.
By default, the renderer sets the item's key as dom_id for the rendered
<a> element unless the config option
autogenerate_item_ids
is set to false. The id can also be
explicitely specified by setting the id in the html-options of the
'item' method in the config/navigation.rb file. The
ItemContainer's dom_class and dom_id are applied to the surrounding
<div> element.
Public Instance Methods
render(item_container)
click to toggle source
# File lib/simple_navigation/rendering/renderer/breadcrumbs.rb, line 13 def render(item_container) content = a_tags(item_container).join(join_with) content_tag(:div, prefix_for(content) + content, {:id => item_container.dom_id, :class => item_container.dom_class}) end
Protected Instance Methods
join_with()
click to toggle source
# File lib/simple_navigation/rendering/renderer/breadcrumbs.rb, line 34 def join_with @join_with ||= options[:join_with] || " " end
link_options_for(item)
click to toggle source
Extracts the options relevant for the generated link
Calls superclass method
SimpleNavigation::Renderer::Base#link_options_for
# File lib/simple_navigation/rendering/renderer/breadcrumbs.rb, line 48 def link_options_for(item) if options[:allow_classes_and_ids] opts = super opts[:id] = "breadcrumb_#{opts[:id]}" if opts[:id] opts else {:method => item.method}.merge(item.html_options.except(:class,:id)) end end
prefix_for(content)
click to toggle source
# File lib/simple_navigation/rendering/renderer/breadcrumbs.rb, line 42 def prefix_for(content) content.empty? ? '' : options[:prefix] || '' end
suppress_link?(item)
click to toggle source
Calls superclass method
SimpleNavigation::Renderer::Base#suppress_link?
# File lib/simple_navigation/rendering/renderer/breadcrumbs.rb, line 38 def suppress_link?(item) super || (options[:static_leaf] && item.active_leaf_class) end