Sha256: d53c2ec19a327680d168debe6237ceef0b98dc06a8bdf178f6cddeb2c3d86775

Contents?: true

Size: 855 Bytes

Versions: 13

Compression:

Stored size: 855 Bytes

Contents

class SessionsController < ApplicationController
  before_filter :destroy_session, except: :create

  unloadable

  # GET /login
  # GET /sign-in
  def new
    @session = Challah::Session.new(request)
  end

  # POST /login
  # POST /sign-in
  def create
    @session = Challah::Session.new(request, params[:session])
    @session.ip = request.remote_ip

    if @session.save
      redirect_to return_to_path
    else
      redirect_to signin_path, alert: I18n.translate('sessions.create.failed_login')
    end
  end

  # GET /logout
  # GET /sign-out
  def destroy
    redirect_to signin_path
  end

  protected

  def destroy_session
    current_user_session.destroy
  end

  def return_to_path(default_path = '/')
    result = session[:return_to]
    result = nil if result and result == "http://#{request.domain}/"
    result || default_path
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
challah-1.2.8 app/controllers/sessions_controller.rb
challah-1.2.7 app/controllers/sessions_controller.rb
challah-1.2.6 app/controllers/sessions_controller.rb
challah-1.2.5 app/controllers/sessions_controller.rb
challah-1.2.5.pre app/controllers/sessions_controller.rb
challah-1.2.4 app/controllers/sessions_controller.rb
challah-1.2.3 app/controllers/sessions_controller.rb
challah-1.2.2 app/controllers/sessions_controller.rb
challah-1.2.1 app/controllers/sessions_controller.rb
challah-1.2.0 app/controllers/sessions_controller.rb
challah-1.2.0.rc app/controllers/sessions_controller.rb
challah-1.1.1 app/controllers/sessions_controller.rb
challah-1.1.0 app/controllers/sessions_controller.rb