do not sign in after reset password if 2fa
https://github.com/devise-two-factor/devise-two-factor#disabling-automatic-login-after-password-resets thanks Greg Molnar
This commit is contained in:
@@ -0,0 +1,13 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
class PasswordsController < Devise::PasswordsController
|
||||
class Current < ActiveSupport::CurrentAttributes
|
||||
attribute :user
|
||||
end
|
||||
|
||||
def update
|
||||
super do |resource|
|
||||
Current.user = resource
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -76,6 +76,14 @@ class User < ApplicationRecord
|
||||
true
|
||||
end
|
||||
|
||||
def self.sign_in_after_reset_password
|
||||
if PasswordsController::Current.user.present?
|
||||
!PasswordsController::Current.user.otp_required_for_login
|
||||
else
|
||||
true
|
||||
end
|
||||
end
|
||||
|
||||
def initials
|
||||
[first_name&.first, last_name&.first].compact_blank.join.upcase
|
||||
end
|
||||
|
||||
+1
-1
@@ -9,7 +9,7 @@ Rails.application.routes.draw do
|
||||
devise_for :users,
|
||||
path: '/', only: %i[sessions passwords omniauth_callbacks],
|
||||
controllers: begin
|
||||
options = { sessions: 'sessions' }
|
||||
options = { sessions: 'sessions', passwords: 'passwords' }
|
||||
options[:omniauth_callbacks] = 'omniauth_callbacks' if Docuseal.multitenant?
|
||||
options
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user