browser-timezone-rails 0.0.6 → 0.0.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/README.md +5 -2
- data/lib/browser-timezone-rails.rb +20 -19
- data/lib/browser-timezone-rails/version.rb +1 -1
- metadata +19 -33
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 3ad69b29ede257ebb886892cff3b8faf3d0e452b
|
4
|
+
data.tar.gz: c77e14a2cc1943d610e8580c52d8234d363fc16c
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 9a78eddf66a61f1663cdcd240678e9eb2655ef96cd51f876905687805025da6a7d8007a6d238f321ec59d3805163f28c78ece232ce6e8d7dbbd889202c16f00e
|
7
|
+
data.tar.gz: e399113c469e5307865f04fa3e2f647b5257d4ec6b6cf1e23f8207bbfb435f4789181a46eb886588e0ae2474e8b40e103ead213e79e5f5a72c1d819de7aaae85
|
data/README.md
CHANGED
@@ -3,7 +3,7 @@
|
|
3
3
|
[![Build Status](https://secure.travis-ci.org/kbaum/browser-timezone-rails.png)](http://travis-ci.org/kbaum/browser-timezone-rails)
|
4
4
|
[![Code Quality](https://codeclimate.com/badge.png)](https://codeclimate.com/github/kbaum/browser-timezone-rails)
|
5
5
|
|
6
|
-
Rails Engine which sets the Rails timezone to the browser's configured timezone for each request.
|
6
|
+
Rails Engine which sets the Rails timezone to the browser's configured timezone for each request.
|
7
7
|
|
8
8
|
## Installation
|
9
9
|
|
@@ -29,4 +29,7 @@ The cookie is set each full page request and lives for 365 days
|
|
29
29
|
Yes. It uses the Rails Time.zone method which is thread safe.
|
30
30
|
|
31
31
|
### Caveat
|
32
|
-
The first request ever made by a user's browser to your app will not set the browser's time zone as the javascript that sets the cookie has not yet run on their browser. This will only happen once and for me it was not a problem.
|
32
|
+
The first request ever made by a user's browser to your app will not set the browser's time zone as the javascript that sets the cookie has not yet run on their browser. This will only happen once and for me it was not a problem.
|
33
|
+
|
34
|
+
### Development
|
35
|
+
To run the tests, invoke `bundle exec rspec`.
|
@@ -1,30 +1,31 @@
|
|
1
1
|
require "browser-timezone-rails/engine"
|
2
2
|
|
3
3
|
module BrowserTimezoneRails
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
around_filter :set_time_zone
|
10
|
-
|
11
|
-
private
|
4
|
+
module TimezoneControllerSetup
|
5
|
+
def self.included(base)
|
6
|
+
base.send(:around_filter, :set_time_zone)
|
7
|
+
end
|
12
8
|
|
13
|
-
|
14
|
-
old_time_zone = Time.zone
|
15
|
-
Time.zone = browser_timezone if browser_timezone.present?
|
16
|
-
yield
|
17
|
-
ensure
|
18
|
-
Time.zone = old_time_zone
|
19
|
-
end
|
9
|
+
private
|
20
10
|
|
21
|
-
|
22
|
-
|
23
|
-
|
11
|
+
def set_time_zone
|
12
|
+
old_time_zone = Time.zone
|
13
|
+
Time.zone = browser_timezone if browser_timezone.present?
|
14
|
+
yield
|
15
|
+
ensure
|
16
|
+
Time.zone = old_time_zone
|
17
|
+
end
|
24
18
|
|
19
|
+
def browser_timezone
|
20
|
+
cookies["browser.timezone"]
|
21
|
+
end
|
22
|
+
end
|
25
23
|
|
24
|
+
class Railtie < Rails::Engine
|
25
|
+
initializer "browser_timezone_rails.controller" do
|
26
|
+
ActiveSupport.on_load(:action_controller) do
|
27
|
+
include BrowserTimezoneRails::TimezoneControllerSetup
|
26
28
|
end
|
27
|
-
|
28
29
|
end
|
29
30
|
end
|
30
31
|
end
|
metadata
CHANGED
@@ -1,110 +1,97 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: browser-timezone-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.0.7
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- kbaum
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date: 2013-
|
11
|
+
date: 2013-12-02 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: rails
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - '>='
|
20
18
|
- !ruby/object:Gem::Version
|
21
19
|
version: '3.1'
|
22
20
|
type: :runtime
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
|
-
- -
|
24
|
+
- - '>='
|
28
25
|
- !ruby/object:Gem::Version
|
29
26
|
version: '3.1'
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: jquery-rails
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
|
-
- -
|
31
|
+
- - '>='
|
36
32
|
- !ruby/object:Gem::Version
|
37
33
|
version: '0'
|
38
34
|
type: :runtime
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
|
-
- -
|
38
|
+
- - '>='
|
44
39
|
- !ruby/object:Gem::Version
|
45
40
|
version: '0'
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: rspec-rails
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
|
-
- -
|
45
|
+
- - '>='
|
52
46
|
- !ruby/object:Gem::Version
|
53
47
|
version: '0'
|
54
48
|
type: :development
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
|
-
- -
|
52
|
+
- - '>='
|
60
53
|
- !ruby/object:Gem::Version
|
61
54
|
version: '0'
|
62
55
|
- !ruby/object:Gem::Dependency
|
63
56
|
name: capybara
|
64
57
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
58
|
requirements:
|
67
|
-
- -
|
59
|
+
- - '>='
|
68
60
|
- !ruby/object:Gem::Version
|
69
61
|
version: '0'
|
70
62
|
type: :development
|
71
63
|
prerelease: false
|
72
64
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
65
|
requirements:
|
75
|
-
- -
|
66
|
+
- - '>='
|
76
67
|
- !ruby/object:Gem::Version
|
77
68
|
version: '0'
|
78
69
|
- !ruby/object:Gem::Dependency
|
79
70
|
name: launchy
|
80
71
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
72
|
requirements:
|
83
|
-
- -
|
73
|
+
- - '>='
|
84
74
|
- !ruby/object:Gem::Version
|
85
75
|
version: '0'
|
86
76
|
type: :development
|
87
77
|
prerelease: false
|
88
78
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
79
|
requirements:
|
91
|
-
- -
|
80
|
+
- - '>='
|
92
81
|
- !ruby/object:Gem::Version
|
93
82
|
version: '0'
|
94
83
|
- !ruby/object:Gem::Dependency
|
95
84
|
name: sqlite3
|
96
85
|
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
86
|
requirements:
|
99
|
-
- -
|
87
|
+
- - '>='
|
100
88
|
- !ruby/object:Gem::Version
|
101
89
|
version: '0'
|
102
90
|
type: :development
|
103
91
|
prerelease: false
|
104
92
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
93
|
requirements:
|
107
|
-
- -
|
94
|
+
- - '>='
|
108
95
|
- !ruby/object:Gem::Version
|
109
96
|
version: '0'
|
110
97
|
description: The browser timezone is set on the Time#zone
|
@@ -128,26 +115,25 @@ files:
|
|
128
115
|
- README.md
|
129
116
|
homepage: https://github.com/kbaum/browser-timezone-rails
|
130
117
|
licenses: []
|
118
|
+
metadata: {}
|
131
119
|
post_install_message:
|
132
120
|
rdoc_options: []
|
133
121
|
require_paths:
|
134
122
|
- lib
|
135
123
|
required_ruby_version: !ruby/object:Gem::Requirement
|
136
|
-
none: false
|
137
124
|
requirements:
|
138
|
-
- -
|
125
|
+
- - '>='
|
139
126
|
- !ruby/object:Gem::Version
|
140
127
|
version: '0'
|
141
128
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
142
|
-
none: false
|
143
129
|
requirements:
|
144
|
-
- -
|
130
|
+
- - '>='
|
145
131
|
- !ruby/object:Gem::Version
|
146
132
|
version: '0'
|
147
133
|
requirements: []
|
148
134
|
rubyforge_project:
|
149
|
-
rubygems_version:
|
135
|
+
rubygems_version: 2.0.3
|
150
136
|
signing_key:
|
151
|
-
specification_version:
|
137
|
+
specification_version: 4
|
152
138
|
summary: Sets the browser timezone within rails
|
153
139
|
test_files: []
|