gab-social/app/controllers/auth/confirmations_controller.rb

41 lines
962 B
Ruby
Raw Permalink Normal View History

2019-07-02 08:10:25 +01:00
# frozen_string_literal: true
class Auth::ConfirmationsController < Devise::ConfirmationsController
layout 'auth'
before_action :set_body_classes
before_action :require_unconfirmed!
2019-07-02 08:10:25 +01:00
before_action :set_user, only: [:finish_signup]
def require_unconfirmed!
redirect_to edit_user_registration_path if user_signed_in? && current_user.confirmed? && current_user.unconfirmed_email.blank?
end
2019-07-02 08:10:25 +01:00
def finish_signup
return unless request.patch? && params[:user]
@user.email = current_user.unconfirmed_email || current_user.email if user_signed_in?
2019-07-02 08:10:25 +01:00
end
private
def set_user
@user = current_user
end
def set_body_classes
@body_classes = ''
2019-07-02 08:10:25 +01:00
end
def user_params
params.require(:user).permit(:email)
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
else
super
end
end
end