Class: Effective::FormBuilder
- Inherits:
-
ActionView::Helpers::FormBuilder
- Object
- ActionView::Helpers::FormBuilder
- Effective::FormBuilder
- Defined in:
- app/models/effective/form_builder.rb
Instance Attribute Summary collapse
-
#action ⇒ Object
Returns the value of attribute action.
-
#disabled ⇒ Object
Returns the value of attribute disabled.
-
#layout ⇒ Object
Returns the value of attribute layout.
-
#readonly ⇒ Object
Returns the value of attribute readonly.
-
#remote ⇒ Object
Returns the value of attribute remote.
-
#template ⇒ Object
Returns the value of attribute template.
Instance Method Summary collapse
- #check_box(name, options = {}) ⇒ Object
- #checks(name, choices = nil, *args) ⇒ Object
- #date_field(name, options = {}) ⇒ Object
- #datetime_field(name, options = {}) ⇒ Object
- #delete(name = 'Remove', url = nil, options = {}, &block) ⇒ Object
- #editor(name, options = {}, &block) ⇒ Object
- #email_field(name, options = {}) ⇒ Object
- #error(name = nil, options = {}) ⇒ Object (also: #errors)
- #file_field(name, options = {}) ⇒ Object
- #form_group(name = nil, options = {}, &block) ⇒ Object
-
#initialize(object_name, object, template, options) ⇒ FormBuilder
constructor
A new instance of FormBuilder.
- #number_field(name, options = {}) ⇒ Object
- #password_field(name, options = {}) ⇒ Object
- #phone_field(name, options = {}) ⇒ Object (also: #tel_field, #telephone_field)
- #price_field(name, options = {}) ⇒ Object
- #radios(name, choices = nil, *args) ⇒ Object
-
#remote_link_to(name, url, options = {}, &block) ⇒ Object
This is gonna be a post?.
- #save(name = 'Save', options = {}) ⇒ Object
- #select(name, choices = nil, *args) ⇒ Object
- #static_field(name, options = {}, &block) ⇒ Object
- #submit(name = 'Save', options = {}, &block) ⇒ Object
- #super_text_field ⇒ Object
- #text_area(name, options = {}) ⇒ Object
- #text_field(name, options = {}) ⇒ Object
- #time_field(name, options = {}) ⇒ Object
- #url_field(name, options = {}) ⇒ Object
Constructor Details
#initialize(object_name, object, template, options) ⇒ FormBuilder
Returns a new instance of FormBuilder.
8 9 10 11 12 13 14 15 16 17 18 |
# File 'app/models/effective/form_builder.rb', line 8 def initialize(object_name, object, template, ) @template = template @layout = (.delete(:layout) || :vertical).to_sym @action = .delete(:action) @readonly = .delete(:readonly) @disabled = .delete(:disabled) @remote = [:remote] super end |
Instance Attribute Details
#action ⇒ Object
Returns the value of attribute action.
4 5 6 |
# File 'app/models/effective/form_builder.rb', line 4 def action @action end |
#disabled ⇒ Object
Returns the value of attribute disabled.
4 5 6 |
# File 'app/models/effective/form_builder.rb', line 4 def disabled @disabled end |
#layout ⇒ Object
Returns the value of attribute layout.
4 5 6 |
# File 'app/models/effective/form_builder.rb', line 4 def layout @layout end |
#readonly ⇒ Object
Returns the value of attribute readonly.
4 5 6 |
# File 'app/models/effective/form_builder.rb', line 4 def readonly @readonly end |
#remote ⇒ Object
Returns the value of attribute remote.
4 5 6 |
# File 'app/models/effective/form_builder.rb', line 4 def remote @remote end |
#template ⇒ Object
Returns the value of attribute template.
4 5 6 |
# File 'app/models/effective/form_builder.rb', line 4 def template @template end |
Instance Method Details
#check_box(name, options = {}) ⇒ Object
22 23 24 |
# File 'app/models/effective/form_builder.rb', line 22 def check_box(name, = {}) Effective::FormInputs::CheckBox.new(name, , builder: self).to_html { super(name, ) } end |
#checks(name, choices = nil, *args) ⇒ Object
26 27 28 29 |
# File 'app/models/effective/form_builder.rb', line 26 def checks(name, choices = nil, *args) = args..merge!(collection: choices) Effective::FormInputs::Checks.new(name, , builder: self).to_html end |
#date_field(name, options = {}) ⇒ Object
31 32 33 |
# File 'app/models/effective/form_builder.rb', line 31 def date_field(name, = {}) Effective::FormInputs::DateField.new(name, , builder: self).to_html { super(name, ) } end |
#datetime_field(name, options = {}) ⇒ Object
35 36 37 |
# File 'app/models/effective/form_builder.rb', line 35 def datetime_field(name, = {}) Effective::FormInputs::DatetimeField.new(name, , builder: self).to_html { super(name, ) } end |
#delete(name = 'Remove', url = nil, options = {}, &block) ⇒ Object
39 40 41 42 |
# File 'app/models/effective/form_builder.rb', line 39 def delete(name = 'Remove', url = nil, = {}, &block) [:href] ||= url Effective::FormInputs::Delete.new(name, , builder: self).to_html(&block) end |
#editor(name, options = {}, &block) ⇒ Object
44 45 46 |
# File 'app/models/effective/form_builder.rb', line 44 def editor(name, = {}, &block) Effective::FormInputs::Editor.new(name, , builder: self).to_html(&block) end |
#email_field(name, options = {}) ⇒ Object
48 49 50 |
# File 'app/models/effective/form_builder.rb', line 48 def email_field(name, = {}) Effective::FormInputs::EmailField.new(name, , builder: self).to_html { super(name, ) } end |
#error(name = nil, options = {}) ⇒ Object Also known as: errors
52 53 54 |
# File 'app/models/effective/form_builder.rb', line 52 def error(name = nil, = {}) Effective::FormInputs::ErrorField.new(name, , builder: self).to_html() end |
#file_field(name, options = {}) ⇒ Object
57 58 59 |
# File 'app/models/effective/form_builder.rb', line 57 def file_field(name, = {}) Effective::FormInputs::FileField.new(name, , builder: self).to_html { super(name, ) } end |
#form_group(name = nil, options = {}, &block) ⇒ Object
61 62 63 |
# File 'app/models/effective/form_builder.rb', line 61 def form_group(name = nil, = {}, &block) Effective::FormInputs::FormGroup.new(name, , builder: self).to_html(&block) end |
#number_field(name, options = {}) ⇒ Object
71 72 73 |
# File 'app/models/effective/form_builder.rb', line 71 def number_field(name, = {}) Effective::FormInputs::NumberField.new(name, , builder: self).to_html { super(name, ) } end |
#password_field(name, options = {}) ⇒ Object
75 76 77 |
# File 'app/models/effective/form_builder.rb', line 75 def password_field(name, = {}) Effective::FormInputs::PasswordField.new(name, , builder: self).to_html { super(name, ) } end |
#phone_field(name, options = {}) ⇒ Object Also known as: tel_field, telephone_field
79 80 81 |
# File 'app/models/effective/form_builder.rb', line 79 def phone_field(name, = {}) Effective::FormInputs::PhoneField.new(name, , builder: self).to_html { super(name, ) } end |
#price_field(name, options = {}) ⇒ Object
85 86 87 |
# File 'app/models/effective/form_builder.rb', line 85 def price_field(name, = {}) Effective::FormInputs::PriceField.new(name, , builder: self).to_html { super(name, ) } end |
#radios(name, choices = nil, *args) ⇒ Object
109 110 111 112 |
# File 'app/models/effective/form_builder.rb', line 109 def radios(name, choices = nil, *args) = args..merge!(collection: choices) Effective::FormInputs::Radios.new(name, , builder: self).to_html end |
#remote_link_to(name, url, options = {}, &block) ⇒ Object
This is gonna be a post?
66 67 68 69 |
# File 'app/models/effective/form_builder.rb', line 66 def remote_link_to(name, url, = {}, &block) [:href] ||= url Effective::FormInputs::RemoteLinkTo.new(name, , builder: self).to_html(&block) end |
#save(name = 'Save', options = {}) ⇒ Object
89 90 91 92 |
# File 'app/models/effective/form_builder.rb', line 89 def save(name = 'Save', = {}) ( = name; name = 'Save') if name.kind_of?(Hash) Effective::FormInputs::Save.new(name, , builder: self).to_html { super(name, ) } end |
#select(name, choices = nil, *args) ⇒ Object
94 95 96 97 |
# File 'app/models/effective/form_builder.rb', line 94 def select(name, choices = nil, *args) = args..merge!(collection: choices) Effective::FormInputs::Select.new(name, , builder: self).to_html end |
#static_field(name, options = {}, &block) ⇒ Object
104 105 106 107 |
# File 'app/models/effective/form_builder.rb', line 104 def static_field(name, = {}, &block) = { value: } if .kind_of?(String) Effective::FormInputs::StaticField.new(name, , builder: self).to_html(&block) end |
#submit(name = 'Save', options = {}, &block) ⇒ Object
99 100 101 102 |
# File 'app/models/effective/form_builder.rb', line 99 def submit(name = 'Save', = {}, &block) ( = name; name = 'Save') if name.kind_of?(Hash) Effective::FormInputs::Submit.new(name, , builder: self).to_html(&block) end |
#super_text_field ⇒ Object
20 |
# File 'app/models/effective/form_builder.rb', line 20 alias_method :super_text_field, :text_field |
#text_area(name, options = {}) ⇒ Object
114 115 116 |
# File 'app/models/effective/form_builder.rb', line 114 def text_area(name, = {}) Effective::FormInputs::TextArea.new(name, , builder: self).to_html { super(name, ) } end |
#text_field(name, options = {}) ⇒ Object
118 119 120 |
# File 'app/models/effective/form_builder.rb', line 118 def text_field(name, = {}) Effective::FormInputs::TextField.new(name, , builder: self).to_html { super(name, ) } end |
#time_field(name, options = {}) ⇒ Object
122 123 124 |
# File 'app/models/effective/form_builder.rb', line 122 def time_field(name, = {}) Effective::FormInputs::TimeField.new(name, , builder: self).to_html { super(name, ) } end |
#url_field(name, options = {}) ⇒ Object
126 127 128 |
# File 'app/models/effective/form_builder.rb', line 126 def url_field(name, = {}) Effective::FormInputs::UrlField.new(name, , builder: self).to_html { super(name, ) } end |