I no longer maintain this. It is looking for a new home.
Ruby
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
gemfiles
lib
test
Appraisals
Gemfile
Gemfile.lock
MIT-LICENSE
Rakefile
Readme.rdoc
init.rb
responds_to_parent.gemspec

Readme.rdoc

Adds responds_to_parent to your controller to respond to the parent document of your page. Make Ajaxy file uploads by posting the form to a hidden iframe, and respond with RJS to the parent window.

Example

Controller:

class Test < ActionController::Base
  def main
  end

  def form_action
    # Do stuff with params[:uploaded_file]

    responds_to_parent do
      render :update do |page|
        page << "alert($('stuff').innerHTML)"
      end
    end
  end
end

main.rhtml:

<html>
  <body>
    <div id="stuff">Here is some stuff</div>

    <form target="frame" action="form_action">
      <input type="file" name="uploaded_file"/>
      <input type="submit"/>
    </form>

    <iframe id='frame' name="frame"></iframe>
  </body>
</html>

Author

Sean Treadway, Licence: MIT