From cfee068b627a2aaf066bf003f678e50c8695e62c Mon Sep 17 00:00:00 2001 From: Carlos Antonio da Silva Date: Thu, 12 Jan 2012 20:15:02 -0200 Subject: Delegate data tag option to tag option for escaping --- actionpack/lib/action_view/helpers/tag_helper.rb | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/actionpack/lib/action_view/helpers/tag_helper.rb b/actionpack/lib/action_view/helpers/tag_helper.rb index e5fd11e021..d7a2651bad 100644 --- a/actionpack/lib/action_view/helpers/tag_helper.rb +++ b/actionpack/lib/action_view/helpers/tag_helper.rb @@ -134,7 +134,7 @@ module ActionView attrs = [] options.each_pair do |key, value| if key.to_s == 'data' && value.is_a?(Hash) - value.each do |k, v| + value.each_pair do |k, v| attrs << data_tag_option(k, v, escape) end elsif BOOLEAN_ATTRIBUTES.include?(key) @@ -146,10 +146,11 @@ module ActionView " #{attrs.sort * ' '}".html_safe unless attrs.empty? end - def data_tag_option(k, v, escape) - v = v.to_json if !v.is_a?(String) && !v.is_a?(Symbol) - v = ERB::Util.h(v) if escape - %(data-#{k.to_s.dasherize}="#{v}") + def data_tag_option(key, value, escape) + key = "data-#{key.to_s.dasherize}" + value = value.to_json if !value.is_a?(String) && !value.is_a?(Symbol) + + tag_option(key, value, escape) end def boolean_tag_option(key) -- cgit v1.2.3