Class: Authuser::SessionsController

Inherits:
ApplicationController
  • Object
show all
Defined in:
app/controllers/authuser/sessions_controller.rb

Instance Method Summary collapse

Instance Method Details

#createObject



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'app/controllers/authuser/sessions_controller.rb', line 11

def create
  @user = ::User.authenticate(params[:session][:email],
                            params[:session][:password])
  if @user.nil?
    flash.now[:failure] = translate(:bad_email_or_password,
      :scope   => [:authuser, :controllers, :sessions],
      :default => "Bad email or password.")
    render :template => 'sessions/new', :status => :unauthorized
  else
    if @user.email_confirmed?
      sign_user_in(@user)
      remember(@user) if remember?
      flash[:success] = translate(:signed_in, :default =>  "Signed in.")
      redirect_back_or url_after_create
    else
      ::AuthuserMailer.deliver_confirmation(@user)
      deny_access(translate(:unconfirmed_email,
        :scope   => [:authuser, :controllers, :sessions],
        :default => "User has not confirmed email. " <<
                    "Confirmation email will be resent."))
    end
  end
end

#destroyObject



35
36
37
38
39
# File 'app/controllers/authuser/sessions_controller.rb', line 35

def destroy
  forget(current_user)
  flash[:success] = translate(:signed_out, :default =>  "Signed out.")
  redirect_to url_after_destroy
end

#newObject



7
8
9
# File 'app/controllers/authuser/sessions_controller.rb', line 7

def new
  render :template => 'sessions/new'
end