From 0ddac883bc558be133605cd83065e9c454e48448 Mon Sep 17 00:00:00 2001 From: clement-duport Date: Fri, 9 Jun 2023 15:19:58 +0200 Subject: [PATCH] change reaquest contact by mail template --- .../notifications/NotifyContactRequest.ts | 4 ++ .../NotifyContactRequest.unit.test.ts | 5 +++ front/src/app/pages/admin/EmailPreviewTab.tsx | 3 ++ shared/src/email/EmailParamsByEmailType.ts | 3 ++ shared/src/email/emailTemplatesByName.ts | 38 +++++++++++++++---- 5 files changed, 46 insertions(+), 7 deletions(-) diff --git a/back/src/domain/immersionOffer/useCases/notifications/NotifyContactRequest.ts b/back/src/domain/immersionOffer/useCases/notifications/NotifyContactRequest.ts index 5f8dfcf0f6..ee500c51ef 100644 --- a/back/src/domain/immersionOffer/useCases/notifications/NotifyContactRequest.ts +++ b/back/src/domain/immersionOffer/useCases/notifications/NotifyContactRequest.ts @@ -75,6 +75,10 @@ export class NotifyContactRequest extends TransactionalUseCase { payload.potentialBeneficiaryFirstName, potentialBeneficiaryLastName: payload.potentialBeneficiaryLastName, potentialBeneficiaryEmail: payload.potentialBeneficiaryEmail, + immersionObject: validEmailPayload.immersionObjective, + potentialBeneficiaryPhone: + validEmailPayload.potentialBeneficiaryPhone, + potentialBeneficiaryCvOrLinkedin: + validEmailPayload.potentialBeneficiaryCvOrLinkedin, message: validEmailPayload.message, }, cc: contact.copyEmails, diff --git a/front/src/app/pages/admin/EmailPreviewTab.tsx b/front/src/app/pages/admin/EmailPreviewTab.tsx index 703109ded1..7298203f68 100644 --- a/front/src/app/pages/admin/EmailPreviewTab.tsx +++ b/front/src/app/pages/admin/EmailPreviewTab.tsx @@ -381,6 +381,9 @@ export const defaultEmailValueByEmailKind: { potentialBeneficiaryFirstName: "POTENTIAL_BENEFICIARY_FIRST_NAME", potentialBeneficiaryLastName: "POTENTIAL_BENEFICIARY_LAST_NAME", potentialBeneficiaryEmail: "POTENTIAL_BENEFICIARY_EMAIL", + immersionObject: "IMMERSION_OBJECT", + potentialBeneficiaryPhone: "POTENTIAL_BENEFICIARY_PHONE", + potentialBeneficiaryCvOrLinkedin: "POTENTIAL_BENEFICIARY_CV_OR_LINKEDIN", message: "MESSAGE", }, CONTACT_BY_PHONE_INSTRUCTIONS: { diff --git a/shared/src/email/EmailParamsByEmailType.ts b/shared/src/email/EmailParamsByEmailType.ts index ce49162477..15a8d4ec1e 100644 --- a/shared/src/email/EmailParamsByEmailType.ts +++ b/shared/src/email/EmailParamsByEmailType.ts @@ -193,6 +193,9 @@ export type EmailParamsByEmailType = { potentialBeneficiaryFirstName: string; potentialBeneficiaryLastName: string; potentialBeneficiaryEmail: string; + potentialBeneficiaryPhone: string; + immersionObject: string; + potentialBeneficiaryCvOrLinkedin?: string; message: string; }; CONTACT_BY_PHONE_INSTRUCTIONS: { diff --git a/shared/src/email/emailTemplatesByName.ts b/shared/src/email/emailTemplatesByName.ts index ec9373514c..afde17e71c 100644 --- a/shared/src/email/emailTemplatesByName.ts +++ b/shared/src/email/emailTemplatesByName.ts @@ -799,21 +799,45 @@ export const emailTemplatesByName = potentialBeneficiaryLastName, appellationLabel, businessName, + immersionObject, + potentialBeneficiaryPhone, + potentialBeneficiaryCvOrLinkedin, message, }) => ({ subject: `${potentialBeneficiaryFirstName} ${potentialBeneficiaryLastName} vous contacte pour une demande d'immersion sur le métier de ${appellationLabel}`, greetings: `Bonjour ${contactFirstName} ${contactLastName},`, content: ` - ${potentialBeneficiaryFirstName} ${potentialBeneficiaryLastName} vous écrit : - ${message} + Un candidat souhaite faire une immersion pour ${immersionObject} sur le métier de ${appellationLabel} dans votre entreprise ${businessName}. - L'immersion souhaitée porte sur le métier de ${appellationLabel} dans votre entreprise ${businessName}. + voici son message: - Sa candidature vous intéresse ? Voici les étapes à suivre : - - Préparez votre échange grâce à notre page d'aide. - - Prenez contact avec le candidat : ${potentialBeneficiaryEmail} + "${message}" + + ${potentialBeneficiaryFirstName} + ${potentialBeneficiaryLastName} + + ${ + potentialBeneficiaryCvOrLinkedin && + `Plus d'info sur ce candidat: ${potentialBeneficiaryCvOrLinkedin}` + } + + Sa candidature vous intéresse ? + + Prenez contact avec le candidat par email ou par téléphone: + `, - subContent: defaultSignature("immersion"), + buttons: [ + { + label: `${potentialBeneficiaryEmail}`, + url: `mailto:${potentialBeneficiaryEmail}?subject=Suite à votre demande d'immersion chez ${businessName}`, + }, + { + label: `${potentialBeneficiaryPhone}`, + url: `tel:${potentialBeneficiaryPhone}`, + }, + ], + subContent: `Vous pouvez préparer votre échange grâce à notre page d'aide. + ${defaultSignature("immersion")}`, }), }, CONTACT_BY_PHONE_INSTRUCTIONS: {