class Admin::SessionsController < Admin::BaseController

  skip_before_filter :require_admin

  # Intialize object for new session if user is admin.
  def new
    redirect_to admin_path and return if logged_in? && current_user.admin?
  end

  # Create session for user if user is admin.
  def create
    login(params[:session][:email], params[:session][:password], params[:session][:remember_me])
    if logged_in? and current_user.admin?
      session[:super_admin] = true if current_user.super_admin?
      respond_to do |format|
        format.html { redirect_to admin_path}
        format.js { redirect_via_turbolinks_to admin_path}
      end
    else
      respond_to do |format|
        format.html { render 'new'}
        format.js
      end
    end
  end

  def destroy
    logout
    redirect_to new_admin_sessions_path, :notice => 'Bye. You have been logged out.'
  end

  def user_class
    (params[:super_admin] or session[:super_admin]) ? Admin : super
  end

end
