validate sender email

pull/217/head
Pete Matsyburka 2 years ago
parent 49cea59b94
commit bbe3942056

@ -11,7 +11,11 @@ class SubmittersSendEmailController < ApplicationController
alert: 'Email has been sent already.')
end
SubmitterMailer.invitation_email(@submitter).deliver_later!
mail = SubmitterMailer.invitation_email(@submitter)
Submitters::ValidateSending.call(@submitter, mail)
mail.deliver_later!
SubmissionEvent.create!(submitter: @submitter, event_type: 'send_email')

@ -4,7 +4,11 @@ class SendSubmitterInvitationEmailJob < ApplicationJob
def perform(params = {})
submitter = Submitter.find(params['submitter_id'])
SubmitterMailer.invitation_email(submitter).deliver_now!
mail = SubmitterMailer.invitation_email(submitter)
Submitters::ValidateSending.call(submitter, mail)
mail.deliver_now!
SubmissionEvent.create!(submitter:, event_type: 'send_email')

@ -0,0 +1,15 @@
# frozen_string_literal: true
module Submitters
module ValidateSending
InvalidEmail = Class.new(StandardError)
module_function
def call(submitter, _mail)
raise InvalidEmail unless submitter.email.to_s.include?('@')
true
end
end
end
Loading…
Cancel
Save