Module: Clearance::App::Controllers::SessionsController::Actions

Defined in:
lib/clearance/app/controllers/sessions_controller.rb

Instance Method Summary collapse

Instance Method Details

#createObject



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/clearance/app/controllers/sessions_controller.rb', line 17

def create
  @user = User.authenticate(params[:session][:email],
                            params[:session][:password])
  if @user.nil?
    flash.now[:notice] = "Bad email or password."
    render :action => :new, :status => :unauthorized
  else
    if @user.email_confirmed?
      remember(@user) if remember?
      sign_user_in(@user)
      flash[:notice] = "Signed in successfully."
      redirect_back_or url_after_create
    else
      ClearanceMailer.deliver_confirmation(@user)
      deny_access("User has not confirmed email. Confirmation email will be resent.")
    end
  end
end

#destroyObject



36
37
38
39
40
41
# File 'lib/clearance/app/controllers/sessions_controller.rb', line 36

def destroy
  forget(current_user)
  reset_session
  flash[:notice] = "You have been signed out."
  redirect_to url_after_destroy
end