Class: InstantLogin::InstantLoginController
- Inherits:
-
ApplicationController
- Object
- ActionController::Base
- ApplicationController
- InstantLogin::InstantLoginController
- Defined in:
- app/controllers/instant_login/instant_login_controller.rb
Instance Method Summary collapse
Instance Method Details
#generate_token ⇒ Object
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.generate_instant_login_token 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 |
#login ⇒ Object
23 24 25 26 27 28 29 30 31 |
# File 'app/controllers/instant_login/instant_login_controller.rb', line 23 def login user = InstantLogin.config.user_class.authenticate_with_instant_login_token(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 |