Sha256: dbd4f2680eb33e975645855b88289400236c322fe9f7d356196861b3fe8c09bc

Contents?: true

Size: 1.36 KB

Versions: 1

Compression:

Stored size: 1.36 KB

Contents

# 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 <tt>autogenerate_item_ids</tt> 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.
#
module HomePage
  module SimpleNavigationRenderer
    class BreadcrumbsWithoutMethodLinks < ::SimpleNavigation::Renderer::Breadcrumbs
      protected
    
      def a_tags(item_container, parent_list = [])
        item_container.items.inject([]) do |list, item|
          if item.method.blank? && item.selected?
            unless parent_list.join('').match(item.url.split('#').first)
              item_options = options_for(item)
              breadcrumb_title = nil; breadcrumb_title = item_options.delete(:breadcrumb_title)
              list << (breadcrumb_title.present? ? link_to(breadcrumb_title, item.url, item_options) : tag_for(item))
            end
            
            if include_sub_navigation?(item)
              list.concat a_tags(item.sub_navigation, list.clone)
            end
          end
          
          list
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
home_page-0.0.6 lib/home_page/simple_navigation_renderer/breadcrumbs_without_method_links.rb