aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib
diff options
context:
space:
mode:
Diffstat (limited to 'actionpack/lib')
-rw-r--r--actionpack/lib/action_view/helpers/number_helper.rb10
1 files changed, 6 insertions, 4 deletions
diff --git a/actionpack/lib/action_view/helpers/number_helper.rb b/actionpack/lib/action_view/helpers/number_helper.rb
index 0bb1cdea51..b2842f5f8c 100644
--- a/actionpack/lib/action_view/helpers/number_helper.rb
+++ b/actionpack/lib/action_view/helpers/number_helper.rb
@@ -63,14 +63,16 @@ module ActionView
extension = options[:extension]
country_code = options[:country_code]
- str = ""
- str << "+#{country_code}#{delimiter}" unless country_code.blank?
- str << if area_code
+ if area_code
number.gsub!(/([0-9]{1,3})([0-9]{3})([0-9]{4}$)/,"(\\1) \\2#{delimiter}\\3")
else
number.gsub!(/([0-9]{0,3})([0-9]{3})([0-9]{4})$/,"\\1#{delimiter}\\2#{delimiter}\\3")
- number.starts_with?('-') ? number.slice!(1..-1) : number
+ number.slice!(0, 1) if number.starts_with?('-')
end
+
+ str = ""
+ str << "+#{country_code}#{delimiter}" unless country_code.blank?
+ str << number
str << " x #{extension}" unless extension.blank?
html_escape(str)
end