authentication-zero 0.0.8 → 0.0.12
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/README.md +2 -2
- data/lib/authentication_zero/version.rb +1 -1
- data/lib/generators/authentication/authentication_generator.rb +6 -11
- data/lib/generators/authentication/templates/controllers/api/cancellations_controller.rb.tt +1 -1
- data/lib/generators/authentication/templates/controllers/api/password_resets_controller.rb.tt +5 -4
- data/lib/generators/authentication/templates/controllers/api/passwords_controller.rb.tt +1 -1
- data/lib/generators/authentication/templates/controllers/api/registrations_controller.rb.tt +1 -1
- data/lib/generators/authentication/templates/controllers/html/cancellations_controller.rb.tt +1 -1
- data/lib/generators/authentication/templates/controllers/html/password_resets_controller.rb.tt +5 -4
- data/lib/generators/authentication/templates/controllers/html/passwords_controller.rb.tt +1 -1
- data/lib/generators/authentication/templates/mailers/password_mailer.rb.tt +1 -1
- data/lib/generators/authentication/templates/views/cancellations/new.html.erb.tt +2 -2
- data/lib/generators/authentication/templates/views/password_mailer/reset.html.erb.tt +8 -4
- data/lib/generators/authentication/templates/views/password_mailer/reset.text.erb.tt +6 -4
- data/lib/generators/authentication/templates/views/password_resets/edit.html.erb.tt +7 -11
- data/lib/generators/authentication/templates/views/password_resets/new.html.erb.tt +2 -9
- data/lib/generators/authentication/templates/views/passwords/edit.html.erb.tt +4 -3
- data/lib/generators/authentication/templates/views/registrations/new.html.erb.tt +2 -7
- data/lib/generators/authentication/templates/views/sessions/new.html.erb.tt +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c9a25e8862ad568105b15810d98b4efb68b1d7a69199c35ff7a726b991aeb21d
|
4
|
+
data.tar.gz: fd37bc06817fb23c8bd61c4cfe8635932be62ae94df89b5f5928f55b749e0a7d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7c89d91c1e3b5259b2924b6c25ee09c094db9f71deb75944cf9387b45c7f3202cba8bc394539d1fc5c79038aeb5dbbbe74eed5b0ac4fd44c7f76377278380f24
|
7
|
+
data.tar.gz: 4f79e7af311270e7d995f8e07f3e2a73269c41b4fe17e31d7542e98547c96df4a6f55340d3575f05cd56e445582a9955443ca279ce8fe01f5fab4164d90c7d94
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -31,11 +31,11 @@ Add these lines to your `app/views/home/index.html.erb`:
|
|
31
31
|
<p>Signed as <%= Current.user.email %></p>
|
32
32
|
|
33
33
|
<div>
|
34
|
-
<%= link_to "Change password",
|
34
|
+
<%= link_to "Change password", edit_passwords_path %>
|
35
35
|
</div>
|
36
36
|
|
37
37
|
<div>
|
38
|
-
<%= link_to "Cancel my account & delete my data",
|
38
|
+
<%= link_to "Cancel my account & delete my data", new_cancellations_path %>
|
39
39
|
</div>
|
40
40
|
|
41
41
|
<%= button_to "Log out", sign_out_path, method: :delete %>
|
@@ -37,19 +37,14 @@ class AuthenticationGenerator < Rails::Generators::NamedBase
|
|
37
37
|
end
|
38
38
|
|
39
39
|
def add_routes
|
40
|
-
route "
|
40
|
+
route "resource :password_resets, only: [:new, :edit, :create, :update]"
|
41
|
+
route "resource :cancellations, only: [:new, :create]"
|
42
|
+
route "resource :passwords, only: [:update, :edit]"
|
43
|
+
route "delete 'sign_out', to: 'sessions#destroy'"
|
41
44
|
route "post 'sign_up', to: 'registrations#create'"
|
42
|
-
route "get '
|
45
|
+
route "get 'sign_up', to: 'registrations#new'" unless options.api?
|
43
46
|
route "post 'sign_in', to: 'sessions#create'"
|
44
|
-
route "get '
|
45
|
-
route "patch 'password', to: 'passwords#update'"
|
46
|
-
route "get 'cancellation/new', to: 'cancellations#new'" unless options.api?
|
47
|
-
route "post 'cancellation', to: 'cancellations#destroy'"
|
48
|
-
route "get 'password_reset/new', to: 'password_resets#new'" unless options.api?
|
49
|
-
route "post 'password_reset', to: 'password_resets#create'"
|
50
|
-
route "get 'password_reset/edit', to: 'password_resets#edit'"
|
51
|
-
route "patch 'password_reset', to: 'password_resets#update'"
|
52
|
-
route "delete 'sign_out', to: 'sessions#destroy'"
|
47
|
+
route "get 'sign_in', to: 'sessions#new'" unless options.api?
|
53
48
|
end
|
54
49
|
|
55
50
|
def add_application_controller_methods
|
data/lib/generators/authentication/templates/controllers/api/password_resets_controller.rb.tt
CHANGED
@@ -1,9 +1,10 @@
|
|
1
1
|
class PasswordResetsController < ApplicationController
|
2
|
-
before_action :set_<%= singular_table_name %>, only: %i[ edit update ]
|
3
2
|
skip_before_action :authenticate
|
4
3
|
|
4
|
+
before_action :set_<%= singular_table_name %>, only: %i[ edit update ]
|
5
|
+
|
5
6
|
def edit
|
6
|
-
render json: {
|
7
|
+
render json: { error: "Open this link in your device" }, status: :not_found
|
7
8
|
end
|
8
9
|
|
9
10
|
def create
|
@@ -24,12 +25,12 @@ class PasswordResetsController < ApplicationController
|
|
24
25
|
|
25
26
|
private
|
26
27
|
def set_<%= singular_table_name %>
|
27
|
-
@<%= singular_table_name %> = <%= class_name %>.find_signed!(params[:
|
28
|
+
@<%= singular_table_name %> = <%= class_name %>.find_signed!(params[:sid], purpose: "password_reset")
|
28
29
|
rescue ActiveSupport::MessageVerifier::InvalidSignature
|
29
30
|
render json: { error: "Your token has expired, please request a new one" }, status: :bad_request
|
30
31
|
end
|
31
32
|
|
32
33
|
def password_params
|
33
|
-
params.
|
34
|
+
params.permit(:password, :password_confirmation)
|
34
35
|
end
|
35
36
|
end
|
@@ -13,6 +13,6 @@ class RegistrationsController < ApplicationController
|
|
13
13
|
|
14
14
|
private
|
15
15
|
def <%= "#{singular_table_name}_params" %>
|
16
|
-
params.
|
16
|
+
params.permit(:email, :password, :password_confirmation)
|
17
17
|
end
|
18
18
|
end
|
data/lib/generators/authentication/templates/controllers/html/password_resets_controller.rb.tt
CHANGED
@@ -1,7 +1,8 @@
|
|
1
1
|
class PasswordResetsController < ApplicationController
|
2
|
-
before_action :set_<%= singular_table_name %>, only: %i[ edit update ]
|
3
2
|
skip_before_action :authenticate
|
4
3
|
|
4
|
+
before_action :set_<%= singular_table_name %>, only: %i[ edit update ]
|
5
|
+
|
5
6
|
def new
|
6
7
|
end
|
7
8
|
|
@@ -13,7 +14,7 @@ class PasswordResetsController < ApplicationController
|
|
13
14
|
PasswordMailer.with(<%= singular_table_name %>: @<%= singular_table_name %>).reset.deliver_later
|
14
15
|
redirect_to sign_in_path, notice: "You will receive an email with instructions on how to reset your password in a few minutes"
|
15
16
|
else
|
16
|
-
redirect_to
|
17
|
+
redirect_to new_password_resets_path, alert: "The email address doesn't exist in our database"
|
17
18
|
end
|
18
19
|
end
|
19
20
|
|
@@ -27,9 +28,9 @@ class PasswordResetsController < ApplicationController
|
|
27
28
|
|
28
29
|
private
|
29
30
|
def set_<%= singular_table_name %>
|
30
|
-
@<%= singular_table_name %> = <%= class_name %>.find_signed!(params[:
|
31
|
+
@<%= singular_table_name %> = <%= class_name %>.find_signed!(params[:sid], purpose: "password_reset")
|
31
32
|
rescue ActiveSupport::MessageVerifier::InvalidSignature
|
32
|
-
redirect_to
|
33
|
+
redirect_to new_password_resets_path, alert: "Your token has expired, please request a new one"
|
33
34
|
end
|
34
35
|
|
35
36
|
def password_params
|
@@ -7,7 +7,7 @@ class PasswordsController < ApplicationController
|
|
7
7
|
|
8
8
|
def update
|
9
9
|
if !@<%= singular_table_name %>.authenticate(params[:current_password])
|
10
|
-
redirect_to
|
10
|
+
redirect_to edit_passwords_path, alert: "The current password you entered is incorrect"
|
11
11
|
elsif @<%= singular_table_name %>.update(password_params)
|
12
12
|
redirect_to root_path, notice: "Your password has been changed successfully"
|
13
13
|
else
|
@@ -1,6 +1,6 @@
|
|
1
1
|
class PasswordMailer < ApplicationMailer
|
2
2
|
def reset
|
3
|
-
@
|
3
|
+
@signed_id = params[:<%= singular_table_name %>].signed_id(purpose: "password_reset", expires_in: 20.minutes)
|
4
4
|
mail to: params[:<%= singular_table_name %>].email
|
5
5
|
end
|
6
6
|
end
|
@@ -1,11 +1,11 @@
|
|
1
1
|
<h1>Want to close your account?</h1>
|
2
2
|
|
3
|
-
<p>Your account will be immediately closed. You won
|
3
|
+
<p>Your account will be immediately closed. You won't be able to sign in anymore.</p>
|
4
4
|
<p>Your data will be permanently deleted from our servers.</p>
|
5
5
|
<p><%%= link_to "Back", root_path %></p>
|
6
6
|
|
7
7
|
<br>
|
8
8
|
|
9
9
|
<div>
|
10
|
-
<%%= button_to "OK, close my account",
|
10
|
+
<%%= button_to "OK, close my account", cancellations_path %>
|
11
11
|
</div>
|
@@ -1,7 +1,11 @@
|
|
1
|
-
|
1
|
+
<p>Hey there,</p>
|
2
2
|
|
3
|
-
|
3
|
+
<p>Can't remember your password for <strong><%%= params[:<%= singular_table_name %>].email %></strong>? That's OK, it happens. Just hit the link below to set a new one.</p>
|
4
4
|
|
5
|
-
|
5
|
+
<p><%%= link_to "Reset my password", edit_password_resets_url(sid: @signed_id) %></p>
|
6
6
|
|
7
|
-
|
7
|
+
<p>If you did not request a password reset you can safely ignore this email, it expires in 20 minutes. Only someone with access to this email account can reset your password.</p>
|
8
|
+
|
9
|
+
<hr>
|
10
|
+
|
11
|
+
<p>Have questions or need help? Just reply to this email and our support team will help you sort it out.</p>
|
@@ -1,7 +1,9 @@
|
|
1
|
-
|
1
|
+
Hey there,
|
2
2
|
|
3
|
-
|
3
|
+
Can't remember your password for <%%= params[:<%= singular_table_name %>].email %>? That's OK, it happens. Just hit the link below to set a new one.
|
4
4
|
|
5
|
-
|
5
|
+
[Reset my password]<%%= edit_password_resets_url(sid: @signed_id) %>
|
6
6
|
|
7
|
-
|
7
|
+
If you did not request a password reset you can safely ignore this email, it expires in 20 minutes. Only someone with access to this email account can reset your password.
|
8
|
+
|
9
|
+
Have questions or need help? Just reply to this email and our support team will help you sort it out.
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<h1>Reset your password</h1>
|
2
2
|
|
3
|
-
<%%= form_with(model: @<%= model_resource_name %>, url:
|
3
|
+
<%%= form_with(model: @<%= model_resource_name %>, url: password_resets_path) do |form| %>
|
4
4
|
<%% if @<%= singular_table_name %>.errors.any? %>
|
5
5
|
<div style="color: red">
|
6
6
|
<h2><%%= pluralize(@<%= singular_table_name %>.errors.count, "error") %> prohibited this <%= singular_table_name %> from being saved:</h2>
|
@@ -13,24 +13,20 @@
|
|
13
13
|
</div>
|
14
14
|
<%% end %>
|
15
15
|
|
16
|
+
<%%= hidden_field_tag :sid, params[:sid] %>
|
17
|
+
|
16
18
|
<div>
|
17
|
-
<%%= form.label :password, "New password
|
19
|
+
<%%= form.label :password, "New password", style: "display: block" %>
|
18
20
|
<%%= form.password_field :password, autofocus: true, autocomplete: "new-password" %>
|
21
|
+
<div>8 characters minimum.</div>
|
19
22
|
</div>
|
20
23
|
|
21
24
|
<div>
|
22
|
-
<%%= form.label :password_confirmation, style: "display: block" %>
|
25
|
+
<%%= form.label :password_confirmation, "Confirm new password", style: "display: block" %>
|
23
26
|
<%%= form.password_field :password_confirmation, autocomplete: "new-password" %>
|
24
27
|
</div>
|
25
28
|
|
26
29
|
<div>
|
27
|
-
<%%= form.submit "
|
30
|
+
<%%= form.submit "Save changes" %>
|
28
31
|
</div>
|
29
32
|
<%% end %>
|
30
|
-
|
31
|
-
<br>
|
32
|
-
|
33
|
-
<div>
|
34
|
-
<%%= link_to "Sign in", sign_in_path %> |
|
35
|
-
<%%= link_to "Sign up", sign_up_path %>
|
36
|
-
</div>
|
@@ -2,20 +2,13 @@
|
|
2
2
|
|
3
3
|
<h1>Forgot your password?</h1>
|
4
4
|
|
5
|
-
<%%= form_with(url:
|
5
|
+
<%%= form_with(url: password_resets_path) do |form| %>
|
6
6
|
<div>
|
7
7
|
<%%= form.label :email, style: "display: block" %>
|
8
|
-
<%%= form.email_field :email, autofocus: true, required: true
|
8
|
+
<%%= form.email_field :email, autofocus: true, required: true %>
|
9
9
|
</div>
|
10
10
|
|
11
11
|
<div>
|
12
12
|
<%%= form.submit "Send password reset email" %>
|
13
13
|
</div>
|
14
14
|
<%% end %>
|
15
|
-
|
16
|
-
<br>
|
17
|
-
|
18
|
-
<div>
|
19
|
-
<%%= link_to "Sign in", sign_in_path %> |
|
20
|
-
<%%= link_to "Sign up", sign_up_path %>
|
21
|
-
</div>
|
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
<h1>Change your password</h1>
|
4
4
|
|
5
|
-
<%%= form_with(model: @<%= model_resource_name %>, url:
|
5
|
+
<%%= form_with(model: @<%= model_resource_name %>, url: passwords_path) do |form| %>
|
6
6
|
<%% if @<%= singular_table_name %>.errors.any? %>
|
7
7
|
<div style="color: red">
|
8
8
|
<h2><%%= pluralize(@<%= singular_table_name %>.errors.count, "error") %> prohibited this <%= singular_table_name %> from being saved:</h2>
|
@@ -21,12 +21,13 @@
|
|
21
21
|
</div>
|
22
22
|
|
23
23
|
<div>
|
24
|
-
<%%= form.label :password, "New password
|
24
|
+
<%%= form.label :password, "New password", style: "display: block" %>
|
25
25
|
<%%= form.password_field :password, autocomplete: "new-password" %>
|
26
|
+
<div>8 characters minimum.</div>
|
26
27
|
</div>
|
27
28
|
|
28
29
|
<div>
|
29
|
-
<%%= form.label :password_confirmation, style: "display: block" %>
|
30
|
+
<%%= form.label :password_confirmation, "Confirm new password", style: "display: block" %>
|
30
31
|
<%%= form.password_field :password_confirmation, autocomplete: "new-password" %>
|
31
32
|
</div>
|
32
33
|
|
@@ -19,8 +19,9 @@
|
|
19
19
|
</div>
|
20
20
|
|
21
21
|
<div>
|
22
|
-
<%%= form.label :password,
|
22
|
+
<%%= form.label :password, style: "display: block" %>
|
23
23
|
<%%= form.password_field :password, autocomplete: "new-password" %>
|
24
|
+
<div>8 characters minimum.</div>
|
24
25
|
</div>
|
25
26
|
|
26
27
|
<div>
|
@@ -32,9 +33,3 @@
|
|
32
33
|
<%%= form.submit "Sign up" %>
|
33
34
|
</div>
|
34
35
|
<%% end %>
|
35
|
-
|
36
|
-
<br>
|
37
|
-
|
38
|
-
<div>
|
39
|
-
<%%= link_to "Sign in", sign_in_path %>
|
40
|
-
</div>
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: authentication-zero
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.12
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nixon
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-02-
|
11
|
+
date: 2022-02-17 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description:
|
14
14
|
email:
|