refactoring and rubocop changes

This commit is contained in:
Karol Selak 2021-03-22 04:38:35 +01:00
parent f7ec73f85e
commit 5475086622
13 changed files with 33 additions and 10 deletions

View file

@ -39,16 +39,9 @@ class UsersController < ApplicationController
end
def recover_password
user = User.find(params[:user_id])
if user.recovery_password_digest && user.authenticate_recovery_password(params[:recovery_password])
user.password = params[:password]
user.password_confirmation = params[:password_confirmation]
if user.save
user.update(recovery_password: nil)
redirect_to '/welcome', notice: 'Password changed'
else
redirect_to '/welcome', notice: 'Passwords don\'t match'
end
@user = User.find(params[:user_id])
if recovery_password_proper?
set_new_password
else
redirect_to '/welcome', notice: 'Recovery link expired or invalid'
end
@ -63,4 +56,22 @@ class UsersController < ApplicationController
User.find(params[:id]).update(status: :blocked)
redirect_to '/users'
end
private
def recovery_password_proper?
@user.recovery_password_digest &&
@user.authenticate_recovery_password(params[:recovery_password])
end
def set_new_password
@user.password = params[:password]
@user.password_confirmation = params[:password_confirmation]
if @user.save
@user.update(recovery_password: nil)
redirect_to '/welcome', notice: 'Password changed'
else
redirect_to '/welcome', notice: 'Passwords don\'t match'
end
end
end