Sha256: 05f90555e1f3ea6b494995681ce5595fa978fcbbbc8b3a0cef423e4c31f6fb20

Contents?: true

Size: 841 Bytes

Versions: 12

Compression:

Stored size: 841 Bytes

Contents

# coding: utf-8
class SessionsController < ApplicationController

  #----------#
  # callback #
  #----------#
  def callback
    auth = request.env["omniauth.auth"]
    user = User.where( provider: auth["provider"], uid: auth["uid"] ).first || User.create_with_omniauth( auth )
    session[:user_id] = user.id

    # 保管URLへリダイレクト
    unless session[:request_url].blank?
      redirect_to session[:request_url]
      session[:request_url] = nil
      return
    end

    redirect_to :root, notice: "ログインしました。"
  end

  #---------#
  # destroy #
  #---------#
  def destroy
    session[:user_id] = nil

    redirect_to :root, notice: "ログアウトしました。"
  end

  #---------#
  # failure #
  #---------#
  def failure
    render text: "<span style='color: red;'>Auth Failure</span>"
  end

end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
omniauth-scaffold-0.1.26 lib/omniauth-scaffold/templates/sessions_controller.rb
omniauth-scaffold-0.1.25 lib/omniauth-scaffold/templates/sessions_controller.rb
omniauth-scaffold-0.1.24 lib/omniauth-scaffold/templates/sessions_controller.rb
omniauth-scaffold-0.1.23 lib/omniauth-scaffold/templates/sessions_controller.rb
omniauth-scaffold-0.1.22 lib/omniauth-scaffold/templates/sessions_controller.rb
omniauth-scaffold-0.1.21 lib/omniauth-scaffold/templates/sessions_controller.rb
omniauth-scaffold-0.1.20 lib/omniauth-scaffold/templates/sessions_controller.rb
omniauth-scaffold-0.1.19 lib/omniauth-scaffold/templates/sessions_controller.rb
omniauth-scaffold-0.1.18 lib/omniauth-scaffold/templates/sessions_controller.rb
omniauth-scaffold-0.1.17 lib/omniauth-scaffold/templates/sessions_controller.rb
omniauth-scaffold-0.1.16 lib/omniauth-scaffold/templates/sessions_controller.rb
omniauth-scaffold-0.1.15 lib/omniauth-scaffold/templates/sessions_controller.rb