Class: KirguduBase::DynamicPages::MenuItemBuilder
Instance Method Summary
collapse
#css_class, #enabled, #html_options, #id, #visible
Constructor Details
Returns a new instance of MenuItemBuilder.
4
5
6
7
8
9
10
11
12
13
14
|
# File 'app/models/kirgudu_base/dynamic_pages/menu_item_builder.rb', line 4
def initialize(&block)
self.builder_options.merge!({
items: nil,
target: :same,
label: nil,
url: nil
})
super(nil, &block)
end
|
Instance Method Details
#items(&block) ⇒ Object
20
21
22
23
24
25
26
27
|
# File 'app/models/kirgudu_base/dynamic_pages/menu_item_builder.rb', line 20
def items(&block)
elements = ::KirguduBase::DynamicPages::.new(&block).to_elements
elements.each do |element|
self.builder_options[:items] = [] unless self.builder_options[:items]
self.builder_options[:items] << element
end
end
|
#label(value) ⇒ Object
16
17
18
|
# File 'app/models/kirgudu_base/dynamic_pages/menu_item_builder.rb', line 16
def label(value)
self.builder_options[:label] = value
end
|
#to_element ⇒ Object
33
34
35
36
37
38
|
# File 'app/models/kirgudu_base/dynamic_pages/menu_item_builder.rb', line 33
def to_element
element = ::KirguduBase::DynamicPages::.new
self.build_element(element)
self.validate_generated_element(element)
element
end
|
#url(url_data = nil, &block) ⇒ Object
29
30
31
|
# File 'app/models/kirgudu_base/dynamic_pages/menu_item_builder.rb', line 29
def url(url_data = nil, &block)
self.builder_options[:url] = ::KirguduBase::DynamicPages::UrlBuilder.new(url_data, &block).to_element
end
|