diff --git a/src/actions/speaker-actions.js b/src/actions/speaker-actions.js index a3cea557d..3f86ea71b 100644 --- a/src/actions/speaker-actions.js +++ b/src/actions/speaker-actions.js @@ -1141,6 +1141,7 @@ export const exportSummitSpeakers = * @param testRecipient * @param excerptRecipient * @param shouldSendCopy2Submitter + * @param shouldResendSpeakers * @param source * @param promoCodeStrategy * @param promocodeSpecification @@ -1153,6 +1154,7 @@ export const sendSpeakerEmails = testRecipient = "", excerptRecipient = "", shouldSendCopy2Submitter = false, + shouldResendSpeakers = false, // eslint-disable-next-line no-unused-vars source = null, promoCodeStrategy = null, @@ -1172,7 +1174,8 @@ export const sendSpeakerEmails = const payload = { email_flow_event: currentFlowEvent, - should_send_copy_2_submitter: shouldSendCopy2Submitter + should_send_copy_2_submitter: shouldSendCopy2Submitter, + should_resend: shouldResendSpeakers }; if (!selectedAll && selectedItems.length > 0) { diff --git a/src/actions/submitter-actions.js b/src/actions/submitter-actions.js index e5209b8cc..7b962e82f 100644 --- a/src/actions/submitter-actions.js +++ b/src/actions/submitter-actions.js @@ -261,6 +261,7 @@ export const exportSummitSubmitters = * @param testRecipient * @param excerptRecipient * @param shouldSendCopy2Submitter + * @param shouldResendSpeakers * @param source * @param promoCodeStrategy * @param promocodeSpecification @@ -275,6 +276,8 @@ export const sendSubmitterEmails = excerptRecipient = "", // not used only left to keep the signature shouldSendCopy2Submitter = false, + // not used only left to keep the signature + shouldResendSpeakers = false, source = null, promoCodeStrategy = null, promocodeSpecification = null diff --git a/src/i18n/en.json b/src/i18n/en.json index c01abeafd..61b9e6550 100644 --- a/src/i18n/en.json +++ b/src/i18n/en.json @@ -1158,6 +1158,7 @@ "resend_done": "Emails sent successfully.", "send_emails_title": "You are about to send an EMAIL BLAST to selected speakers !", "should_send_copy_2_submitter": "Also send to submitter?", + "should_resend_speakers": "Resend to already-sent speakers?", "allows_to_reassign": "Allow to reassign?", "items_qty": "Selected {qty} Speakers | {activitiesQty} Activities", "placeholders": { diff --git a/src/pages/summit_speakers/summit-speakers-list-page.js b/src/pages/summit_speakers/summit-speakers-list-page.js index 94c797eb8..1009d56e4 100644 --- a/src/pages/summit_speakers/summit-speakers-list-page.js +++ b/src/pages/summit_speakers/summit-speakers-list-page.js @@ -524,6 +524,8 @@ class SummitSpeakersListPage extends React.Component { const excerptRecipient = this.ingestEmailRef.value; const shouldSendCopy2Submitter = isSpeakerMode && this.shouldSendCopy2SubmitterRef.checked; + const shouldResendSpeakers = + isSpeakerMode && this.shouldResendSpeakersRef.checked; const { term, selectionPlanFilter, @@ -567,6 +569,7 @@ class SummitSpeakersListPage extends React.Component { testRecipient, excerptRecipient, shouldSendCopy2Submitter, + shouldResendSpeakers, source, promoCodeStrategy, currentPromocodeSpecification.entity @@ -1178,29 +1181,55 @@ class SummitSpeakersListPage extends React.Component { /> {this.state.source === sources.speakers && ( -
-
- { - this.shouldSendCopy2SubmitterRef = node; - }} - /> - + <> +
+
+ { + this.shouldSendCopy2SubmitterRef = node; + }} + /> + +
-
+
+
+ { + this.shouldResendSpeakersRef = node; + }} + defaultChecked + /> + +
+
+ )}