mirror of
https://github.com/docusealco/docuseal
synced 2026-11-05 22:52:32 -05:00
handle 2fa email bounce
This commit is contained in:
1 parent
e316d2006f
commit
9ad281d457
7 files changed
+84
No files matched your search
@@ -162,6 +162,10 @@ class StartFormController < ApplicationController
|
||||
end
|
||||
rescue Submitters::StartForm::NotSaved
|
||||
render :show, status: :unprocessable_content
|
||||
rescue Submitters::BouncedEmail => e
|
||||
@error_message = e.message
|
||||
|
||||
render :error, status: :unprocessable_content
|
||||
rescue Submitters::UnableToSendCode, Submitters::InvalidOtp => e
|
||||
redirect_to start_form_path(template.slug, params: submitter_params.merge(email_verification: true)),
|
||||
alert: e.message
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
class StartFormEmail2faSendController < ApplicationController
|
||||
layout 'form'
|
||||
|
||||
around_action :with_browser_locale
|
||||
|
||||
skip_before_action :authenticate_user!
|
||||
@@ -23,6 +25,10 @@ class StartFormEmail2faSendController < ApplicationController
|
||||
|
||||
redirect_to start_form_path(@template.slug, params: submitter_params.merge(email_verification: true)),
|
||||
**redir_params
|
||||
rescue Submitters::BouncedEmail => e
|
||||
@error_message = e.message
|
||||
|
||||
render 'start_form/error', status: :unprocessable_content
|
||||
rescue Submitters::UnableToSendCode => e
|
||||
redirect_to start_form_path(@template.slug, params: submitter_params.merge(email_verification: true)),
|
||||
alert: e.message
|
||||
|
||||
@@ -87,6 +87,10 @@ class StartFormResubmitController < ApplicationController
|
||||
end
|
||||
rescue Submitters::StartForm::NotSaved
|
||||
render 'start_form/show', status: :unprocessable_content
|
||||
rescue Submitters::BouncedEmail => e
|
||||
@error_message = e.message
|
||||
|
||||
render 'start_form/error', status: :unprocessable_content
|
||||
rescue Submitters::UnableToSendCode, Submitters::InvalidOtp => e
|
||||
flash.now[:alert] = e.message
|
||||
|
||||
|
||||
@@ -35,6 +35,12 @@ class SubmitFormEmail2fasController < ApplicationController
|
||||
|
||||
RateLimit.call("send-email-code-#{@submitter.id}", limit: 2, ttl: 45.seconds, enabled: true)
|
||||
|
||||
if Docuseal.multitenant? && Submitters.email_bounced_recently?(@submitter.email)
|
||||
Rollbar.warning("Bounced OTP email for submitter: #{@submitter.id}") if defined?(Rollbar)
|
||||
|
||||
return redirect_to submit_form_path(@submitter.slug, status: :error), alert: I18n.t(:verification_email_bounced)
|
||||
end
|
||||
|
||||
SendSubmitterVerificationEmailJob.perform_async('submitter_id' => @submitter.id, 'locale' => I18n.locale.to_s)
|
||||
|
||||
redir_params = params[:resend] ? { alert: I18n.t(:code_has_been_resent) } : {}
|
||||
|
||||
Reference in new issue
Block a user