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

#enabled, #html_options, #id, #visible

Methods inherited from Builder

#build_element, #builder_options, #valiadte_interger_parameter, #valiadte_interger_positive_parameter, #validate_empty_parameter, #validate_generated_element, #validate_string_or_symbol_parameter, #validate_string_parameter, #validate_symbol_parameter

Constructor Details

#initialize(name, &block) ⇒ EntryBuilder

Returns a new instance of EntryBuilder.



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

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



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

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

#is_ajax(value) ⇒ Object



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

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

#parent(value) ⇒ Object



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

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

#properties(&block) ⇒ Object



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

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



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

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