jt-rails-generator-user 1.0.2 → 1.0.3
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
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9c922c8feff058378a13b601193d36c4a4c5d07b
|
4
|
+
data.tar.gz: 9759af6494f0e5a9eecc98c4f12fca8e802447bc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ebe400621940359872d0796e35fe62fa75bab1a84399d6cba23fd63130289b20c87ab2633fbf7167fba2126590b08e16c890c5bc2cc43027fe24532bde5a6b0a
|
7
|
+
data.tar.gz: a63a2ba1bf0d44a16e102bb95e91cbe3efe422cc295310b5a211c1be68c1ea91bafa373f15ea4216803d0ac3e87e1b0e18637b6cd9b3deadab81764a3e8ddfb5
|
@@ -3,7 +3,7 @@ Gem::Specification.new do |s|
|
|
3
3
|
s.summary = "Generate a scaffold for user authentication in Ruby On Rails"
|
4
4
|
s.description = "JTRailsGeneratorUser is a generator for user authentication. You have the login and sign up page, password forgot feature."
|
5
5
|
s.homepage = 'https://github.com/jonathantribouharet/jt-rails-generator-user'
|
6
|
-
s.version = '1.0.
|
6
|
+
s.version = '1.0.3'
|
7
7
|
s.files = `git ls-files`.split("\n")
|
8
8
|
s.require_paths = ['lib']
|
9
9
|
s.authors = ['Jonathan TRIBOUHARET']
|
@@ -13,4 +13,5 @@ Gem::Specification.new do |s|
|
|
13
13
|
|
14
14
|
s.add_dependency('validates_email_format_of', '~> 1.6')
|
15
15
|
s.add_dependency('bcrypt', '~> 3.1.7')
|
16
|
+
s.add_dependency('jt-rails-tokenizable', '~> 1.0')
|
16
17
|
end
|
@@ -20,7 +20,6 @@ class UsersController < ApplicationController
|
|
20
20
|
if request.post?
|
21
21
|
@user = User.search_by_email_for_authentication(params[:email]).first
|
22
22
|
if @user
|
23
|
-
@user.generate_new_password_token!
|
24
23
|
UserMailer.reset_password(@user.id).deliver_later
|
25
24
|
|
26
25
|
redirect_to root_url
|
@@ -32,7 +31,9 @@ class UsersController < ApplicationController
|
|
32
31
|
user = User.where(password_token: params[:token]).first
|
33
32
|
if user
|
34
33
|
set_current_user(user)
|
35
|
-
|
34
|
+
|
35
|
+
user.generate_new_token(:password_token)
|
36
|
+
user.save
|
36
37
|
|
37
38
|
redirect_to root_url
|
38
39
|
else
|
@@ -3,10 +3,13 @@ module UserAuthentication
|
|
3
3
|
|
4
4
|
included do
|
5
5
|
|
6
|
+
include JT::Rails::Tokenizable
|
7
|
+
|
6
8
|
has_secure_password
|
7
9
|
|
10
|
+
tokenize :password_token
|
11
|
+
|
8
12
|
validates :email, presence: true, email_format: true, uniqueness: { case_sensitive: false}
|
9
|
-
validates :password_token, uniqueness: true, if: Proc.new {|u| !u.password_token.blank? }
|
10
13
|
|
11
14
|
before_save :downcase_email
|
12
15
|
|
@@ -26,16 +29,4 @@ module UserAuthentication
|
|
26
29
|
self.email.downcase! if self.email
|
27
30
|
end
|
28
31
|
|
29
|
-
def generate_new_password_token!
|
30
|
-
self.password_token = loop do
|
31
|
-
random_token = SecureRandom.urlsafe_base64(128, false)
|
32
|
-
break random_token unless self.class.exists?(password_token: random_token)
|
33
|
-
end
|
34
|
-
self.save!
|
35
|
-
end
|
36
|
-
|
37
|
-
def clear_password_token!
|
38
|
-
self.update_column(:password_token, nil)
|
39
|
-
end
|
40
|
-
|
41
32
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jt-rails-generator-user
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jonathan TRIBOUHARET
|
@@ -38,6 +38,20 @@ dependencies:
|
|
38
38
|
- - ~>
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: 3.1.7
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: jt-rails-tokenizable
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ~>
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '1.0'
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ~>
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '1.0'
|
41
55
|
description: JTRailsGeneratorUser is a generator for user authentication. You have
|
42
56
|
the login and sign up page, password forgot feature.
|
43
57
|
email: jonathan.tribouharet@gmail.com
|