Skip to content

Commit

Permalink
Merge pull request ryanb#211 from taavo/append_after_callbacks_inside…
Browse files Browse the repository at this point in the history
…_form

Append after_nested_form_callbacks inside form
  • Loading branch information
lest committed Oct 29, 2012
2 parents 9c54ac3 + 3fd30d5 commit 79060b8
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 10 deletions.
24 changes: 16 additions & 8 deletions lib/nested_form/view_helper.rb
Expand Up @@ -2,29 +2,37 @@

module NestedForm
module ViewHelper
def nested_form_for(*args, &block)
def nested_form_for(*args)
options = args.extract_options!.reverse_merge(:builder => NestedForm::Builder)
form_for(*(args << options), &block) << after_nested_form_callbacks
form_for(*(args << options)) do |f|
yield(f).to_s << after_nested_form_callbacks
end
end

if defined?(NestedForm::SimpleBuilder)
def simple_nested_form_for(*args, &block)
def simple_nested_form_for(*args)
options = args.extract_options!.reverse_merge(:builder => NestedForm::SimpleBuilder)
simple_form_for(*(args << options), &block) << after_nested_form_callbacks
simple_form_for(*(args << options)) do |f|
yield(f).to_s << after_nested_form_callbacks
end
end
end

if defined?(NestedForm::FormtasticBuilder)
def semantic_nested_form_for(*args, &block)
def semantic_nested_form_for(*args)
options = args.extract_options!.reverse_merge(:builder => NestedForm::FormtasticBuilder)
semantic_form_for(*(args << options), &block) << after_nested_form_callbacks
semantic_form_for(*(args << options)) do |f|
yield(f).to_s << after_nested_form_callbacks
end
end
end

if defined?(NestedForm::FormtasticBootstrapBuilder)
def semantic_bootstrap_nested_form_for(*args, &block)
def semantic_bootstrap_nested_form_for(*args)
options = args.extract_options!.reverse_merge(:builder => NestedForm::FormtasticBootstrapBuilder)
semantic_form_for(*(args << options), &block) << after_nested_form_callbacks
semantic_form_for(*(args << options)) do |f|
yield(f).to_s << after_nested_form_callbacks
end
end
end

Expand Down
15 changes: 13 additions & 2 deletions spec/nested_form/view_helper_spec.rb
Expand Up @@ -48,8 +48,19 @@
it "should append content to end of nested form" do
_view.after_nested_form(:tasks) { _view.concat("123") }
_view.after_nested_form(:milestones) { _view.concat("456") }
_view.nested_form_for(Project.new) {}
_view.output_buffer.should include("123456")
result = _view.nested_form_for(Project.new) {}
result.should include("123456")
end

if Rails.version >= "3.1.0"
it "should set multipart when there's a file field" do
_view.nested_form_for(Project.new) do |f|
f.fields_for(:tasks) do |t|
t.file_field :file
end
f.link_to_add "Add", :tasks
end.should include(" enctype=\"multipart/form-data\" ")
end
end
end

0 comments on commit 79060b8

Please sign in to comment.