air18n 0.1.55 → 0.1.56
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/air18n.rb +0 -8
- data/lib/air18n/class_methods.rb +14 -1
- data/lib/air18n/version.rb +1 -1
- data/spec/lib/air18n/air18n_spec.rb +7 -0
- metadata +2 -2
data/lib/air18n.rb
CHANGED
@@ -16,10 +16,6 @@ module Air18n
|
|
16
16
|
|
17
17
|
def self.included(base)
|
18
18
|
base.class_eval do
|
19
|
-
# Currencies that correspond to users who want distance unit to be
|
20
|
-
# miles.
|
21
|
-
self.const_set(:MILES_CURRENCIES, ['USD', 'GBP'])
|
22
|
-
|
23
19
|
class << self
|
24
20
|
extend ActiveSupport::Memoizable
|
25
21
|
|
@@ -50,10 +46,6 @@ module Air18n
|
|
50
46
|
@currency = 'USD'
|
51
47
|
attr_reader :currency
|
52
48
|
|
53
|
-
# Distance unit, 'MI' or 'KM'.
|
54
|
-
@distance_unit = 'KM'
|
55
|
-
attr_reader :distance_unit
|
56
|
-
|
57
49
|
# Cache used to store translation data from the database.
|
58
50
|
attr_accessor :cache
|
59
51
|
|
data/lib/air18n/class_methods.rb
CHANGED
@@ -57,6 +57,20 @@ module Air18n
|
|
57
57
|
ret
|
58
58
|
end
|
59
59
|
|
60
|
+
# Returns whether or not imperial lengths are appropriate under
|
61
|
+
# I18n.full_locale and I18n.tld_country.
|
62
|
+
def uses_imperial_lengths?
|
63
|
+
uses_imperial_lengths_in_locale_and_country(I18n.full_locale, I18n.tld_country)
|
64
|
+
end
|
65
|
+
|
66
|
+
# Returns whether or not imperial lengths are appropriate for given locale
|
67
|
+
# and country.
|
68
|
+
# Logic is: true in the US and UK when language is English, and false
|
69
|
+
# otherwise.
|
70
|
+
def uses_imperial_lengths_in_locale_and_country?(locale, country)
|
71
|
+
language_from_locale(locale) == :en && [:US, :GB].include?(country)
|
72
|
+
end
|
73
|
+
|
60
74
|
# Like ActionView::Helpers::TextHelper#pluralize, except requires that
|
61
75
|
# 'count' be a real number, not a string.
|
62
76
|
#
|
@@ -278,7 +292,6 @@ module Air18n
|
|
278
292
|
|
279
293
|
def currency=(c)
|
280
294
|
@currency = c
|
281
|
-
@distance_unit = self::MILES_CURRENCIES.include?(c) ? "MI" : "KM"
|
282
295
|
end
|
283
296
|
|
284
297
|
# Parses a date using the current locale setting.
|
data/lib/air18n/version.rb
CHANGED
@@ -44,6 +44,13 @@ describe Air18n do
|
|
44
44
|
end
|
45
45
|
end
|
46
46
|
|
47
|
+
context 'uses_imperial_lengths?' do
|
48
|
+
I18n.uses_imperial_lengths_in_locale_and_country?(:en, :US).should == true
|
49
|
+
I18n.uses_imperial_lengths_in_locale_and_country?(:en, :GB).should == true
|
50
|
+
I18n.uses_imperial_lengths_in_locale_and_country?(:en, :AU).should == false
|
51
|
+
I18n.uses_imperial_lengths_in_locale_and_country?(:fr, :US).should == false
|
52
|
+
end
|
53
|
+
|
47
54
|
context 'Keeping track of default routes context' do
|
48
55
|
it 'should start with blank routes context' do
|
49
56
|
I18n.translate('default route, key 1', :default => 'value 1', :locale => :en)
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: air18n
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.56
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -13,7 +13,7 @@ authors:
|
|
13
13
|
autorequire:
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
|
-
date: 2013-01-
|
16
|
+
date: 2013-01-28 00:00:00.000000000 Z
|
17
17
|
dependencies:
|
18
18
|
- !ruby/object:Gem::Dependency
|
19
19
|
name: i18n
|