aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack
diff options
context:
space:
mode:
authorDaniel Schierbeck <daniel.schierbeck@gmail.com>2011-08-23 13:42:36 +0200
committerAndrew White <andyw@pixeltrix.co.uk>2011-08-24 11:36:45 +0100
commiteb0b71478ad4c37fdc4ec77bf2cf7c6b65dd36c4 (patch)
tree346b3744c0cefc8f2809297f7addf0a8642cff3c /actionpack
parent29004de1a2ded5e8705d421ffe60ff6f631110b1 (diff)
downloadrails-eb0b71478ad4c37fdc4ec77bf2cf7c6b65dd36c4.tar.gz
rails-eb0b71478ad4c37fdc4ec77bf2cf7c6b65dd36c4.tar.bz2
rails-eb0b71478ad4c37fdc4ec77bf2cf7c6b65dd36c4.zip
Simplify JavaScriptHelper#escape_javascript
Use the Linus-style conditional. Also fix the documentation slightly. Signed-off-by: Andrew White <andyw@pixeltrix.co.uk>
Diffstat (limited to 'actionpack')
-rw-r--r--actionpack/lib/action_view/helpers/javascript_helper.rb13
1 files changed, 6 insertions, 7 deletions
diff --git a/actionpack/lib/action_view/helpers/javascript_helper.rb b/actionpack/lib/action_view/helpers/javascript_helper.rb
index 474ea53f91..d01e62378b 100644
--- a/actionpack/lib/action_view/helpers/javascript_helper.rb
+++ b/actionpack/lib/action_view/helpers/javascript_helper.rb
@@ -20,17 +20,16 @@ module ActionView
JS_ESCAPE_MAP["\342\200\250"] = '&#x2028;'
end
- # Escape carrier returns and single and double quotes for JavaScript segments.
+ # Escapes carriage returns and single and double quotes for JavaScript segments.
+ #
# Also available through the alias j(). This is particularly helpful in JavaScript responses, like:
#
# $('some_element').replaceWith('<%=j render 'some/element_template' %>');
def escape_javascript(javascript)
- if javascript
- result = javascript.gsub(/(\\|<\/|\r\n|\342\200\250|[\n\r"'])/u) {|match| JS_ESCAPE_MAP[match] }
- javascript.html_safe? ? result.html_safe : result
- else
- ''
- end
+ return "" if javascript.empty?
+
+ result = javascript.gsub(/(\\|<\/|\r\n|\342\200\250|[\n\r"'])/u) {|match| JS_ESCAPE_MAP[match] }
+ javascript.html_safe? ? result.html_safe : result
end
alias_method :j, :escape_javascript