diff --git a/force-app/main/default/classes/SummitEventsReadShared.cls b/force-app/main/default/classes/SummitEventsReadShared.cls index 4f2c7083..9c73a239 100644 --- a/force-app/main/default/classes/SummitEventsReadShared.cls +++ b/force-app/main/default/classes/SummitEventsReadShared.cls @@ -66,7 +66,7 @@ public without sharing class SummitEventsReadShared { Event_Payment_Due_Heading_Label__c, Event_Payment_Received_Heading_Label__c, Event_Payment_Received_Description__c, Event_Cancel_Review_Title__c, Event_Cancel_Review_Description__c, Event_Cancelled_Notification_Text__c, Tracking_Cancel_Registration__c, Event_Appointment_Title__c, Event_Appointment_Description__c, Tracking_Options_Registration__c, Event_Appointment_Chosen_Label__c, - Event_Appointment_Unchosen_Label__c, Event_Appointment_Next_Instructions__c + Event_Appointment_Unchosen_Label__c, Event_Appointment_Next_Instructions__c, Ask_Email_Confirmation__c FROM Summit_Events__c WHERE Id = :eventId WITH SECURITY_ENFORCED diff --git a/force-app/main/default/flexipages/Summit_Events_Record_Page.flexipage-meta.xml b/force-app/main/default/flexipages/Summit_Events_Record_Page.flexipage-meta.xml index be168b7f..7a25b377 100644 --- a/force-app/main/default/flexipages/Summit_Events_Record_Page.flexipage-meta.xml +++ b/force-app/main/default/flexipages/Summit_Events_Record_Page.flexipage-meta.xml @@ -851,12 +851,6 @@ RecordAsk_Accessibility_Needs_cField - - - flexipage:blankSpace - flexipage_blankSpace - - @@ -867,6 +861,16 @@ record_item_046 + + + + uiBehavior + none + + Record.Ask_Email_Confirmation__c + RecordAsk_Email_Confirmation_cField + + Facet-290466e5-6049-4759-9618-a692c763459b Facet diff --git a/force-app/main/default/objects/Summit_Events__c/fields/Ask_Email_Confirmation__c.field-meta.xml b/force-app/main/default/objects/Summit_Events__c/fields/Ask_Email_Confirmation__c.field-meta.xml new file mode 100644 index 00000000..6512eb13 --- /dev/null +++ b/force-app/main/default/objects/Summit_Events__c/fields/Ask_Email_Confirmation__c.field-meta.xml @@ -0,0 +1,27 @@ + + + Ask_Email_Confirmation__c + Ask for email confirmation in Registration Form. + Ask for email confirmation in Registration Form. + + false + false + false + Picklist + + true + + false + + Do not ask + true + + + + Ask and require + false + + + + + diff --git a/force-app/main/default/pages/SummitEventsRegister.page b/force-app/main/default/pages/SummitEventsRegister.page index a4c1a79f..fb61d981 100644 --- a/force-app/main/default/pages/SummitEventsRegister.page +++ b/force-app/main/default/pages/SummitEventsRegister.page @@ -359,6 +359,19 @@ Created by Thaddaeus Dahlberg on 5/1/2018. + + +
+ + Confirm Email * + +
+ +
+
This field is required
+
+
+
diff --git a/force-app/main/default/permissionsets/Summit_Events_Admin.permissionset-meta.xml b/force-app/main/default/permissionsets/Summit_Events_Admin.permissionset-meta.xml index 2780d161..a6da0095 100644 --- a/force-app/main/default/permissionsets/Summit_Events_Admin.permissionset-meta.xml +++ b/force-app/main/default/permissionsets/Summit_Events_Admin.permissionset-meta.xml @@ -1897,6 +1897,11 @@ Summit_Events__c.Ask_Title__c true + + true + Summit_Events__c.Ask_Email_Confirmation__c + true + true Summit_Events__c.Audience__c diff --git a/force-app/main/default/permissionsets/Summit_Events_Registrant.permissionset-meta.xml b/force-app/main/default/permissionsets/Summit_Events_Registrant.permissionset-meta.xml index 141e344d..ac486554 100644 --- a/force-app/main/default/permissionsets/Summit_Events_Registrant.permissionset-meta.xml +++ b/force-app/main/default/permissionsets/Summit_Events_Registrant.permissionset-meta.xml @@ -1780,6 +1780,11 @@ Summit_Events__c.Ask_Title__c true + + false + Summit_Events__c.Ask_Email_Confirmation__c + true + false Summit_Events__c.Audience__c diff --git a/force-app/main/default/staticresources/SummitEventsAssets/js/register.js b/force-app/main/default/staticresources/SummitEventsAssets/js/register.js index c935e338..decb9df9 100644 --- a/force-app/main/default/staticresources/SummitEventsAssets/js/register.js +++ b/force-app/main/default/staticresources/SummitEventsAssets/js/register.js @@ -121,6 +121,13 @@ function checkForm() { } }); + if (error_count == 0) { + let confirmEmailInput = document.querySelector('input[id$=confirm-email]'); + if (confirmEmailInput) { + error_count = validateEmailsMatch(error_count); + } + } + document.querySelectorAll(".selectableOL").forEach(sel => { let selWrap = sel.closest('.slds-form-element'); let hiddenData = document.querySelector('[id$="' + sel.dataset.hiddendataid + '"]').id; @@ -206,9 +213,9 @@ function fillInCityStateOnZip(zipObj) { } formOverlay(true); }).catch(error => { - console.log(error); - formOverlay(true); - }); + console.log(error); + formOverlay(true); + }); function formOverlay(remove) { let cityState = document.querySelectorAll('input[id$=city], select[id$=state]'); @@ -475,4 +482,19 @@ function createSpinner() { overlay1.append(overlay4); overlay.append(overlay1); return overlay; +} + +function validateEmailsMatch(error_count) { + let emailInput = document.querySelector('input[id$=email]'); + let confirmEmailInput = document.querySelector('input[id$=confirm-email]'); + if (emailInput.value !== confirmEmailInput.value) { + let inputWrap = confirmEmailInput.closest('.slds-form-element'); + inputWrap.classList.add("slds-has-error"); + addErrorFixerListener(confirmEmailInput, inputWrap, 'change'); + let parentDiv = confirmEmailInput.closest('.slds-form-element'); + let childDiv = parentDiv.querySelector('.slds-form-element__help'); + childDiv.textContent = 'Email addresses do not match.'; + error_count++; + } + return error_count; } \ No newline at end of file