SubscriptionEmailHandler.js 773 B

1234567891011121314151617181920212223242526
  1. const EmailHandler = require('../Email/EmailHandler')
  2. const UserGetter = require('../User/UserGetter')
  3. require('./SubscriptionEmailBuilder')
  4. const PlansLocator = require('./PlansLocator')
  5. const SubscriptionEmailHandler = {
  6. async sendTrialOnboardingEmail(userId, planCode) {
  7. const user = await UserGetter.promises.getUser(userId, {
  8. email: 1,
  9. })
  10. const plan = PlansLocator.findLocalPlanInSettings(planCode)
  11. if (!plan) {
  12. throw new Error('unknown paid plan: ' + planCode)
  13. }
  14. const emailOptions = {
  15. to: user.email,
  16. sendingUser_id: userId,
  17. planName: plan.name,
  18. features: plan.features,
  19. }
  20. await EmailHandler.promises.sendEmail('trialOnboarding', emailOptions)
  21. },
  22. }
  23. module.exports = SubscriptionEmailHandler