@speakr/speakr-module-services
Version:
SPEAKR Shared Service Module
82 lines (77 loc) • 2.36 kB
JavaScript
;
let moment = require("moment-timezone");
module.exports = {
submissionStatusChanged
};
function submissionStatusChanged(submission) {
const media_type =
submission.content_type || submission.initiative.media_type;
const vars = [
{ name: "reason", content: submission.message },
{
name: "scheduledDate",
content: submission.scheduled_at
? moment(submission.scheduled_at).format("DD MMM YY")
: null
},
{
name: "scheduledTime",
content: submission.scheduled_at
? moment(submission.scheduled_at).format("h:mm a")
: null
},
{ name: "liveLink", content: submission.permalink },
{ name: "platform", content: submission.initiative.platform.name },
{ name: "username", content: submission.account.current_username },
{ name: "campaignName", content: submission.initiative.campaign.title },
{
name: "campaignUrl",
content: `https://influencers.speakr.com/campaigns/${
submission.invite.id_hash
}`
},
{
name: "payment",
content: parseFloat(submission.invite.offer_price).toFixed(2)
},
{ name: "caption", content: submission.content },
{
name: "postUrl",
content: `https://influencers.speakr.com/campaigns/${
submission.invite.id_hash
}/submissions/${submission.id_hash}`
},
{ name: "mediaType", content: media_type },
{
name: "mediaUrl",
content:
media_type == "video"
? submission.video_link
: media_type == "image" ? submission.image_link : null
}
];
console.log(vars);
return {
template_name: `Template_Submission_${submission.status}`,
template_content: [],
html: `<h1>Your submission has been ${submission.status.toLowerCase()} ${
submission.status == "Rejected" ? ":(" : ":)"
}</h1>`,
subject: `Your submission has been ${submission.status.toLowerCase()} ${
submission.status == "Rejected" ? ":(" : ":)"
}`,
from_email: "influencers@speakr.com",
from_name: "Speakr Team",
to: {
email: submission.account.account_email,
name: submission.account.current_username,
type: "to"
},
headers: {
"Reply-To": "donotreply@speakr.com"
},
merge: true,
merge_language: "handlebars",
global_merge_vars: vars
};
}