class SessionsController

Public Instance Methods

create() click to toggle source
# File lib/dangerzone/templates/controllers/sessions_controller.rb, line 3
def create
  clear_cookies
  @user = User.find_by_email(params[:email].try(:downcase))
  if @user.try(:sign_in!, request.remote_ip, params[:password])
    set_cookies(params[:remember_me])
    redirect_to :root, notice: "Sign-in successful."
  else
    redirect_to :sign_in, notice: "Sign-in unsuccessful."
  end
end
destroy() click to toggle source
# File lib/dangerzone/templates/controllers/sessions_controller.rb, line 14
def destroy
  clear_cookies
  redirect_to :sign_in, notice: "Sign-out successful."
end
new() click to toggle source
# File lib/dangerzone/templates/controllers/sessions_controller.rb, line 19
def new
  redirect_to :root if session[:user_id] || cookies[:remember_token]
end

Private Instance Methods

clear_cookies() click to toggle source
# File lib/dangerzone/templates/controllers/sessions_controller.rb, line 29
def clear_cookies
  cookies.delete(:remember_token)
  reset_session
end
set_cookies(remember_me) click to toggle source
# File lib/dangerzone/templates/controllers/sessions_controller.rb, line 25
def set_cookies(remember_me)
  remember_me.present? ? cookies.permanent[:remember_token] = @user.remember_token : session[:user_id] = @user.id
end