Module: Merb::Helpers::Form
- Defined in:
- lib/merb_helpers_monkey.rb,
lib/merb_helpers_monkey.rb
Overview
– merb-helpers-1.0/lib/merb-helpers/helper.rb ++
Instance Method Summary collapse
- #_radio_button_orig ⇒ Object
-
#fields_for(name, attrs = {}, &blk) ⇒ Object
– def fields_for(name, attrs = {}, &blk) attrs ||= {} with_form_context(name, attrs.delete(:builder)) do capture(&blk) end end ++.
-
#fieldset_for(name, attrs = {}, &blk) ⇒ Object
– def fieldset_for(name, attrs = {}, &blk) with_form_context(name, attrs.delete(:builder), attrs.delete(:index_by)) do current_form_context.fieldset(attrs, &blk) end end ++.
-
#form_for(name, attrs = {}, &blk) ⇒ Object
– def form_for(name, attrs = {}, &blk) with_form_context(name, attrs.delete(:builder)) do current_form_context.form(attrs, &blk) end end ++.
- #radio_button(*args) ⇒ Object
-
#with_form_context(name, builder, index_by = nil) ⇒ Object
– def with_form_context(name, builder) form_contexts.push(_new_form_context(name, builder)) ret = yield form_contexts.pop ret end ++.
Instance Method Details
#_radio_button_orig ⇒ Object
19 |
# File 'lib/merb_helpers_monkey.rb', line 19 alias |
#fields_for(name, attrs = {}, &blk) ⇒ Object
– def fields_for(name, attrs = {}, &blk)
attrs ||= {}
with_form_context(name, attrs.delete(:builder)) do
capture(&blk)
end
end ++
168 169 170 171 172 173 |
# File 'lib/merb_helpers_monkey.rb', line 168 def fields_for(name, attrs = {}, &blk) attrs ||= {} with_form_context(name, attrs.delete(:builder), attrs.delete(:index_by)) do capture(&blk) end end |
#fieldset_for(name, attrs = {}, &blk) ⇒ Object
– def fieldset_for(name, attrs = {}, &blk)
with_form_context(name, attrs.delete(:builder), attrs.delete(:index_by)) do
current_form_context.fieldset(attrs, &blk)
end
end ++
182 183 184 185 186 |
# File 'lib/merb_helpers_monkey.rb', line 182 def fieldset_for(name, attrs = {}, &blk) with_form_context(name, attrs.delete(:builder)) do current_form_context.fieldset(attrs, &blk) end end |
#form_for(name, attrs = {}, &blk) ⇒ Object
– def form_for(name, attrs = {}, &blk)
with_form_context(name, attrs.delete(:builder)) do
current_form_context.form(attrs, &blk)
end
end ++
154 155 156 157 158 |
# File 'lib/merb_helpers_monkey.rb', line 154 def form_for(name, attrs = {}, &blk) with_form_context(name, attrs.delete(:builder), attrs.delete(:index_by)) do current_form_context.form(attrs, &blk) end end |
#radio_button(*args) ⇒ Object
21 22 23 24 25 26 |
# File 'lib/merb_helpers_monkey.rb', line 21 def (*args) if (opts = args.last).is_a?(Hash) opts[:checked] = "checked" if opts.delete(:checked) end (*args) end |
#with_form_context(name, builder, index_by = nil) ⇒ Object
– def with_form_context(name, builder)
form_contexts.push(_new_form_context(name, builder))
ret = yield
form_contexts.pop
ret
end ++
135 136 137 138 139 140 141 142 143 144 145 |
# File 'lib/merb_helpers_monkey.rb', line 135 def with_form_context(name, builder, index_by=nil) form_contexts.push(c = _new_form_context(name, builder)) if index_by c.instance_variable_set("@index_by", index_by) if index_by index = c.instance_variable_get("@obj").__send__(index_by) c.instance_variable_set("@index", index) end ret = yield form_contexts.pop ret end |