devise_invitable 2.0.14 → 3.0.0
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +41 -0
- data/README.md +108 -97
- data/app/controllers/devise/invitations_controller.rb +1 -1
- data/app/controllers/devise_invitable/registrations_controller.rb +15 -10
- data/lib/devise_invitable/invitation.rb +89 -0
- data/lib/devise_invitable/inviter.rb +23 -1
- data/lib/devise_invitable/migrator.rb +113 -0
- data/lib/devise_invitable/models.rb +328 -81
- data/lib/devise_invitable/rails.rb +10 -0
- data/lib/devise_invitable/version.rb +1 -1
- data/lib/devise_invitable.rb +39 -4
- data/lib/generators/active_record/devise_invitable_install_generator.rb +22 -0
- data/lib/generators/active_record/devise_invitable_upgrade_generator.rb +28 -0
- data/lib/generators/active_record/templates/create_devise_invitations.rb +23 -0
- data/lib/generators/active_record/templates/upgrade_devise_invitations.rb +72 -0
- data/lib/generators/devise_invitable/devise_invitable_generator.rb +2 -4
- data/lib/generators/devise_invitable/install_generator.rb +8 -10
- data/lib/generators/devise_invitable/upgrade_generator.rb +16 -0
- data/lib/generators/mongoid/devise_invitable_install_generator.rb +7 -0
- data/lib/generators/mongoid/devise_invitable_upgrade_generator.rb +11 -0
- data/lib/tasks/devise_invitable_tasks.rake +10 -0
- data/test/functional/registrations_controller_test.rb +24 -3
- data/test/generators_test.rb +16 -9
- data/test/integration/invitation_test.rb +3 -3
- data/test/mailers/invitation_mail_test.rb +1 -0
- data/test/models/separate_invitations_test.rb +181 -0
- data/test/models_test.rb +34 -0
- data/test/rails_app/app/models/user.rb +2 -1
- data/test/rails_app/config/initializers/devise.rb +0 -9
- data/test/rails_app/db/migrate/20100401102949_create_tables.rb +22 -0
- metadata +22 -13
- data/lib/generators/active_record/devise_invitable_generator.rb +0 -19
- data/lib/generators/active_record/templates/migration.rb +0 -22
- data/lib/generators/mongoid/devise_invitable_generator.rb +0 -8
|
@@ -33,6 +33,28 @@ class CreateTables < (Rails.version < '5.1' ? ActiveRecord::Migration : ActiveRe
|
|
|
33
33
|
end
|
|
34
34
|
add_index :users, :invitation_token, :unique => true
|
|
35
35
|
|
|
36
|
+
create_table :devise_invitations do |t|
|
|
37
|
+
t.string :invitation_token
|
|
38
|
+
t.datetime :invitation_created_at
|
|
39
|
+
t.datetime :invitation_sent_at
|
|
40
|
+
t.datetime :invitation_accepted_at
|
|
41
|
+
t.datetime :superseded_at
|
|
42
|
+
t.string :superseded_reason
|
|
43
|
+
t.datetime :revoked_at
|
|
44
|
+
t.datetime :resource_created_at
|
|
45
|
+
t.json :invite_key, null: false, default: {}
|
|
46
|
+
t.string :invite_key_digest, null: false
|
|
47
|
+
t.integer :invitable_id
|
|
48
|
+
t.string :invitable_type
|
|
49
|
+
t.integer :invited_by_id
|
|
50
|
+
t.string :invited_by_type
|
|
51
|
+
t.timestamps
|
|
52
|
+
end
|
|
53
|
+
add_index :devise_invitations, :invitation_token, unique: true
|
|
54
|
+
add_index :devise_invitations, [:invitable_type, :invitable_id]
|
|
55
|
+
add_index :devise_invitations, [:invited_by_type, :invited_by_id]
|
|
56
|
+
add_index :devise_invitations, [:invitable_type, :invite_key_digest]
|
|
57
|
+
|
|
36
58
|
create_table :admins do |t|
|
|
37
59
|
## Database authenticatable
|
|
38
60
|
t.string :email, :null => true, :default => ""
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: devise_invitable
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 3.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Sergio Cambra
|
|
@@ -15,42 +15,42 @@ dependencies:
|
|
|
15
15
|
requirements:
|
|
16
16
|
- - ">="
|
|
17
17
|
- !ruby/object:Gem::Version
|
|
18
|
-
version: '
|
|
18
|
+
version: '7.0'
|
|
19
19
|
type: :runtime
|
|
20
20
|
prerelease: false
|
|
21
21
|
version_requirements: !ruby/object:Gem::Requirement
|
|
22
22
|
requirements:
|
|
23
23
|
- - ">="
|
|
24
24
|
- !ruby/object:Gem::Version
|
|
25
|
-
version: '
|
|
25
|
+
version: '7.0'
|
|
26
26
|
- !ruby/object:Gem::Dependency
|
|
27
27
|
name: devise
|
|
28
28
|
requirement: !ruby/object:Gem::Requirement
|
|
29
29
|
requirements:
|
|
30
30
|
- - ">="
|
|
31
31
|
- !ruby/object:Gem::Version
|
|
32
|
-
version: '
|
|
32
|
+
version: '5.0'
|
|
33
33
|
type: :runtime
|
|
34
34
|
prerelease: false
|
|
35
35
|
version_requirements: !ruby/object:Gem::Requirement
|
|
36
36
|
requirements:
|
|
37
37
|
- - ">="
|
|
38
38
|
- !ruby/object:Gem::Version
|
|
39
|
-
version: '
|
|
39
|
+
version: '5.0'
|
|
40
40
|
- !ruby/object:Gem::Dependency
|
|
41
41
|
name: bundler
|
|
42
42
|
requirement: !ruby/object:Gem::Requirement
|
|
43
43
|
requirements:
|
|
44
|
-
- - "
|
|
44
|
+
- - ">="
|
|
45
45
|
- !ruby/object:Gem::Version
|
|
46
|
-
version: '
|
|
46
|
+
version: '2.0'
|
|
47
47
|
type: :development
|
|
48
48
|
prerelease: false
|
|
49
49
|
version_requirements: !ruby/object:Gem::Requirement
|
|
50
50
|
requirements:
|
|
51
|
-
- - "
|
|
51
|
+
- - ">="
|
|
52
52
|
- !ruby/object:Gem::Version
|
|
53
|
-
version: '
|
|
53
|
+
version: '2.0'
|
|
54
54
|
description: It adds support for send invitations by email (it requires to be authenticated)
|
|
55
55
|
and accept the invitation by setting a password.
|
|
56
56
|
email:
|
|
@@ -95,23 +95,30 @@ files:
|
|
|
95
95
|
- config/locales/zh-TW.yml
|
|
96
96
|
- lib/devise_invitable.rb
|
|
97
97
|
- lib/devise_invitable/controllers/helpers.rb
|
|
98
|
+
- lib/devise_invitable/invitation.rb
|
|
98
99
|
- lib/devise_invitable/inviter.rb
|
|
99
100
|
- lib/devise_invitable/mailer.rb
|
|
100
101
|
- lib/devise_invitable/mapping.rb
|
|
102
|
+
- lib/devise_invitable/migrator.rb
|
|
101
103
|
- lib/devise_invitable/models.rb
|
|
102
104
|
- lib/devise_invitable/models/authenticatable.rb
|
|
103
105
|
- lib/devise_invitable/parameter_sanitizer.rb
|
|
104
106
|
- lib/devise_invitable/rails.rb
|
|
105
107
|
- lib/devise_invitable/routes.rb
|
|
106
108
|
- lib/devise_invitable/version.rb
|
|
107
|
-
- lib/generators/active_record/
|
|
108
|
-
- lib/generators/active_record/
|
|
109
|
+
- lib/generators/active_record/devise_invitable_install_generator.rb
|
|
110
|
+
- lib/generators/active_record/devise_invitable_upgrade_generator.rb
|
|
111
|
+
- lib/generators/active_record/templates/create_devise_invitations.rb
|
|
112
|
+
- lib/generators/active_record/templates/upgrade_devise_invitations.rb
|
|
109
113
|
- lib/generators/devise_invitable/devise_invitable_generator.rb
|
|
110
114
|
- lib/generators/devise_invitable/install_generator.rb
|
|
111
115
|
- lib/generators/devise_invitable/templates/simple_form_for/invitations/edit.html.erb
|
|
112
116
|
- lib/generators/devise_invitable/templates/simple_form_for/invitations/new.html.erb
|
|
117
|
+
- lib/generators/devise_invitable/upgrade_generator.rb
|
|
113
118
|
- lib/generators/devise_invitable/views_generator.rb
|
|
114
|
-
- lib/generators/mongoid/
|
|
119
|
+
- lib/generators/mongoid/devise_invitable_install_generator.rb
|
|
120
|
+
- lib/generators/mongoid/devise_invitable_upgrade_generator.rb
|
|
121
|
+
- lib/tasks/devise_invitable_tasks.rake
|
|
115
122
|
- test/functional/controller_helpers_test.rb
|
|
116
123
|
- test/functional/registrations_controller_test.rb
|
|
117
124
|
- test/generators/views_generator_test.rb
|
|
@@ -123,6 +130,7 @@ files:
|
|
|
123
130
|
- test/mailers/parent_mailer_test.rb
|
|
124
131
|
- test/model_tests_helper.rb
|
|
125
132
|
- test/models/invitable_test.rb
|
|
133
|
+
- test/models/separate_invitations_test.rb
|
|
126
134
|
- test/models_test.rb
|
|
127
135
|
- test/orm/active_record.rb
|
|
128
136
|
- test/orm/mongoid.rb
|
|
@@ -182,7 +190,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
182
190
|
requirements:
|
|
183
191
|
- - ">="
|
|
184
192
|
- !ruby/object:Gem::Version
|
|
185
|
-
version: 2.
|
|
193
|
+
version: 2.7.0
|
|
186
194
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
187
195
|
requirements:
|
|
188
196
|
- - ">="
|
|
@@ -204,6 +212,7 @@ test_files:
|
|
|
204
212
|
- test/mailers/parent_mailer_test.rb
|
|
205
213
|
- test/model_tests_helper.rb
|
|
206
214
|
- test/models/invitable_test.rb
|
|
215
|
+
- test/models/separate_invitations_test.rb
|
|
207
216
|
- test/models_test.rb
|
|
208
217
|
- test/orm/active_record.rb
|
|
209
218
|
- test/orm/mongoid.rb
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
require 'rails/generators/active_record'
|
|
2
|
-
|
|
3
|
-
module ActiveRecord
|
|
4
|
-
module Generators
|
|
5
|
-
class DeviseInvitableGenerator < ActiveRecord::Generators::Base
|
|
6
|
-
source_root File.expand_path('../templates', __FILE__)
|
|
7
|
-
|
|
8
|
-
def copy_devise_migration
|
|
9
|
-
migration_template 'migration.rb', "db/migrate/devise_invitable_add_to_#{table_name}.rb", migration_version: migration_version
|
|
10
|
-
end
|
|
11
|
-
|
|
12
|
-
def migration_version
|
|
13
|
-
if Rails::VERSION::MAJOR >= 5
|
|
14
|
-
"[#{Rails::VERSION::MAJOR}.#{Rails::VERSION::MINOR}]"
|
|
15
|
-
end
|
|
16
|
-
end
|
|
17
|
-
end
|
|
18
|
-
end
|
|
19
|
-
end
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
class DeviseInvitableAddTo<%= table_name.camelize %> < ActiveRecord::Migration<%= migration_version %>
|
|
2
|
-
def up
|
|
3
|
-
change_table :<%= table_name %> do |t|
|
|
4
|
-
t.string :invitation_token
|
|
5
|
-
t.datetime :invitation_created_at
|
|
6
|
-
t.datetime :invitation_sent_at
|
|
7
|
-
t.datetime :invitation_accepted_at
|
|
8
|
-
t.integer :invitation_limit
|
|
9
|
-
t.references :invited_by, polymorphic: true
|
|
10
|
-
t.integer :invitations_count, default: 0
|
|
11
|
-
t.index :invitation_token, unique: true # for invitable
|
|
12
|
-
t.index :invited_by_id
|
|
13
|
-
end
|
|
14
|
-
end
|
|
15
|
-
|
|
16
|
-
def down
|
|
17
|
-
change_table :<%= table_name %> do |t|
|
|
18
|
-
t.remove_references :invited_by, polymorphic: true
|
|
19
|
-
t.remove :invitations_count, :invitation_limit, :invitation_sent_at, :invitation_accepted_at, :invitation_token, :invitation_created_at
|
|
20
|
-
end
|
|
21
|
-
end
|
|
22
|
-
end
|