class PasswordResetsController

Public Instance Methods

create() click to toggle source
# File lib/generators/oath/templates/app/controllers/password_resets_controller.rb, line 8
def create
  user = User.find_by(email: params[:password_reset][:email])
  if user
    password_reset = PasswordReset.create(user: user)
    PasswordResetMailer.change_password(password_reset).deliver_now # NOTE: You'll want to delay this
  end
end
edit() click to toggle source
# File lib/generators/oath/templates/app/controllers/password_resets_controller.rb, line 16
def edit
  @password_reset = PasswordReset.find_by!(token: params[:id], user_id: params[:user_id])
  @user = @password_reset.user
end
new() click to toggle source
# File lib/generators/oath/templates/app/controllers/password_resets_controller.rb, line 4
def new
  @password_reset = PasswordReset.new
end
update() click to toggle source
# File lib/generators/oath/templates/app/controllers/password_resets_controller.rb, line 21
def update
  @password_reset = PasswordReset.find_by!(token: params[:id], user_id: params[:user_id])
  @user = @password_reset.user

  reset_password(@user, params[:password_reset][:password])

  if @user.save
    sign_in @user
    redirect_to root_path
  else
    render :edit
  end
end