rack-locale_memorable 0.3.0 → 0.3.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b56451d07060a802f688db0f338178fa1c8d2ed9f1ea5bafd1ec120e0e241fae
4
- data.tar.gz: 6d98f588efe1eb3d14a13ff989600fc67f1e3ae84ccc99e641206398b27c5589
3
+ metadata.gz: fd5bd6d13a8a85a10053362a85a1d5c3530348fadadb5f871f9990e40e36d59b
4
+ data.tar.gz: 6f9c459b2527f17fc153c43bd3d71b9ecfb5c6ae60402e142ecc0da8bde1afa2
5
5
  SHA512:
6
- metadata.gz: 4a2cdb7a55ff2d53fbf951fa11c31e2e8fd056c762f9dda3c22799e90b3fe3e32dd667534e6f069bf471a3185eb16a873bd054848f65d7aba626dbdc6c94dfdc
7
- data.tar.gz: b945b0c1f8398a9bb3ac3c9e97ff9e303af47e35fe5a5d271a1af7bef304e8e15730c961b9c30c9dd83d4b1af2c0aa0e8e52f876ec59fba8e12548b1b20604ff
6
+ metadata.gz: 9ed6cc8acbfbe09b475fc80c90f155102f25916a28f279e7efadc28e2660a5fce8cd7896727c4b819906097009886112d10df9e7e807eefb1ffa10e798d2c1d2
7
+ data.tar.gz: f8304fa8aa3ed7b6f0fa102935828f5eeec3d0cae20bbd0bc8e5d10bc8fba3f37edbdd7879bfdc7f416f39ba8f43c08f2f242fa088661edf52e0b1c2afd6f595
data/CHANGELOG.md CHANGED
@@ -1,5 +1,6 @@
1
1
  ## [Unreleased]
2
2
 
3
- ## [0.1.0] - 2022-09-28
3
+ ## [0.3.0] - 2022-09-28
4
4
 
5
- - Initial release
5
+ - First stable release.
6
+ - Older versions are buggy, DO NOT USE THEM.
data/README.md CHANGED
@@ -1,8 +1,6 @@
1
1
  # Rack::LocaleMemorable
2
2
 
3
- Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/rack/locale_memorable`. To experiment with that code, run `bin/console` for an interactive prompt.
4
-
5
- TODO: Delete this and the text above, and describe your gem
3
+ Handle query params, cookie and HTTP_ACCEPT_LANGUAGE header to detect user-preffered locale, and remember it when necessary.
6
4
 
7
5
  ## Installation
8
6
 
@@ -16,7 +14,27 @@ If bundler is not being used to manage dependencies, install the gem by executin
16
14
 
17
15
  ## Usage
18
16
 
19
- TODO: Write usage instructions here
17
+ ```ruby
18
+ # in initializers/middlewares.rb etc.
19
+ Rails.application.configure do |config|
20
+ config.middleware.use(
21
+ Rack::LocaleMemorable,
22
+ secure_cookie: Rails.env.production?
23
+ )
24
+ end
25
+ ```
26
+
27
+ NOTE: If you're using devise, set `Rack::LocaleMemorable` before `Warden::Manager`, otherwise you see warden error messages in wrong locale.
28
+
29
+ ```ruby
30
+ Rails.application.configure do |config|
31
+ config.middleware.insert_before(
32
+ Warden::Manager,
33
+ Rack::LocaleMemorable,
34
+ secure_cookie: Rails.env.production?
35
+ )
36
+ end
37
+ ```
20
38
 
21
39
  ## Development
22
40
 
@@ -3,8 +3,8 @@
3
3
  module Rack
4
4
  class LocaleMemorable
5
5
  class Response < Rack::Response
6
- def remember_locale(explicit_locale, secure_cookie:, cookie_expiry:)
7
- set_cookie 'locale', {
6
+ def remember_locale(explicit_locale, secure_cookie:, cookie_expiry:, cookie_key:)
7
+ set_cookie cookie_key, {
8
8
  value: explicit_locale,
9
9
  expires: cookie_expiry,
10
10
  http_only: true,
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Rack
4
4
  class LocaleMemorable
5
- VERSION = '0.3.0'
5
+ VERSION = '0.3.1'
6
6
  end
7
7
  end
@@ -24,7 +24,8 @@ module Rack
24
24
  response.remember_locale(
25
25
  request.explicit_locale,
26
26
  secure_cookie: @secure_cookie,
27
- cookie_expiry: @cookie_expiry
27
+ cookie_expiry: @cookie_expiry,
28
+ cookie_key: @cookie_key
28
29
  )
29
30
  end
30
31
  response.finish
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rack-locale_memorable
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - nov