i18n-sequel_bitemporal 0.4.0 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,9 +2,8 @@ source :rubygems
2
2
 
3
3
  gem 'i18n', '~> 0.5.0'
4
4
 
5
- gem 'sequel', '~> 3.28'
6
- gem 'sequel_bitemporal', '~> 0.1.6'
5
+ gem 'sequel_bitemporal', '~> 0.4.0'
7
6
  gem 'sqlite3-ruby'
8
7
  gem 'mocha'
9
8
  gem 'test_declarative'
10
- gem 'rake'
9
+ gem 'rake'
@@ -2,9 +2,8 @@ source :rubygems
2
2
 
3
3
  gem 'i18n', '~> 0.6.0'
4
4
 
5
- gem 'sequel', '~> 3.28'
6
- gem 'sequel_bitemporal', '~> 0.1.6'
5
+ gem 'sequel_bitemporal', '~> 0.4.0'
7
6
  gem 'sqlite3-ruby'
8
7
  gem 'mocha'
9
8
  gem 'test_declarative'
10
- gem 'rake'
9
+ gem 'rake'
@@ -6,9 +6,9 @@ GEM
6
6
  mocha (0.10.0)
7
7
  metaclass (~> 0.0.1)
8
8
  rake (0.9.2.2)
9
- sequel (3.29.0)
10
- sequel_bitemporal (0.1.7)
11
- sequel
9
+ sequel (3.30.0)
10
+ sequel_bitemporal (0.4.1)
11
+ sequel (~> 3.30.0)
12
12
  sqlite3 (1.3.4)
13
13
  sqlite3-ruby (1.3.3)
14
14
  sqlite3 (>= 1.3.3)
@@ -21,7 +21,6 @@ DEPENDENCIES
21
21
  i18n (~> 0.6.0)
22
22
  mocha
23
23
  rake
24
- sequel (~> 3.28)
25
- sequel_bitemporal (~> 0.1.6)
24
+ sequel_bitemporal (~> 0.4.0)
26
25
  sqlite3-ruby
27
26
  test_declarative
@@ -5,9 +5,9 @@ GEM
5
5
  mocha (0.9.9)
6
6
  rake
7
7
  rake (0.8.7)
8
- sequel (3.29.0)
9
- sequel_bitemporal (0.1.6)
10
- sequel
8
+ sequel (3.30.0)
9
+ sequel_bitemporal (0.4.0)
10
+ sequel (~> 3.30.0)
11
11
  sqlite3-ruby (1.3.1)
12
12
  test_declarative (0.0.5)
13
13
 
@@ -18,7 +18,6 @@ DEPENDENCIES
18
18
  i18n (~> 0.5.0)
19
19
  mocha
20
20
  rake
21
- sequel (~> 3.28)
22
- sequel_bitemporal (~> 0.1.6)
21
+ sequel_bitemporal (~> 0.4.0)
23
22
  sqlite3-ruby
24
23
  test_declarative
@@ -10,6 +10,10 @@ module I18n
10
10
  module Implementation
11
11
  include Base, Flatten
12
12
 
13
+ def initialize(opts= {})
14
+ @preload_all = opts.fetch(:preload_all, false)
15
+ end
16
+
13
17
  def available_locales
14
18
  begin
15
19
  Translation.available_locales
@@ -35,11 +39,29 @@ module I18n
35
39
  end
36
40
  end
37
41
 
42
+ def clear(locale=:all)
43
+ if locale==:all
44
+ @translations = {}
45
+ else
46
+ @translations[locale] = nil
47
+ end
48
+ end
49
+
38
50
  protected
39
51
 
52
+ def fetch_all_translations(locale)
53
+ @translations ||= {}
54
+ @translations[locale] ||= Translation.locale(locale).with_current_version.all
55
+ @translations[locale]
56
+ end
57
+
40
58
  def lookup(locale, key, scope = [], options = {})
41
59
  key = normalize_flat_keys(locale, key, scope, options[:separator])
42
- result = Translation.locale(locale).lookup(key).all
60
+ result = if @preload_all
61
+ fetch_all_translations(locale).select{|t| t.key==key}
62
+ else
63
+ Translation.locale(locale).lookup(key).all
64
+ end
43
65
 
44
66
  if result.empty?
45
67
  nil
@@ -1,5 +1,5 @@
1
1
  module I18n
2
2
  module SequelBitemporal
3
- VERSION = "0.4.0"
3
+ VERSION = "0.4.1"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: i18n-sequel_bitemporal
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.4.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-12-03 00:00:00.000000000 Z
12
+ date: 2011-12-29 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: i18n
16
- requirement: &70181264996740 !ruby/object:Gem::Requirement
16
+ requirement: &2151839140 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -24,10 +24,10 @@ dependencies:
24
24
  version: 0.7.0
25
25
  type: :runtime
26
26
  prerelease: false
27
- version_requirements: *70181264996740
27
+ version_requirements: *2151839140
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: sequel_bitemporal
30
- requirement: &70181264995560 !ruby/object:Gem::Requirement
30
+ requirement: &2151836660 !ruby/object:Gem::Requirement
31
31
  none: false
32
32
  requirements:
33
33
  - - ~>
@@ -35,10 +35,10 @@ dependencies:
35
35
  version: 0.4.0
36
36
  type: :runtime
37
37
  prerelease: false
38
- version_requirements: *70181264995560
38
+ version_requirements: *2151836660
39
39
  - !ruby/object:Gem::Dependency
40
40
  name: test_declarative
41
- requirement: &70181264994980 !ruby/object:Gem::Requirement
41
+ requirement: &2151835720 !ruby/object:Gem::Requirement
42
42
  none: false
43
43
  requirements:
44
44
  - - ! '>='
@@ -46,10 +46,10 @@ dependencies:
46
46
  version: '0'
47
47
  type: :development
48
48
  prerelease: false
49
- version_requirements: *70181264994980
49
+ version_requirements: *2151835720
50
50
  - !ruby/object:Gem::Dependency
51
51
  name: mocha
52
- requirement: &70181264994280 !ruby/object:Gem::Requirement
52
+ requirement: &2151834120 !ruby/object:Gem::Requirement
53
53
  none: false
54
54
  requirements:
55
55
  - - ! '>='
@@ -57,10 +57,10 @@ dependencies:
57
57
  version: '0'
58
58
  type: :development
59
59
  prerelease: false
60
- version_requirements: *70181264994280
60
+ version_requirements: *2151834120
61
61
  - !ruby/object:Gem::Dependency
62
62
  name: rake
63
- requirement: &70181264993580 !ruby/object:Gem::Requirement
63
+ requirement: &2151833080 !ruby/object:Gem::Requirement
64
64
  none: false
65
65
  requirements:
66
66
  - - ! '>='
@@ -68,10 +68,10 @@ dependencies:
68
68
  version: '0'
69
69
  type: :development
70
70
  prerelease: false
71
- version_requirements: *70181264993580
71
+ version_requirements: *2151833080
72
72
  - !ruby/object:Gem::Dependency
73
73
  name: sqlite3
74
- requirement: &70181264992980 !ruby/object:Gem::Requirement
74
+ requirement: &2151831660 !ruby/object:Gem::Requirement
75
75
  none: false
76
76
  requirements:
77
77
  - - ! '>='
@@ -79,7 +79,7 @@ dependencies:
79
79
  version: '0'
80
80
  type: :development
81
81
  prerelease: false
82
- version_requirements: *70181264992980
82
+ version_requirements: *2151831660
83
83
  description: I18n Bitemporal Sequel backend. Allows to store translations in a database
84
84
  using Sequel using a bitemporal approach, e.g. for providing a web-interface for
85
85
  managing translations.
@@ -126,7 +126,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
126
126
  version: '0'
127
127
  segments:
128
128
  - 0
129
- hash: -3289983423413557056
129
+ hash: -4492473540205224518
130
130
  required_rubygems_version: !ruby/object:Gem::Requirement
131
131
  none: false
132
132
  requirements:
@@ -135,7 +135,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
135
135
  version: '0'
136
136
  segments:
137
137
  - 0
138
- hash: -3289983423413557056
138
+ hash: -4492473540205224518
139
139
  requirements: []
140
140
  rubyforge_project: ! '[none]'
141
141
  rubygems_version: 1.8.10