storeEmails.js 911 B

12345678910111213141516171819202122232425262728293031323334
  1. import * as fs from "fs";
  2. import EmailService from "../api/emails/email.service.js";
  3. import "../common/env.js";
  4. import mongoose from "../common/localDatabase.js";
  5. import l from "../common/logger.js";
  6. (async function () {
  7. try {
  8. await EmailService.deleteMany({});
  9. for (const code of [
  10. ["activate", "Welcome"],
  11. ["activationLink", "Activation link"],
  12. ["forgotPassword", "Forgot password"],
  13. ["notification", "Notification"],
  14. ]) {
  15. const email = fs.readFileSync(
  16. `views/mailer/${code[0]}.email.liquid`,
  17. "utf8"
  18. );
  19. await EmailService.create({
  20. code: code[0],
  21. lang: "en",
  22. subject: `[StarterSaaS] ${code[1]}`,
  23. body: email,
  24. });
  25. l.info("Email was successfully stored on database");
  26. }
  27. } catch (error) {
  28. l.error("Email Error: ", error);
  29. } finally {
  30. await mongoose.connection.close();
  31. }
  32. })();