Module: Passwordless::ControllerHelpers

Included in:
SessionsController
Defined in:
app/lib/passwordless/controller_helpers.rb

Instance Method Summary collapse

Instance Method Details



3
4
5
6
7
8
9
# File 'app/lib/passwordless/controller_helpers.rb', line 3

def authenticate_by_cookie(authenticatable_class)
  key = cookie_name(authenticatable_class)
  authenticatable_id = cookies.encrypted[key]
  return unless authenticatable_id

  authenticatable_class.find_by(id: authenticatable_id)
end

#sign_in(authenticatable) ⇒ Object



11
12
13
14
15
# File 'app/lib/passwordless/controller_helpers.rb', line 11

def (authenticatable)
  key = cookie_name(authenticatable.class)
  cookies.encrypted.permanent[key] = { value: authenticatable.id }
  authenticatable
end

#sign_out(authenticatable_class) ⇒ Object



17
18
19
20
21
# File 'app/lib/passwordless/controller_helpers.rb', line 17

def sign_out(authenticatable_class)
  key = cookie_name(authenticatable_class)
  cookies.encrypted.permanent[key] = { value: nil }
  cookies.delete(key)
end