devise_invitable 2.0.3 → 2.0.5
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of devise_invitable might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -0
- data/README.rdoc +4 -4
- data/config/locales/es.yml +2 -2
- data/config/locales/ja.yml +0 -1
- data/lib/devise_invitable/models.rb +4 -1
- data/lib/devise_invitable/models/authenticatable.rb +7 -1
- data/lib/devise_invitable/version.rb +1 -1
- data/test/models/invitable_test.rb +16 -0
- metadata +3 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0517f954240bfc3c1fd255df0d502d5fdbd461d4e695cd0c5ec725854af50dcf
|
4
|
+
data.tar.gz: 239b887a32e66dbc38fbf1e04625def2f1dea325fcc6d20af0e1befd066dd000
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 957006ebe6e94715459f941b52004a1002e72005e9344baca46679398bc34e360604e3a8a205d9099a4ff5015be597c1c02a89055137db6c12f10ecf03949db7
|
7
|
+
data.tar.gz: 17200aa6cf76d5abf07de1e4c0987f197140087a7a3210df0bf948a6098602eeeab05d65983cc69ef2185f2de741813ebc778a28d476a86bc5b1527bbd918f4c
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,11 @@
|
|
1
|
+
## 2.0.5
|
2
|
+
- Fix NoMethodError in random_password when validatable is not used ([#850](https://github.com/scambra/devise_invitable/pull/850))
|
3
|
+
|
4
|
+
## 2.0.4
|
5
|
+
- Fix devise deprecations ([#842](https://github.com/scambra/devise_invitable/pull/842))
|
6
|
+
- Update translations ([#844](https://github.com/scambra/devise_invitable/pull/844), [#845](https://github.com/scambra/devise_invitable/pull/845))
|
7
|
+
- Fix/enforce initial password length to follow devise ([#848](https://github.com/scambra/devise_invitable/pull/848))
|
8
|
+
|
1
9
|
## 2.0.3
|
2
10
|
- Add locales ([#834](https://github.com/scambra/devise_invitable/pull/834), [#835](https://github.com/scambra/devise_invitable/pull/835))
|
3
11
|
- Remove index on invitations_count column ([#830](https://github.com/scambra/devise_invitable/pull/830))
|
data/README.rdoc
CHANGED
@@ -181,15 +181,15 @@ To change behaviour of inviting or accepting users, you can simply override two
|
|
181
181
|
class Users::InvitationsController < Devise::InvitationsController
|
182
182
|
private
|
183
183
|
|
184
|
-
#
|
185
|
-
# should return an instance of resource class
|
184
|
+
# This is called when creating invitation.
|
185
|
+
# It should return an instance of resource class.
|
186
186
|
def invite_resource
|
187
187
|
# skip sending emails on invite
|
188
188
|
super { |user| user.skip_invitation = true }
|
189
189
|
end
|
190
190
|
|
191
|
-
#
|
192
|
-
# should return an instance of resource class
|
191
|
+
# This is called when accepting invitation.
|
192
|
+
# It should return an instance of resource class.
|
193
193
|
def accept_resource
|
194
194
|
resource = resource_class.accept_invitation!(update_resource_params)
|
195
195
|
# Report accepting invitation to analytics
|
data/config/locales/es.yml
CHANGED
@@ -18,7 +18,7 @@ es:
|
|
18
18
|
mailer:
|
19
19
|
invitation_instructions:
|
20
20
|
subject: "Instruciones de la invitación"
|
21
|
-
hello: "
|
21
|
+
hello: "Hola %{email}"
|
22
22
|
someone_invited_you: "Has sido invitado a %{url}, puedes aceptarlo siguiendo el siguiente enlace"
|
23
23
|
accept: "Aceptar la invitación"
|
24
24
|
accept_until: "Esta invitación expirará en %{due_date}."
|
@@ -28,4 +28,4 @@ es:
|
|
28
28
|
devise:
|
29
29
|
mailer:
|
30
30
|
invitation_instructions:
|
31
|
-
accept_until_format: "%d de %B de %Y, %H:%M"
|
31
|
+
accept_until_format: "%d de %B de %Y, %H:%M"
|
data/config/locales/ja.yml
CHANGED
@@ -20,7 +20,6 @@ ja:
|
|
20
20
|
subject: '招待を承認するには'
|
21
21
|
hello: 'こんにちは、%{email}さん'
|
22
22
|
someone_invited_you: '%{url}に招待されました。以下のリンクから承認できます。'
|
23
|
-
accept: 'Accept invitation'
|
24
23
|
accept: '招待を承認する'
|
25
24
|
accept_until: 'この招待は%{due_date}まで有効です。'
|
26
25
|
ignore: '招待を承認しない場合は、このメールを無視してください。<br />あなたのアカウントは上記のリンク先にアクセスしパスワードを設定するまでは作成されません。'
|
@@ -397,7 +397,10 @@ module Devise
|
|
397
397
|
# lower + upper case, a digit and a symbol.
|
398
398
|
# For more unusual rules, this method can be overridden.
|
399
399
|
def random_password
|
400
|
-
|
400
|
+
length = respond_to?(:password_length) ? password_length : Devise.password_length
|
401
|
+
|
402
|
+
prefix = 'aA1!'
|
403
|
+
prefix + Devise.friendly_token(length.last - prefix.length)
|
401
404
|
end
|
402
405
|
end
|
403
406
|
end
|
@@ -1,11 +1,17 @@
|
|
1
1
|
module Devise
|
2
2
|
module Models
|
3
3
|
module Authenticatable
|
4
|
-
|
4
|
+
list = %i[
|
5
5
|
invitation_token invitation_created_at invitation_sent_at
|
6
6
|
invitation_accepted_at invitation_limit invited_by_type
|
7
7
|
invited_by_id invitations_count
|
8
8
|
]
|
9
|
+
|
10
|
+
if defined?(UNSAFE_ATTRIBUTES_FOR_SERIALIZATION)
|
11
|
+
UNSAFE_ATTRIBUTES_FOR_SERIALIZATION.concat(list)
|
12
|
+
else
|
13
|
+
BLACKLIST_FOR_SERIALIZATION.concat(list)
|
14
|
+
end
|
9
15
|
end
|
10
16
|
end
|
11
17
|
end
|
@@ -1,6 +1,10 @@
|
|
1
1
|
require 'test_helper'
|
2
2
|
require 'model_tests_helper'
|
3
3
|
|
4
|
+
class Validatable < User
|
5
|
+
devise :validatable, password_length: 10..20
|
6
|
+
end
|
7
|
+
|
4
8
|
class InvitableTest < ActiveSupport::TestCase
|
5
9
|
|
6
10
|
def setup
|
@@ -760,4 +764,16 @@ class InvitableTest < ActiveSupport::TestCase
|
|
760
764
|
assert user.persisted?
|
761
765
|
assert user.errors.empty?
|
762
766
|
end
|
767
|
+
|
768
|
+
test 'should set initial password following Devise.password_length' do
|
769
|
+
user = User.invite!(email: 'valid@email.com')
|
770
|
+
assert_empty user.errors
|
771
|
+
assert_equal Devise.password_length.last, user.password.length
|
772
|
+
end
|
773
|
+
|
774
|
+
test 'should set initial passsword using :validatable with custom password_length' do
|
775
|
+
user = Validatable.invite!(email: 'valid@email.com')
|
776
|
+
assert_empty user.errors
|
777
|
+
assert_equal Validatable.password_length.last, user.password.length
|
778
|
+
end
|
763
779
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: devise_invitable
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sergio Cambra
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-04-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: actionmailer
|
@@ -186,8 +186,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
186
186
|
- !ruby/object:Gem::Version
|
187
187
|
version: '0'
|
188
188
|
requirements: []
|
189
|
-
|
190
|
-
rubygems_version: 2.7.9
|
189
|
+
rubygems_version: 3.0.8
|
191
190
|
signing_key:
|
192
191
|
specification_version: 4
|
193
192
|
summary: An invitation strategy for Devise
|