From 7160ab1c18738ad357b68922b23ef47b204eef98 Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Thu, 19 May 2005 19:08:16 +0000 Subject: [PATCH] Fixed escaping of :method option in remote_form_tag #1218 [Rick Olson] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1328 5ecf4fe2-1ee6-0310-87b1-e25e094e27de --- actionpack/CHANGELOG | 2 ++ actionpack/lib/action_view/helpers/javascript_helper.rb | 6 +++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/actionpack/CHANGELOG b/actionpack/CHANGELOG index 90d69207e6..aca576feb7 100644 --- a/actionpack/CHANGELOG +++ b/actionpack/CHANGELOG @@ -1,5 +1,7 @@ *SVN* +* Fixed escaping of :method option in remote_form_tag #1218 [Rick Olson] + * Added Serbia and Montenegro to the country_select #1239 [todd@robotcoop.com] * Fixed Request#remote_ip in testing #1251 [bitsweat] diff --git a/actionpack/lib/action_view/helpers/javascript_helper.rb b/actionpack/lib/action_view/helpers/javascript_helper.rb index c897c5e8b8..11f513c01c 100644 --- a/actionpack/lib/action_view/helpers/javascript_helper.rb +++ b/actionpack/lib/action_view/helpers/javascript_helper.rb @@ -193,7 +193,7 @@ def options_for_ajax(options) js_options = build_callbacks(options) js_options['asynchronous'] = options[:type] != :synchronous - js_options['method'] = options[:method] if options[:method] + js_options['method'] = method_option_to_s(options[:method]) if options[:method] js_options['insertion'] = "Insertion.#{options[:position].to_s.camelize}" if options[:position] if options[:form] @@ -205,6 +205,10 @@ def options_for_ajax(options) '{' + js_options.map {|k, v| "#{k}:#{v}"}.join(', ') + '}' end + def method_option_to_s(method) + (method.is_a?(String) and !method.index("'").nil?) ? method : "'#{method}'" + end + def build_observer(klass, name, options = {}) options[:with] ||= 'value' if options[:update] callback = remote_function(options) -- GitLab