forked from nodester/nodester
/
mailer.js
executable file
·39 lines (33 loc) · 965 Bytes
/
mailer.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#!/usr/bin/env node
var mailer = require('nodemailer'),
lib = require('../lib/lib'),
config = require('../config');
var resets = lib.get_couchdb_database('password_resets');
mailer.SES = config.opt.SES;
function send_email(doc) {
mailer.send_mail({
sender: 'support@nodester.com',
to: doc.id,
subject: 'Password reset request',
body: 'Here is your password request token: ' + doc.value.token + '\n\nYou can reset your password via Nodester API or CLI'
}, function (error, success) {
console.log('Reset password e-mail sent to: ' + doc.id)
console.log('Message ' + success ? 'sent' : 'failed');
reset_token(doc)
});
}
function reset_token(doc) {
resets.merge(doc.id, {
email_sent: true
}, function (err, res) {
if (err) console.log(err)
});
}
resets.view('tokens/unsent', function (err, doc) {
if (!err) {
for (i = 0; i < doc.length; i++)
send_email(doc[i])
} else {
console.log(err)
}
});