Skip to content

Commit

Permalink
[SERVER] Send Reminder Emails
Browse files Browse the repository at this point in the history
  • Loading branch information
yousinix committed Aug 27, 2019
1 parent 8ff56ff commit a233894
Show file tree
Hide file tree
Showing 3 changed files with 155 additions and 5 deletions.
30 changes: 26 additions & 4 deletions server/index.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
require("dotenv").config();
var nodemailer = require("nodemailer");
var admin = require("firebase-admin");
var serviceAccount = require("./serviceAccountKey.json");

Expand All @@ -13,7 +15,19 @@ parentsRef.get().then(snapshot => {
snapshot.forEach(parentDoc => sendEmail(parentDoc.data()));
});

var transporter = nodemailer.createTransport({
service: "gmail",
host: "smtp.gmail.com",
port: 465,
secure: true,
auth: {
user: process.env.EMAIL,
pass: process.env.PASS
}
});

function sendEmail(parent) {

for (const child of parent.children) {
var birthDate = child.dateOfBirth._seconds;
var now = Math.floor(Date.now() / 1000);
Expand All @@ -38,10 +52,18 @@ function sendEmail(parent) {
var isSecondReminder = 0 <= diff2 && diff2 <= threshold;
if (isFirstReminder || isSecondReminder) {
// Send Email
// var doseNumber = i
// var monthFromBirth = intervals[i]
// var daysUntilVaccination = isFirstReminder ? firstReminderDays : secondReminderDays
console.log(parent.id, "=>", "Email Sent!");
var doseNumber = i + 1;
var monthFromBirth = intervals[i];
var daysUntilVaccination = isFirstReminder
? firstReminderDays
: secondReminderDays;

var info = transporter.sendMail({
from: process.env.EMAIL,
to: parent.email,
subject: `[Vaccination] Dose no. (${doseNumber}) to ${child.name}`,
text: `${monthFromBirth} months from birth, the child should be vaccinated in ${daysUntilVaccination} days.`
});
}
}
}
Expand Down
126 changes: 126 additions & 0 deletions server/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 3 additions & 1 deletion server/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@
},
"homepage": "https://github.com/MichelineMedhat/UAH2019#readme",
"dependencies": {
"firebase-admin": "^8.4.0"
"dotenv": "^8.1.0",
"firebase-admin": "^8.4.0",
"nodemailer": "^6.3.0"
}
}

0 comments on commit a233894

Please sign in to comment.