world-flags 0.4.4 → 0.4.5
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 +2 -1
- data/Gemfile.lock +2 -1
- data/README.md +6 -4
- data/VERSION +1 -1
- data/lib/world_flags/rack_locale.rb +31 -0
- data/world-flags.gemspec +8 -4
- metadata +23 -6
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -36,7 +36,7 @@ Flags will be rendered in HTML as:
|
|
36
36
|
</pre>
|
37
37
|
```
|
38
38
|
|
39
|
-
The countries corresponding to the codes can be found at
|
39
|
+
The countries corresponding to the codes can be found at [ISO 3166-1 alpha-2](http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)
|
40
40
|
|
41
41
|
## Use
|
42
42
|
|
@@ -120,11 +120,13 @@ In the /config folder of this gem/engine there is a json file with all the engli
|
|
120
120
|
|
121
121
|
To generate i18n data for your particular locale(s).
|
122
122
|
|
123
|
-
##
|
123
|
+
## Configuration and usage tips
|
124
124
|
|
125
|
-
|
125
|
+
See the [wiki](https://github.com/kristianmandrup/world-flags/wiki/)
|
126
|
+
|
127
|
+
* [Configuration](https://github.com/kristianmandrup/world-flags/wiki/Configuration)
|
128
|
+
* [Handling flag selection](https://github.com/kristianmandrup/world-flags/wiki/Handling-flag-selection)
|
126
129
|
|
127
|
-
[Configuration](https://github.com/kristianmandrup/world-flags/wiki/Configuration)
|
128
130
|
|
129
131
|
## TODO for version 1.0
|
130
132
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.4.
|
1
|
+
0.4.5
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require 'i18n'
|
2
|
+
|
3
|
+
module Rack
|
4
|
+
class Locale
|
5
|
+
def initialize(app)
|
6
|
+
@app = app
|
7
|
+
end
|
8
|
+
|
9
|
+
def call(env)
|
10
|
+
old_locale = I18n.locale
|
11
|
+
locale = nil
|
12
|
+
|
13
|
+
# http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.4
|
14
|
+
if lang = env["HTTP_ACCEPT_LANGUAGE"]
|
15
|
+
lang = lang.split(",").map { |l|
|
16
|
+
l += ';q=1.0' unless l =~ /;q=\d+\.\d+$/
|
17
|
+
l.split(';q=')
|
18
|
+
}.first
|
19
|
+
locale = lang.first.split("-").first
|
20
|
+
else
|
21
|
+
locale = I18n.default_locale
|
22
|
+
end
|
23
|
+
|
24
|
+
locale = env['rack.locale'] = I18n.locale = locale.to_s
|
25
|
+
status, headers, body = @app.call(env)
|
26
|
+
headers['Content-Language'] = locale
|
27
|
+
I18n.locale = old_locale
|
28
|
+
[status, headers, body]
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
data/world-flags.gemspec
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "world-flags"
|
8
|
-
s.version = "0.4.
|
8
|
+
s.version = "0.4.5"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Kristian Mandrup"]
|
@@ -42,6 +42,7 @@ Gem::Specification.new do |s|
|
|
42
42
|
"lib/world_flags/helper/view/util.rb",
|
43
43
|
"lib/world_flags/helpers.rb",
|
44
44
|
"lib/world_flags/languages.rb",
|
45
|
+
"lib/world_flags/rack_locale.rb",
|
45
46
|
"lib/world_flags/rails/engine.rb",
|
46
47
|
"lib/world_flags/util.rb",
|
47
48
|
"lib/world_flags/util/config.rb",
|
@@ -92,14 +93,16 @@ Gem::Specification.new do |s|
|
|
92
93
|
s.specification_version = 3
|
93
94
|
|
94
95
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
95
|
-
s.add_runtime_dependency(%q<hashie>, ["
|
96
|
+
s.add_runtime_dependency(%q<hashie>, ["~> 1.2"])
|
97
|
+
s.add_runtime_dependency(%q<i18n>, ["~> 0.6"])
|
96
98
|
s.add_development_dependency(%q<rspec>, [">= 2.8.0"])
|
97
99
|
s.add_development_dependency(%q<rdoc>, [">= 3.12"])
|
98
100
|
s.add_development_dependency(%q<bundler>, [">= 1.0.0"])
|
99
101
|
s.add_development_dependency(%q<jeweler>, [">= 1.8.3"])
|
100
102
|
s.add_development_dependency(%q<simplecov>, [">= 0.5"])
|
101
103
|
else
|
102
|
-
s.add_dependency(%q<hashie>, ["
|
104
|
+
s.add_dependency(%q<hashie>, ["~> 1.2"])
|
105
|
+
s.add_dependency(%q<i18n>, ["~> 0.6"])
|
103
106
|
s.add_dependency(%q<rspec>, [">= 2.8.0"])
|
104
107
|
s.add_dependency(%q<rdoc>, [">= 3.12"])
|
105
108
|
s.add_dependency(%q<bundler>, [">= 1.0.0"])
|
@@ -107,7 +110,8 @@ Gem::Specification.new do |s|
|
|
107
110
|
s.add_dependency(%q<simplecov>, [">= 0.5"])
|
108
111
|
end
|
109
112
|
else
|
110
|
-
s.add_dependency(%q<hashie>, ["
|
113
|
+
s.add_dependency(%q<hashie>, ["~> 1.2"])
|
114
|
+
s.add_dependency(%q<i18n>, ["~> 0.6"])
|
111
115
|
s.add_dependency(%q<rspec>, [">= 2.8.0"])
|
112
116
|
s.add_dependency(%q<rdoc>, [">= 3.12"])
|
113
117
|
s.add_dependency(%q<bundler>, [">= 1.0.0"])
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: world-flags
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.5
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -16,17 +16,33 @@ dependencies:
|
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
|
-
- -
|
19
|
+
- - ~>
|
20
20
|
- !ruby/object:Gem::Version
|
21
|
-
version: '
|
21
|
+
version: '1.2'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
25
|
none: false
|
26
26
|
requirements:
|
27
|
-
- -
|
27
|
+
- - ~>
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '1.2'
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: i18n
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - ~>
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '0.6'
|
38
|
+
type: :runtime
|
39
|
+
prerelease: false
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ~>
|
28
44
|
- !ruby/object:Gem::Version
|
29
|
-
version: '0'
|
45
|
+
version: '0.6'
|
30
46
|
- !ruby/object:Gem::Dependency
|
31
47
|
name: rspec
|
32
48
|
requirement: !ruby/object:Gem::Requirement
|
@@ -140,6 +156,7 @@ files:
|
|
140
156
|
- lib/world_flags/helper/view/util.rb
|
141
157
|
- lib/world_flags/helpers.rb
|
142
158
|
- lib/world_flags/languages.rb
|
159
|
+
- lib/world_flags/rack_locale.rb
|
143
160
|
- lib/world_flags/rails/engine.rb
|
144
161
|
- lib/world_flags/util.rb
|
145
162
|
- lib/world_flags/util/config.rb
|
@@ -194,7 +211,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
194
211
|
version: '0'
|
195
212
|
segments:
|
196
213
|
- 0
|
197
|
-
hash: -
|
214
|
+
hash: -3509101011673426845
|
198
215
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
199
216
|
none: false
|
200
217
|
requirements:
|