Allow users to select multiple reminders to push back when creating new record.
This commit is contained in:
@@ -340,19 +340,19 @@ function showRecurringReminderSelector(descriptionFieldName) {
|
||||
confirmButtonText: 'Select',
|
||||
focusConfirm: false,
|
||||
preConfirm: () => {
|
||||
const selectedRecurringReminder = $("#recurringReminderInput").val();
|
||||
const selectedRecurringReminderText = $("#recurringReminderInput option:selected").text();
|
||||
if (!selectedRecurringReminder || parseInt(selectedRecurringReminder) == 0) {
|
||||
//validate
|
||||
var selectedRecurringReminderData = getAndValidateSelectedRecurringReminder();
|
||||
if (selectedRecurringReminderData.hasError) {
|
||||
Swal.showValidationMessage(`You must select a recurring reminder`);
|
||||
}
|
||||
return { selectedRecurringReminder, selectedRecurringReminderText }
|
||||
return { selectedRecurringReminderData }
|
||||
},
|
||||
}).then(function (result) {
|
||||
if (result.isConfirmed) {
|
||||
recurringReminderRecordId = result.value.selectedRecurringReminder;
|
||||
recurringReminderRecordId = result.value.selectedRecurringReminderData.ids;
|
||||
var descriptionField = $(`#${descriptionFieldName}`);
|
||||
if (descriptionField.length > 0) {
|
||||
descriptionField.val(result.value.selectedRecurringReminderText.trim());
|
||||
descriptionField.val(result.value.selectedRecurringReminderData.text);
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -554,4 +554,55 @@ function adjustRecordsOdometer(ids, source) {
|
||||
$("#workAroundInput").hide();
|
||||
}
|
||||
});
|
||||
}
|
||||
function showMultipleRemindersSelector() {
|
||||
if ($("#multipleRemindersCheck").is(":checked")) {
|
||||
$("#recurringMultipleReminders").show();
|
||||
$("#recurringReminderInput").hide();
|
||||
} else {
|
||||
$("#recurringMultipleReminders").hide();
|
||||
$("#recurringReminderInput").show();
|
||||
}
|
||||
}
|
||||
function getAndValidateSelectedRecurringReminder() {
|
||||
if ($("#multipleRemindersCheck").is(":checked")) {
|
||||
//validate multiple reminders
|
||||
var selectedRecurringRemindersArray = [];
|
||||
$("#recurringMultipleReminders :checked").map(function () {
|
||||
selectedRecurringRemindersArray.push({
|
||||
value: this.value,
|
||||
text: $(this).parent().find('.form-check-label').text()
|
||||
});
|
||||
});
|
||||
if (selectedRecurringRemindersArray.length == 0) {
|
||||
return {
|
||||
hasError: true,
|
||||
ids: [],
|
||||
text: ''
|
||||
}
|
||||
} else {
|
||||
return {
|
||||
hasError: false,
|
||||
ids: selectedRecurringRemindersArray.map(x=>x.value),
|
||||
text: selectedRecurringRemindersArray.map(x=>x.text).join(', ')
|
||||
}
|
||||
}
|
||||
} else {
|
||||
//validate single reminder
|
||||
var selectedRecurringReminder = $("#recurringReminderInput").val();
|
||||
var selectedRecurringReminderText = $("#recurringReminderInput option:selected").text();
|
||||
if (!selectedRecurringReminder || parseInt(selectedRecurringReminder) == 0) {
|
||||
return {
|
||||
hasError: true,
|
||||
ids: [],
|
||||
text: ''
|
||||
}
|
||||
} else {
|
||||
return {
|
||||
hasError: false,
|
||||
ids: [selectedRecurringReminder],
|
||||
text: selectedRecurringReminderText
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user