Sha256: a2a8393870d25955ba655026e95240e87f075657f81174ddf58d17c3d1d265e2
Contents?: true
Size: 1.78 KB
Versions: 17
Compression:
Stored size: 1.78 KB
Contents
module KirguduBase module DynamicPages class FormBuilder < ::KirguduBase::DynamicPages::PageElementBuilder def initialize(name, &block) self.builder_options.merge!({ url: nil, http_method: nil, allow_client_validations: nil, is_ajax: nil, properties: nil, elements: nil, parent: nil }) super(name, &block) end def url(value) self.builder_options[:url] = value end def http_method(value) self.builder_options[:http_method] = value end def allow_client_validations(value) self.builder_options[:allow_client_validations] = value end def is_ajax(value) self.builder_options[:is_ajax] = value end def properties(&block) elements = ::KirguduBase::DynamicPages::FormPropertiesBlockBuilder.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 def elements elements = ::KirguduBase::DynamicPages::FormElementsBlockBuilder.new(&block).to_elements elements.each do |element| self.builder_options[:elements] = [] unless self.builder_options[:elements] self.builder_options[:elements] << element end end def parent(value) self.validate_empty_parameter('parent', value) self.builder_options[:parent] = value end def to_element element = ::KirguduBase::DynamicPages::Form.new self.build_element(element) self.validate_generated_element(element) element end end end end
Version data entries
17 entries across 17 versions & 1 rubygems