Module: Clearance::App::Controllers::ApplicationController::ProtectedInstanceMethods

Defined in:
lib/clearance/app/controllers/application_controller.rb

Instance Method Summary collapse

Instance Method Details

#authenticateObject



29
30
31
# File 'lib/clearance/app/controllers/application_controller.rb', line 29

def authenticate
  deny_access unless logged_in?
end

#deny_access(flash_message = nil, opts = {}) ⇒ Object



66
67
68
69
70
71
# File 'lib/clearance/app/controllers/application_controller.rb', line 66

def deny_access(flash_message = nil, opts = {})
  opts[:redirect] ||= new_session_path
  store_location
  flash[:error] = flash_message if flash_message
  redirect_to opts[:redirect]
end

#log_user_in(user) ⇒ Object

Level of indirection so you can easily override this method but also call #login .



44
45
46
# File 'lib/clearance/app/controllers/application_controller.rb', line 44

def log_user_in(user)
  (user)
end

#login(user) ⇒ Object



48
49
50
51
# File 'lib/clearance/app/controllers/application_controller.rb', line 48

def (user)
  session[:user_id] = user.id if user
  @current_user = user
end

#mailer_modelObject



77
78
79
# File 'lib/clearance/app/controllers/application_controller.rb', line 77

def mailer_model
  ClearanceMailer
end

#redirect_back_or(default) ⇒ Object



53
54
55
56
# File 'lib/clearance/app/controllers/application_controller.rb', line 53

def redirect_back_or(default)
  session[:return_to] ? redirect_to(session[:return_to]) : redirect_to(default)
  session[:return_to] = nil
end

#redirect_to_rootObject



58
59
60
# File 'lib/clearance/app/controllers/application_controller.rb', line 58

def redirect_to_root
  redirect_to root_url
end

#store_locationObject



62
63
64
# File 'lib/clearance/app/controllers/application_controller.rb', line 62

def store_location
  session[:return_to] = request.request_uri
end


37
38
39
40
# File 'lib/clearance/app/controllers/application_controller.rb', line 37

def user_from_cookie
  user = user_model.find_by_remember_token(cookies[:auth_token]) if cookies[:auth_token]
  user && user.remember_token? ? user : nil
end

#user_from_sessionObject



33
34
35
# File 'lib/clearance/app/controllers/application_controller.rb', line 33

def user_from_session
  user_model.find_by_id session[:user_id]
end

#user_modelObject



73
74
75
# File 'lib/clearance/app/controllers/application_controller.rb', line 73

def user_model
  User
end