0
@@ -71,9 +71,9 @@ module ActionView
0
def number_to_currency(number, options = {})
0
options.symbolize_keys!
0
- defaults, currency = I18n.translate([:'number.format', :'number.currency.format'],
0
- :locale => options[:locale]) || [{},{}]
0
- defaults = defaults.merge(currency)
0
+ defaults = I18n.translate(:'number.format', :locale => options[:locale], :raise => true) rescue {}
0
+ currency = I18n.translate(:'number.currency.format', :locale => options[:locale], :raise => true) rescue {}
0
+ defaults = defaults.merge(currency)
0
precision = options[:precision] || defaults[:precision]
0
unit = options[:unit] || defaults[:unit]
0
@@ -109,9 +109,9 @@ module ActionView
0
def number_to_percentage(number, options = {})
0
options.symbolize_keys!
0
- defaults, percentage = I18n.translate([:'number.format', :'number.percentage.format'],
0
- :locale => options[:locale]) || [{},{}]
0
- defaults = defaults.merge(percentage)
0
+ defaults = I18n.translate(:'number.format', :locale => options[:locale], :raise => true) rescue {}
0
+ percentage = I18n.translate(:'number.percentage.format', :locale => options[:locale], :raise => true) rescue {}
0
+ defaults = defaults.merge(percentage)
0
precision = options[:precision] || defaults[:precision]
0
separator = options[:separator] || defaults[:separator]
0
@@ -151,7 +151,7 @@ module ActionView
0
options = args.extract_options!
0
options.symbolize_keys!
0
- defaults = I18n.translate(:'number.format', :locale => options[:locale]
) || {}
0
+ defaults = I18n.translate(:'number.format', :locale => options[:locale]
, :raise => true) rescue {}
0
ActiveSupport::Deprecation.warn('number_with_delimiter takes an option hash ' +
0
@@ -195,9 +195,10 @@ module ActionView
0
options = args.extract_options!
0
options.symbolize_keys!
0
- defaults, precision_defaults = I18n.translate([:'number.format', :'number.precision.format'],
0
- :locale => options[:locale]) || [{},{}]
0
- defaults = defaults.merge(precision_defaults)
0
+ defaults = I18n.translate(:'number.format', :locale => options[:locale], :raise => true) rescue {}
0
+ precision_defaults = I18n.translate(:'number.precision.format', :locale => options[:locale],
0
+ :raise => true) rescue {}
0
+ defaults = defaults.merge(precision_defaults)
0
ActiveSupport::Deprecation.warn('number_with_precision takes an option hash ' +
0
@@ -209,12 +210,14 @@ module ActionView
0
separator ||= (options[:separator] || defaults[:separator])
0
delimiter ||= (options[:delimiter] || defaults[:delimiter])
0
- rounded_number = (Float(number) * (10 ** precision)).round.to_f / 10 ** precision
0
- number_with_delimiter("%01.#{precision}f" % rounded_number,
0
- :separator => separator,
0
- :delimiter => delimiter)
0
+ rounded_number = (Float(number) * (10 ** precision)).round.to_f / 10 ** precision
0
+ number_with_delimiter("%01.#{precision}f" % rounded_number,
0
+ :separator => separator,
0
+ :delimiter => delimiter)
0
STORAGE_UNITS = %w( Bytes KB MB GB TB ).freeze
0
@@ -251,8 +254,8 @@ module ActionView
0
options = args.extract_options!
0
options.symbolize_keys!
0
- defaults, human = I18n.translate([:'number.format', :'number.human.format'],
0
- :locale => options[:locale]) || [{},{}]
0
+ defaults = I18n.translate(:'number.format', :locale => options[:locale], :raise => true) rescue {}
0
+ human = I18n.translate(:'number.human.format', :locale => options[:locale], :raise => true) rescue {}
0
defaults = defaults.merge(human)
0
@@ -272,13 +275,16 @@ module ActionView
0
number /= 1024 ** exponent
0
unit = STORAGE_UNITS[exponent]
0
- number_with_precision(number,
0
- :precision => precision,
0
- :separator => separator,
0
- :delimiter => delimiter
0
- ).sub(/(\d)(#{Regexp.escape(separator)}[1-9]*)?0+\z/, '\1') + " #{unit}"
0
+ escaped_separator = Regexp.escape(separator)
0
+ number_with_precision(number,
0
+ :precision => precision,
0
+ :separator => separator,
0
+ :delimiter => delimiter
0
+ ).sub(/(\d)(#{escaped_separator}[1-9]*)?0+\z/, '\1\2').sub(/#{escaped_separator}\z/, '') + " #{unit}"