phrase 0.4.12 → 0.4.13

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.
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- phrase (0.4.12)
4
+ phrase (0.4.13)
5
5
  colorize
6
6
  i18n
7
7
  json
@@ -67,7 +67,7 @@ protected
67
67
  key = given_key_from_args(args)
68
68
  return nil unless present?(key)
69
69
  options = args[1].nil? ? {} : args[1]
70
- Phrase::Delegate::I18n.new(key, options)
70
+ Phrase::Delegate::I18n.new(key, options, args)
71
71
  end
72
72
 
73
73
  def extract_normalized_key_from_args(args)
@@ -7,11 +7,12 @@ require 'phrase/delegate'
7
7
  require 'set'
8
8
 
9
9
  class Phrase::Delegate::I18n < Phrase::Delegate::Base
10
- attr_accessor :key, :display_key, :options, :api_client, :fallback_keys
10
+ attr_accessor :key, :display_key, :options, :api_client, :fallback_keys, :original_args
11
11
 
12
- def initialize(key, options={})
12
+ def initialize(key, options={}, original_args=nil)
13
13
  @display_key = @key = key
14
14
  @options = options
15
+ @original_args = original_args
15
16
 
16
17
  @fallback_keys = []
17
18
 
@@ -21,17 +22,19 @@ class Phrase::Delegate::I18n < Phrase::Delegate::Base
21
22
  end
22
23
 
23
24
  def method_missing(*args, &block)
24
- if @key.respond_to?(args.first)
25
+ self.class.log "Trying to execute missing method ##{args.first} on key #{@key}"
26
+
27
+ if @key.respond_to?(args.first)
25
28
  to_s.send(*args)
26
29
  else
27
30
  data = translation_or_subkeys
28
- if data.is_a?(String)
29
- to_s
30
- elsif data.respond_to?(args.first)
31
+
32
+ if data.respond_to?(args.first)
31
33
  data.send(*args, &block)
32
34
  else
33
- self.class.log "You are trying to execute the method ##{args.first} on a translation key which is not supported. Please make sure you treat your translations as strings only."
34
- nil
35
+ self.class.log "You tried to execute the missing method ##{args.first} on key #{@key} which is not supported. Please make sure you treat your translations as strings only."
36
+ original_translation = I18n.translate_without_phrase(*@original_args)
37
+ original_translation.send(*args, &block)
35
38
  end
36
39
  end
37
40
  end
@@ -8,7 +8,7 @@ module Phrase::Delegate
8
8
 
9
9
  def self.log(message)
10
10
  message = "phrase: #{message}"
11
- if defined?(Rails)
11
+ if defined?(Rails) and Rails.respond_to?(:logger)
12
12
  Rails.logger.warn(message)
13
13
  else
14
14
  $stderr.puts message
@@ -1,3 +1,3 @@
1
1
  module Phrase
2
- VERSION = "0.4.12"
2
+ VERSION = "0.4.13"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: phrase
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.12
4
+ version: 0.4.13
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: 2013-07-31 00:00:00.000000000 Z
12
+ date: 2013-08-15 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: colorize
16
- requirement: !ruby/object:Gem::Requirement
16
+ requirement: &70240381580900 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,15 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - ! '>='
28
- - !ruby/object:Gem::Version
29
- version: '0'
24
+ version_requirements: *70240381580900
30
25
  - !ruby/object:Gem::Dependency
31
26
  name: json
32
- requirement: !ruby/object:Gem::Requirement
27
+ requirement: &70240381580440 !ruby/object:Gem::Requirement
33
28
  none: false
34
29
  requirements:
35
30
  - - ! '>='
@@ -37,15 +32,10 @@ dependencies:
37
32
  version: '0'
38
33
  type: :runtime
39
34
  prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
- requirements:
43
- - - ! '>='
44
- - !ruby/object:Gem::Version
45
- version: '0'
35
+ version_requirements: *70240381580440
46
36
  - !ruby/object:Gem::Dependency
47
37
  name: i18n
48
- requirement: !ruby/object:Gem::Requirement
38
+ requirement: &70240381579980 !ruby/object:Gem::Requirement
49
39
  none: false
50
40
  requirements:
51
41
  - - ! '>='
@@ -53,15 +43,10 @@ dependencies:
53
43
  version: '0'
54
44
  type: :runtime
55
45
  prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
- requirements:
59
- - - ! '>='
60
- - !ruby/object:Gem::Version
61
- version: '0'
46
+ version_requirements: *70240381579980
62
47
  - !ruby/object:Gem::Dependency
63
48
  name: rake
64
- requirement: !ruby/object:Gem::Requirement
49
+ requirement: &70240381579540 !ruby/object:Gem::Requirement
65
50
  none: false
66
51
  requirements:
67
52
  - - ! '>='
@@ -69,15 +54,10 @@ dependencies:
69
54
  version: '0'
70
55
  type: :development
71
56
  prerelease: false
72
- version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
- requirements:
75
- - - ! '>='
76
- - !ruby/object:Gem::Version
77
- version: '0'
57
+ version_requirements: *70240381579540
78
58
  - !ruby/object:Gem::Dependency
79
59
  name: rspec
80
- requirement: !ruby/object:Gem::Requirement
60
+ requirement: &70240381579020 !ruby/object:Gem::Requirement
81
61
  none: false
82
62
  requirements:
83
63
  - - ! '>='
@@ -85,15 +65,10 @@ dependencies:
85
65
  version: '0'
86
66
  type: :development
87
67
  prerelease: false
88
- version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
- requirements:
91
- - - ! '>='
92
- - !ruby/object:Gem::Version
93
- version: '0'
68
+ version_requirements: *70240381579020
94
69
  - !ruby/object:Gem::Dependency
95
70
  name: webmock
96
- requirement: !ruby/object:Gem::Requirement
71
+ requirement: &70240381578520 !ruby/object:Gem::Requirement
97
72
  none: false
98
73
  requirements:
99
74
  - - ! '>='
@@ -101,15 +76,10 @@ dependencies:
101
76
  version: '0'
102
77
  type: :development
103
78
  prerelease: false
104
- version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
- requirements:
107
- - - ! '>='
108
- - !ruby/object:Gem::Version
109
- version: '0'
79
+ version_requirements: *70240381578520
110
80
  - !ruby/object:Gem::Dependency
111
81
  name: vcr
112
- requirement: !ruby/object:Gem::Requirement
82
+ requirement: &70240381577860 !ruby/object:Gem::Requirement
113
83
  none: false
114
84
  requirements:
115
85
  - - ! '>='
@@ -117,15 +87,10 @@ dependencies:
117
87
  version: '0'
118
88
  type: :development
119
89
  prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
- requirements:
123
- - - ! '>='
124
- - !ruby/object:Gem::Version
125
- version: '0'
90
+ version_requirements: *70240381577860
126
91
  - !ruby/object:Gem::Dependency
127
92
  name: timecop
128
- requirement: !ruby/object:Gem::Requirement
93
+ requirement: &70240381577060 !ruby/object:Gem::Requirement
129
94
  none: false
130
95
  requirements:
131
96
  - - ! '>='
@@ -133,15 +98,10 @@ dependencies:
133
98
  version: '0'
134
99
  type: :development
135
100
  prerelease: false
136
- version_requirements: !ruby/object:Gem::Requirement
137
- none: false
138
- requirements:
139
- - - ! '>='
140
- - !ruby/object:Gem::Version
141
- version: '0'
101
+ version_requirements: *70240381577060
142
102
  - !ruby/object:Gem::Dependency
143
103
  name: genspec
144
- requirement: !ruby/object:Gem::Requirement
104
+ requirement: &70240381576640 !ruby/object:Gem::Requirement
145
105
  none: false
146
106
  requirements:
147
107
  - - ! '>='
@@ -149,15 +109,10 @@ dependencies:
149
109
  version: '0'
150
110
  type: :development
151
111
  prerelease: false
152
- version_requirements: !ruby/object:Gem::Requirement
153
- none: false
154
- requirements:
155
- - - ! '>='
156
- - !ruby/object:Gem::Version
157
- version: '0'
112
+ version_requirements: *70240381576640
158
113
  - !ruby/object:Gem::Dependency
159
114
  name: rails
160
- requirement: !ruby/object:Gem::Requirement
115
+ requirement: &70240381576180 !ruby/object:Gem::Requirement
161
116
  none: false
162
117
  requirements:
163
118
  - - ! '>='
@@ -165,12 +120,7 @@ dependencies:
165
120
  version: '0'
166
121
  type: :development
167
122
  prerelease: false
168
- version_requirements: !ruby/object:Gem::Requirement
169
- none: false
170
- requirements:
171
- - - ! '>='
172
- - !ruby/object:Gem::Version
173
- version: '0'
123
+ version_requirements: *70240381576180
174
124
  description: phrase allows you to edit translations in-place on the page itself. More
175
125
  information at phraseapp.com
176
126
  email:
@@ -275,7 +225,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
275
225
  version: 1.3.6
276
226
  requirements: []
277
227
  rubyforge_project: phrase
278
- rubygems_version: 1.8.24
228
+ rubygems_version: 1.8.10
279
229
  signing_key:
280
230
  specification_version: 3
281
231
  summary: The best way to manage i18n.