diff options
author | Thibaut Girka <thib@sitedethib.com> | 2019-09-05 11:36:41 +0200 |
---|---|---|
committer | Thibaut Girka <thib@sitedethib.com> | 2019-09-05 11:36:41 +0200 |
commit | 5088eb8388fbfcb210a518f918ae5332e6d3979e (patch) | |
tree | 20b9394200b79e7eefc234cc50b0f3650e9afc1d /app/controllers/auth | |
parent | 0128509605ed90ee5a29d6af2347ab32bd46aeb9 (diff) | |
parent | e265b8887dbd883bc7ca04832dc67ffe46966889 (diff) |
Merge branch 'master' into glitch-soc/merge-upstream
Diffstat (limited to 'app/controllers/auth')
-rw-r--r-- | app/controllers/auth/confirmations_controller.rb | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/app/controllers/auth/confirmations_controller.rb b/app/controllers/auth/confirmations_controller.rb index 1d6e4ec19..4e89446c7 100644 --- a/app/controllers/auth/confirmations_controller.rb +++ b/app/controllers/auth/confirmations_controller.rb @@ -5,19 +5,42 @@ class Auth::ConfirmationsController < Devise::ConfirmationsController before_action :set_body_classes before_action :set_pack + before_action :require_unconfirmed! skip_before_action :require_functional! + def new + super + + resource.email = current_user.unconfirmed_email || current_user.email if user_signed_in? + end + private def set_pack use_pack 'auth' end + def require_unconfirmed! + redirect_to edit_user_registration_path if user_signed_in? && current_user.confirmed? && current_user.unconfirmed_email.blank? + end + def set_body_classes @body_classes = 'lighter' end + def after_resending_confirmation_instructions_path_for(_resource_name) + if user_signed_in? + if current_user.confirmed? && current_user.approved? + edit_user_registration_path + else + auth_setup_path + end + else + new_user_session_path + end + end + def after_confirmation_path_for(_resource_name, user) if user.created_by_application && truthy_param?(:redirect_to_app) user.created_by_application.redirect_uri |