adding password rest method and changing some logic around

This commit is contained in:
Mike McCabe
2013-12-11 22:25:02 -05:00
parent 8eb398950f
commit abe22b19e9
6 changed files with 56 additions and 40 deletions
+1 -23
View File
@@ -1,18 +1,8 @@
class UsersController < ApplicationController
skip_before_filter :has_info
skip_before_filter :authenticated, :only => [:new, :create, :forgot_password]
skip_before_filter :authenticated, :only => [:new, :create]
def forgot_password
@user = User.find_by_email(params[:email]) unless params[:email].nil?
if @user && password_reset_mailer_setup(@user)
flash[:success] = "Password reset email sent to #{params[:email]}"
redirect_to :login
else
flash[:error] = "There was an issue sending password reset email to #{params[:email]}".html_safe unless params[:email].nil?
end
end
def new
@user = User.new
@@ -63,16 +53,4 @@ class UsersController < ApplicationController
end
end
private
def password_reset_mailer_setup(user)
token = generate_token(user.id, user.email)
UserMailer.forgot_password(user.email, token).deliver
end
def generate_token(id, email)
hash = Digest::MD5.hexdigest(email)
"#{id}-#{hash}"
end
end