Vulcan/packages/vulcan-newsletter/lib/server/emails.js

43 lines
1.6 KiB
JavaScript
Raw Normal View History

2017-03-24 10:35:19 +09:00
import VulcanEmail from 'meteor/vulcan:email';
2017-04-02 21:11:09 +09:00
import Newsletters from "../collection.js";
2017-03-23 16:27:59 +09:00
import { getSetting } from 'meteor/vulcan:core';
2016-06-23 16:42:06 +09:00
// Extend email objects with server-only properties
2016-04-13 11:39:01 +09:00
2017-03-24 10:35:19 +09:00
VulcanEmail.emails.newsletter = {
2016-04-13 11:39:01 +09:00
2017-03-24 10:35:19 +09:00
...VulcanEmail.emails.newsletter,
2016-04-13 11:39:01 +09:00
getNewsletter() {
2017-04-02 21:11:09 +09:00
return Newsletters.build(Newsletters.getPosts(getSetting('postsPerNewsletter', 5)));
},
subject() {
return this.getNewsletter().subject;
},
2016-04-13 11:39:01 +09:00
getTestHTML() {
var campaign = this.getNewsletter();
2017-04-02 21:11:09 +09:00
var newsletterEnabled = `<div class="newsletter-enabled"><strong>Newsletter Enabled:</strong> ${getSetting('enableNewsletter', true)}</div>`;
var mailChimpAPIKey = `<div class="mailChimpAPIKey"><strong>mailChimpAPIKey:</strong> ${typeof getSetting('mailChimpAPIKey') !== "undefined"}</div>`;
var mailChimpListId = `<div class="mailChimpListId"><strong>mailChimpListId:</strong> ${typeof getSetting('mailChimpListId') !== "undefined"}</div>`;
var campaignSubject = `<div class="campaign-subject"><strong>Subject:</strong> ${campaign.subject} (note: contents might change)</div>`;
var campaignSchedule = `<div class="campaign-schedule"><strong>Scheduled for:</strong> ${Newsletters.getNextScheduled()}</div>`;
2016-04-13 11:39:01 +09:00
return newsletterEnabled+mailChimpAPIKey+mailChimpListId+campaignSubject+campaignSchedule+campaign.html;
}
};
2016-04-13 11:39:01 +09:00
2017-03-24 10:35:19 +09:00
VulcanEmail.emails.newsletterConfirmation = {
2017-03-24 10:35:19 +09:00
...VulcanEmail.emails.newsletterConfirmation,
2016-04-13 11:39:01 +09:00
getTestHTML() {
2017-03-24 10:35:19 +09:00
return VulcanEmail.getTemplate('newsletterConfirmation')({
2016-04-13 11:39:01 +09:00
time: 'January 1st, 1901',
newsletterLink: 'http://example.com',
subject: 'Lorem ipsum dolor sit amet'
});
}
};