Sprankelprachtig aan/afmeldsysteem

authentication_controller.rb 1.3KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. class AuthenticationController < ApplicationController
  2. before_action :require_login!, only: [:logout_confirm, :logout]
  3. def login_form
  4. render layout: 'void'
  5. end
  6. def login
  7. if params[:session][:email].blank? || params[:session][:password].blank?
  8. flash[:warning] = "You forgot to add value"
  9. redirect_to action: 'login_form'
  10. else
  11. u = User.find_by(email: params[:session][:email])
  12. if u && u.authenticate(params[:session][:password])
  13. log_in(u, params[:session][:remember_me].to_i)
  14. flash[:success] = "Hello, #{u.person.full_name}!"
  15. redirect_to root_path
  16. else
  17. flash[:danger] = "Invalid username/password combination!"
  18. redirect_to action: 'login_form'
  19. end
  20. end
  21. end
  22. def logout_confirm
  23. render layout: 'void'
  24. end
  25. def logout
  26. log_out
  27. redirect_to login_path
  28. end
  29. def create_password_form
  30. render layout: 'void'
  31. end
  32. def login_status
  33. render text: is_logged_in?
  34. end
  35. def create_password
  36. flash[:danger] = "Not yet implemented."
  37. redirect_to action: 'login'
  38. end
  39. def forgotten_password_form
  40. render layout: 'void'
  41. end
  42. def forgotten_password
  43. flash[:danger] = "Not yet implemented."
  44. redirect_to action: 'login'
  45. end
  46. private
  47. def session_params
  48. params.require(:session).permit(:email, :password, :remember_me)
  49. end
  50. end