Class: InstantLogin::InstantLoginController

Inherits:
ApplicationController show all
Defined in:
app/controllers/instant_login/instant_login_controller.rb

Instance Method Summary collapse

Instance Method Details

#generate_tokenObject



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'app/controllers/instant_login/instant_login_controller.rb', line 5

def generate_token
  user = InstantLogin.config.user_class.find_by(email: params[:email])
  if user
    user.
    mail = InstantLogin.config.mailer_class.token(user)

    if mail.respond_to?(:deliver_now)
      mail.deliver_now
    else
      mail.deliver
    end

    redirect_to '/', notice: 'Login email sent'
  else
    redirect_to '/', alert: 'User not found'
  end
end

#loginObject



23
24
25
26
27
28
29
30
31
# File 'app/controllers/instant_login/instant_login_controller.rb', line 23

def 
  user = InstantLogin.config.user_class.(params[:token])
  if user.present?
    session[InstantLogin.config.session_key] = user.id
    redirect_to InstantLogin.config.success_path, notice: 'Logged in'
  else
    redirect_to InstantLogin.config.failure_path, alert: 'Login failed'
  end
end