Class: SessionsController

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

Instance Method Summary collapse

Instance Method Details

#createObject



9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'app/controllers/sessions_controller.rb', line 9

def create
  if auth = request.env['omniauth.auth']
    user = GoogleAuth.user_class.find_or_initialize_by(email: auth['info']['email'])
    user.uid = auth['uid']
    user.name = auth['info']['name']
    user.save!

    session[:user_id] = user.id
    redirect_to session[:redirect] || GoogleAuth.default_redirect_path
  else
    render '/auth/failure'
  end
end

#destroyObject



23
24
25
26
# File 'app/controllers/sessions_controller.rb', line 23

def destroy
  logout
  redirect_to root_path
end

#failureObject



28
29
30
# File 'app/controllers/sessions_controller.rb', line 28

def failure
  render :inline => 'Snowman says no. <div id="snowman" style="text-align:center; font-size:4000%;">&#9731;</div>'
end

#newObject



5
6
7
# File 'app/controllers/sessions_controller.rb', line 5

def new
  redirect_to '/auth/g'
end