fluentd-ui/app/controllers/sessions_controller.rb
2014-05-13 17:02:32 +09:00

31 lines
722 B
Ruby

class SessionsController < ApplicationController
def create
user = User.find_by(name: session_params[:name]).try(:authenticate, session_params[:password])
unless user
flash.now[:notice] = I18n.t("error.login_failed")
return render :new
end
sign_in user
redirect_to root_path
end
def destroy
current_user.update_attribute(:remember_token, nil)
session.delete :remember_token
redirect_to new_sessions_path
end
private
def session_params
params.require(:session).permit(:name, :password)
end
def sign_in(user)
token = user.generate_remember_token
session[:remember_token] = token
user.update_attribute(:remember_token, token)
user
end
end