Class: KirguduBase::DynamicPages::FormPropertyBuilder

Inherits:
PropertyBuilder show all
Defined in:
app/models/kirgudu_base/dynamic_pages/form_property_builder.rb

Instance Method Summary collapse

Methods inherited from PropertyBuilder

#data_source, #description, #format, #help, #label, #parent, #placeholder, #text_value_property, #tooltip, #use_i18n

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) ⇒ FormPropertyBuilder

Returns a new instance of FormPropertyBuilder.



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

def initialize(name, &block)
	self.builder_options.merge!(
		{
			input_type: :text_edit,
			max_length: 0,
			read_only: :false,
			events: nil
		}
	)
	super(name, &block)
end

Instance Method Details

#events(&block) ⇒ Object



18
19
20
21
22
23
24
25
# File 'app/models/kirgudu_base/dynamic_pages/form_property_builder.rb', line 18

def events(&block)
	elements = ::KirguduBase::DynamicPages::PropertyEventsBlockBuilder.new(&block).to_elements

	elements.each do |element|
		self.builder_options[:events] = [] unless self.builder_options[:events]
		self.builder_options[:events] << element
	end
end

#input_type(value) ⇒ Object



28
29
30
# File 'app/models/kirgudu_base/dynamic_pages/form_property_builder.rb', line 28

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

#max_length(value) ⇒ Object



32
33
34
# File 'app/models/kirgudu_base/dynamic_pages/form_property_builder.rb', line 32

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

#read_only(value) ⇒ Object



36
37
38
# File 'app/models/kirgudu_base/dynamic_pages/form_property_builder.rb', line 36

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

#to_elementObject



41
42
43
44
45
46
# File 'app/models/kirgudu_base/dynamic_pages/form_property_builder.rb', line 41

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