IO-2667 Adjust Email messages
Signed-off-by: Allan Carr <allan.carr@thinkimex.com>
This commit is contained in:
@@ -80,22 +80,33 @@ const endPoints = InstanceManager({
|
||||
* @returns {string|string}
|
||||
*/
|
||||
const formatDate = (date) => {
|
||||
return date ? `| Due on ${moment(date).format("MM/DD/YYYY")}` : "";
|
||||
return date ? `| Due on: ${moment(date).format("MM/DD/YYYY")}` : "";
|
||||
};
|
||||
|
||||
const formatPriority = (priority) => {
|
||||
if (priority === 1) {
|
||||
return "High";
|
||||
} else if (priority === 3) {
|
||||
return "Low";
|
||||
} else {
|
||||
return "Medium";
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Generate the email template arguments.
|
||||
* @param title
|
||||
* @param createdBy
|
||||
* @param priority
|
||||
* @param description
|
||||
* @param dueDate
|
||||
* @param taskId
|
||||
* @returns {{header, body: string, subHeader: string}}
|
||||
*/
|
||||
const generateTemplateArgs = (title, createdBy, dueDate, taskId) => {
|
||||
const generateTemplateArgs = (title, priority, description, dueDate, taskId) => {
|
||||
return {
|
||||
header: title,
|
||||
subHeader: `Assigned by ${createdBy} ${formatDate(dueDate)}`,
|
||||
body: `<a href="${endPoints}/manage/tasks/alltasks?taskid=${taskId}">Please sign in to your account to view the Task details.</a>`
|
||||
subHeader: `Priority: ${formatPriority(priority)} ${priority} ${formatDate(dueDate)}`,
|
||||
body: `${description}<br><a href="${endPoints}/manage/tasks/alltasks?taskid=${taskId}">Please sign in to your account to view the further details of the Task.</a>`
|
||||
};
|
||||
};
|
||||
|
||||
@@ -155,8 +166,10 @@ const taskAssignedEmail = async (req, res) => {
|
||||
sendMail(
|
||||
"assigned",
|
||||
newTask.assigned_to,
|
||||
`A Task has been ${dirty ? "reassigned" : "created"} for you - ${newTask.title}`,
|
||||
generateEmailTemplate(generateTemplateArgs(newTask.title, newTask.created_by, newTask.due_date, newTask.id))
|
||||
`A ${formatPriority(newTask.priority)} PriorityTask has been ${dirty ? "reassigned" : "created"} for you - ${newTask.title}`,
|
||||
generateEmailTemplate(
|
||||
generateTemplateArgs(newTask.title, newTask.priority, newTask.description, newTask.due_date, newTask.id)
|
||||
)
|
||||
);
|
||||
|
||||
// We return success regardless because we don't want to block the event trigger.
|
||||
@@ -217,23 +230,23 @@ const tasksRemindEmail = async (req, res) => {
|
||||
const onlyTask = groupedTasks[recipient.email][0];
|
||||
|
||||
emailData.subject =
|
||||
`New Task Reminder - ${onlyTask.title} ${onlyTask.due_date ? `- ${formatDate(onlyTask.due_date)}` : ""}`.trim();
|
||||
`New ${formatPriority(onlyTask.priority)} Priority Task Reminder - ${onlyTask.title} ${onlyTask.due_date ? `- ${formatDate(onlyTask.due_date)}` : ""}`.trim();
|
||||
|
||||
emailData.html = generateEmailTemplate(
|
||||
generateTemplateArgs(onlyTask.title, onlyTask.created_by, onlyTask.due_date, onlyTask.id)
|
||||
generateTemplateArgs(onlyTask.title, onlyTask.priority, onlyTask.description, onlyTask.due_date, onlyTask.id)
|
||||
);
|
||||
}
|
||||
// There are multiple emails to send to this author.
|
||||
else {
|
||||
const allTasks = groupedTasks[recipient.email];
|
||||
emailData.subject = `New Task Reminder - ${allTasks.length} Tasks require your attention`;
|
||||
emailData.subject = `New Tasks Reminder - ${allTasks.length} Tasks require your attention`;
|
||||
emailData.html = generateEmailTemplate({
|
||||
header: `${allTasks.length} Tasks require your attention`,
|
||||
subHeader: `Please sign in to your account to view the Task details.`,
|
||||
body: `<ul>
|
||||
${allTasks
|
||||
.map((task) =>
|
||||
`<li><a href="${endPoints}/manage/tasks/alltasks?taskid=${task.id}">${task.title} ${task.due_date ? `- ${formatDate(task.due_date)}` : ""}</a></li>`.trim()
|
||||
`<li><a href="${endPoints}/manage/tasks/alltasks?taskid=${task.id}">${task.title} - Priority: ${formatPriority(task.priority)} ${task.due_date ? `${formatDate(task.due_date)}` : ""}</a></li>`.trim()
|
||||
)
|
||||
.join("")}
|
||||
</ul>`
|
||||
|
||||
Reference in New Issue
Block a user