Class: KirguduBase::DynamicPages::EntryBuilder

Inherits:
PageElementBuilder show all
Defined in:
app/models/kirgudu_base/dynamic_pages/entry_builder.rb

Instance Method Summary collapse

Methods inherited from PageElementBuilder

#css_class, #enabled, #html_options, #id, #visible

Constructor Details

#initialize(name, &block) ⇒ EntryBuilder

Returns a new instance of EntryBuilder.



4
5
6
7
8
9
10
11
12
13
14
# File 'app/models/kirgudu_base/dynamic_pages/entry_builder.rb', line 4

def initialize(name, &block)

	self.builder_options.merge!({
		                            is_ajax: nil,
		                            properties: nil,
		                            parent: nil,
		                            http_method: nil
	                            })

	super(name, &block)
end

Instance Method Details

#http_method(value) ⇒ Object



16
17
18
# File 'app/models/kirgudu_base/dynamic_pages/entry_builder.rb', line 16

def http_method(value)
	self.builder_options[:http_method] = value
end

#is_ajax(value) ⇒ Object



24
25
26
# File 'app/models/kirgudu_base/dynamic_pages/entry_builder.rb', line 24

def is_ajax(value)
	self.builder_options[:is_ajax] = value
end

#parent(value) ⇒ Object



20
21
22
# File 'app/models/kirgudu_base/dynamic_pages/entry_builder.rb', line 20

def parent(value)
	self.builder_options[:parent] = value
end

#properties(&block) ⇒ Object



28
29
30
31
32
33
34
35
# File 'app/models/kirgudu_base/dynamic_pages/entry_builder.rb', line 28

def properties(&block)
	elements = ::KirguduBase::DynamicPages::EntryPropertiesBlockBuilder.new(&block).to_elements

	elements.each do |element|
		self.builder_options[:properties] = {} unless self.builder_options[:properties]
		self.builder_options[:properties][element.name] = element
	end
end

#to_elementObject



38
39
40
41
42
43
# File 'app/models/kirgudu_base/dynamic_pages/entry_builder.rb', line 38

def to_element
	element = ::KirguduBase::DynamicPages::Entry.new
	self.build_element(element)
	self.validate_generated_element(element)
	element
end