module Crummy::ViewMethods

Public Instance Methods

add_crumb(name, url=nil, options={}) click to toggle source

Add a crumb to the crumbs array

# File lib/crummy/action_view.rb, line 9
def add_crumb(name, url=nil, options={})
  crumbs.push [name, url, options]
end
crumbs() click to toggle source

List the crumbs as an array

# File lib/crummy/action_view.rb, line 4
def crumbs
  @_crumbs ||= [] # Give me something to push to
end
render_crumbs(options = {}) { |crumbs, options| ... } click to toggle source

Render the list of crumbs using renderer

# File lib/crummy/action_view.rb, line 15
def render_crumbs(options = {})
  raise ArgumentError, "Renderer and block given" if options.has_key?(:renderer) && block_given?
  return yield(crumbs, options) if block_given?
  
  @_renderer ||= if options.has_key?(:renderer)
    options.delete(:renderer)
  else
    require 'crummy/standard_renderer'
    Crummy::StandardRenderer.new
  end

  @_renderer.render_crumbs(crumbs, options)
end