Class: Navigation::Builder

Inherits:
Base
  • Object
show all
Defined in:
lib/navigation/builder.rb

Overview

responsible for the initial menu building/configuration

Ex (config/initializers/navigation.rb):

RPH::Navigation::Builder.config do |navigation|
  navigation.define :primary do |menu|
    ...
  end
end

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Base

#normalize

Class Method Details

.config {|self.new| ... } ⇒ Object

Yields:

  • (self.new)


12
13
14
15
# File 'lib/navigation/builder.rb', line 12

def self.config
  # gives a Builder instance to the block
  yield self.new
end

Instance Method Details

#define(*args) {|Menu.new(normalize(name), options)| ... } ⇒ Object

accepts a name/key, and yields a Menu instance to the block

Yields:

Raises:



19
20
21
22
23
24
# File 'lib/navigation/builder.rb', line 19

def define(*args)
  name, options = args.first, args.extract_options!
  
  raise InvalidMenuDefinition, InvalidMenuDefinition.message if name.blank?
  yield Menu.new(normalize(name), options)
end