rails-translate-routes 0.0.3 → 0.0.4
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/README.rdoc +1 -1
- data/VERSION +1 -1
- data/lib/rails-translate-routes.rb +45 -11
- data/rails-translate-routes.gemspec +2 -2
- metadata +13 -13
data/README.rdoc
CHANGED
@@ -184,7 +184,6 @@ But in case you would prefer the locale to be implicit or simply because you don
|
|
184
184
|
Help is welcome ;)
|
185
185
|
|
186
186
|
* make basic testing
|
187
|
-
* support for rails 3.2
|
188
187
|
|
189
188
|
== Credits
|
190
189
|
|
@@ -193,6 +192,7 @@ Thanks to:
|
|
193
192
|
* Contributors of the current gem:
|
194
193
|
* Martin Carel (https://github.com/cawel)
|
195
194
|
* Johan Gyllenspetz (https://github.com/gyllen)
|
195
|
+
* Nico Ritsche (https://github.com/ncri)
|
196
196
|
|
197
197
|
* Main development of forked gem:
|
198
198
|
* Raul Murciano (http://github.com/raul)
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.4
|
@@ -165,15 +165,36 @@ class RailsTranslateRoutes
|
|
165
165
|
|
166
166
|
# save original routes and clear route set
|
167
167
|
original_routes = route_set.routes.dup # Array [routeA, routeB, ...]
|
168
|
-
|
168
|
+
|
169
|
+
if Rails.version >= '3.2'
|
170
|
+
original_routes.routes.delete_if{|r| r.path.spec.to_s == '/assets' }
|
171
|
+
else
|
172
|
+
original_routes.delete_if{|r| r.path == '/assets'}
|
173
|
+
end
|
174
|
+
|
169
175
|
original_named_routes = route_set.named_routes.routes.dup # Hash {:name => :route}
|
170
176
|
|
171
|
-
|
177
|
+
if Rails.version >= '3.2'
|
178
|
+
translated_routes = []
|
179
|
+
original_routes.each do |original_route|
|
180
|
+
translations_for(original_route).each do |translated_route_args|
|
181
|
+
translated_routes << translated_route_args
|
182
|
+
end
|
183
|
+
end
|
172
184
|
|
173
|
-
|
174
|
-
|
185
|
+
reset_route_set route_set
|
186
|
+
|
187
|
+
translated_routes.each do |translated_route_args|
|
175
188
|
route_set.add_route *translated_route_args
|
176
189
|
end
|
190
|
+
else
|
191
|
+
reset_route_set route_set
|
192
|
+
|
193
|
+
original_routes.each do |original_route|
|
194
|
+
translations_for(original_route).each do |translated_route_args|
|
195
|
+
route_set.add_route *translated_route_args
|
196
|
+
end
|
197
|
+
end
|
177
198
|
end
|
178
199
|
|
179
200
|
original_named_routes.each_key do |route_name|
|
@@ -189,10 +210,16 @@ class RailsTranslateRoutes
|
|
189
210
|
# Add unmodified root route to route_set
|
190
211
|
def add_root_route root_route, route_set
|
191
212
|
if @prefix_on_default_locale
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
213
|
+
if Rails.version >= '3.2'
|
214
|
+
conditions = { :path_info => root_route.path.spec.to_s }
|
215
|
+
conditions[:request_method] = parse_request_methods root_route.verb if root_route.verb != //
|
216
|
+
route_set.add_route root_route.app, conditions, root_route.requirements, root_route.defaults, root_route.name
|
217
|
+
else
|
218
|
+
root_route.conditions[:path_info] = root_route.conditions[:path_info].dup
|
219
|
+
route_set.set.add_route *root_route
|
220
|
+
route_set.named_routes[root_route.name] = root_route
|
221
|
+
route_set.routes << root_route
|
222
|
+
end
|
196
223
|
end
|
197
224
|
end
|
198
225
|
|
@@ -224,10 +251,17 @@ class RailsTranslateRoutes
|
|
224
251
|
|
225
252
|
# Generate translation for a single route for one locale
|
226
253
|
def translate_route route, locale
|
227
|
-
|
228
|
-
|
254
|
+
if Rails.version >= '3.2'
|
255
|
+
conditions = { :path_info => translate_path(route.path.spec.to_s, locale) }
|
256
|
+
conditions[:request_method] = parse_request_methods route.verb if route.verb != //
|
257
|
+
defaults = route.defaults.merge LOCALE_PARAM_KEY => locale.dup
|
258
|
+
else
|
259
|
+
conditions = { :path_info => translate_path(route.path, locale) }
|
260
|
+
conditions[:request_method] = parse_request_methods route.conditions[:request_method] if route.conditions.has_key? :request_method
|
261
|
+
defaults = route.defaults.merge LOCALE_PARAM_KEY => locale
|
262
|
+
end
|
263
|
+
|
229
264
|
requirements = route.requirements.merge LOCALE_PARAM_KEY => locale
|
230
|
-
defaults = route.defaults.merge LOCALE_PARAM_KEY => locale
|
231
265
|
new_name = "#{route.name}_#{locale_suffix(locale)}" if route.name
|
232
266
|
|
233
267
|
[route.app, conditions, requirements, defaults, new_name]
|
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "rails-translate-routes"
|
8
|
-
s.version = "0.0.
|
8
|
+
s.version = "0.0.4"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Francesc Pla"]
|
12
|
-
s.date = "2012-01-
|
12
|
+
s.date = "2012-01-31"
|
13
13
|
s.description = "Simple gem to translate routes in Rails 3.x based on translate_routes"
|
14
14
|
s.email = "francesc@francesc.net"
|
15
15
|
s.extra_rdoc_files = [
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rails-translate-routes
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
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: 2012-01-
|
12
|
+
date: 2012-01-31 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|
16
|
-
requirement: &
|
16
|
+
requirement: &70276501525960 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '3.0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70276501525960
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: bundler
|
27
|
-
requirement: &
|
27
|
+
requirement: &70276501524780 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: 1.0.0
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70276501524780
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: jeweler
|
38
|
-
requirement: &
|
38
|
+
requirement: &70276501523320 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ~>
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: 1.6.4
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70276501523320
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: sqlite3
|
49
|
-
requirement: &
|
49
|
+
requirement: &70276501522360 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70276501522360
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: minitest
|
60
|
-
requirement: &
|
60
|
+
requirement: &70276501521720 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,7 +65,7 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *70276501521720
|
69
69
|
description: Simple gem to translate routes in Rails 3.x based on translate_routes
|
70
70
|
email: francesc@francesc.net
|
71
71
|
executables: []
|
@@ -101,7 +101,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
101
101
|
version: '0'
|
102
102
|
segments:
|
103
103
|
- 0
|
104
|
-
hash:
|
104
|
+
hash: -2099003059904251866
|
105
105
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
106
106
|
none: false
|
107
107
|
requirements:
|