@@ -17,7 +17,6 @@ import {
1717} from '../../../../../shared/types'
1818import {
1919 IAttachmentInfo ,
20- IEncryptedForm ,
2120 IEncryptedSubmissionSchema ,
2221 IPopulatedEncryptedForm ,
2322 StripePaymentMetadataDto ,
@@ -35,7 +34,6 @@ import getPaymentModel from '../../../models/payment.server.model'
3534import { getEncryptPendingSubmissionModel } from '../../../models/pending_submission.server.model'
3635import { getEncryptSubmissionModel } from '../../../models/submission.server.model'
3736import * as CaptchaMiddleware from '../../../services/captcha/captcha.middleware'
38- import MailService from '../../../services/mail/mail.service'
3937import * as TurnstileMiddleware from '../../../services/turnstile/turnstile.middleware'
4038import { Pipeline } from '../../../utils/pipeline-middleware'
4139import { createReqMeta } from '../../../utils/request'
@@ -55,9 +53,6 @@ import { SgidService } from '../../sgid/sgid.service'
5553import { getOidcService } from '../../spcp/spcp.oidc.service'
5654import { getPopulatedUserById } from '../../user/user.service'
5755import * as VerifiedContentService from '../../verified-content/verified-content.service'
58- import { MYINFO_PREFIX } from '../email-submission/email-submission.constants'
59- import * as EmailSubmissionService from '../email-submission/email-submission.service'
60- import { SubmissionEmailObj } from '../email-submission/email-submission.util'
6156import * as EncryptSubmissionMiddleware from '../encrypt-submission/encrypt-submission.middleware'
6257import ParsedResponsesObject from '../ParsedResponsesObject.class'
6358import * as ReceiverMiddleware from '../receiver/receiver.middleware'
@@ -694,6 +689,9 @@ const _createPaymentSubmission = async ({
694689 } )
695690}
696691
692+ /**
693+ * @param emailFields fields and their responses that will be included in email notifications to admins and respondents.
694+ */
697695const _createSubmission = async ( {
698696 req,
699697 res,
@@ -778,50 +776,7 @@ const _createSubmission = async ({
778776 } )
779777
780778 const createdTime = submission . created || new Date ( )
781-
782- const logMetaWithSubmission = {
783- ...logMeta ,
784- submissionId,
785- responseMetadata,
786- }
787-
788- const emailData = new SubmissionEmailObj (
789- emailFields ,
790- new Set ( ) , // the MyInfo prefixes are already inserted in middleware
791- form . authType ,
792- )
793-
794- // Since we insert the [MyInfo] prefix in `encrypt-submission.middleware.ts`:L434
795- // we want to remove it for the dataCollationData
796- const dataCollationData = emailData . dataCollationData . map ( ( item ) => ( {
797- question : item . question . startsWith ( MYINFO_PREFIX )
798- ? item . question . slice ( MYINFO_PREFIX . length )
799- : item . question ,
800- answer : item . answer ,
801- } ) )
802-
803- const emailAttachments = [ ...( unencryptedAttachments ?? [ ] ) ]
804- // We don't await for email submission, as the submission gets saved for encrypt
805- // submissions regardless, the email is more of a notification and shouldn't
806- // stop the storage of the data in the db
807- if ( ( ( form as IEncryptedForm ) ?. emails || [ ] ) . length > 0 ) {
808- logger . info ( {
809- message : 'Sending admin notification mail' ,
810- meta : logMetaWithSubmission ,
811- } )
812-
813- void MailService . sendSubmissionToAdmin ( {
814- replyToEmails : EmailSubmissionService . extractEmailAnswers ( emailFields ) ,
815- form,
816- submission : {
817- created : createdTime ,
818- id : submission . id ,
819- } ,
820- attachments : emailAttachments ,
821- formData : emailData . formData ,
822- dataCollationData,
823- } )
824- }
779+ const submissionAttachments = [ ...( unencryptedAttachments ?? [ ] ) ]
825780
826781 // TODO 6395 make responseMetadata mandatory
827782 if ( responseMetadata ) {
@@ -846,10 +801,10 @@ const _createSubmission = async ({
846801 return await performEncryptPostSubmissionActions ( {
847802 submission,
848803 responses,
849- growthbook : req . growthbook ,
850- emailData,
851- attachments : emailAttachments ,
804+ emailFields,
805+ submissionAttachments,
852806 respondentEmails,
807+ growthbook : req . growthbook ,
853808 } )
854809}
855810
0 commit comments