32 lines
932 B
Ruby
32 lines
932 B
Ruby
# This controller handles the login/logout function of the site.
|
|
class SessionsController < ApplicationController
|
|
# Be sure to include AuthenticationSystem in Application Controller instead
|
|
include AuthenticatedSystem
|
|
|
|
# render new.rhtml
|
|
def new
|
|
end
|
|
|
|
def create
|
|
self.current_user = User.authenticate(params[:login], params[:password])
|
|
if logged_in?
|
|
if params[:remember_me] == "1"
|
|
self.current_user.remember_me
|
|
cookies[:auth_token] = { :value => self.current_user.remember_token , :expires => self.current_user.remember_token_expires_at }
|
|
end
|
|
redirect_back_or_default('/')
|
|
flash[:notice] = "Logged in successfully"
|
|
else
|
|
render :action => 'new'
|
|
end
|
|
end
|
|
|
|
def destroy
|
|
self.current_user.forget_me if logged_in?
|
|
cookies.delete :auth_token
|
|
reset_session
|
|
flash[:notice] = "You have been logged out."
|
|
redirect_back_or_default('/')
|
|
end
|
|
end
|