aboutsummaryrefslogtreecommitdiffstats
path: root/routes
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2016-09-22 10:11:19 -0700
committerAdam Soltys <[email protected]>2016-09-22 10:11:24 -0700
commitacd47767d0c02dfa1a4152208a16c21255e4943b (patch)
tree5614d2b68a094cad9b4bb15c1f9606e9626ef128 /routes
parent515b1a63871af43fca536f0a1dd653dcaa1d2ba9 (diff)
downloadcoinos-server-acd47767d0c02dfa1a4152208a16c21255e4943b.tar.gz
coinos-server-acd47767d0c02dfa1a4152208a16c21255e4943b.zip
Upgrade sendgrid and fill in transaction details in notification email
Diffstat (limited to 'routes')
-rw-r--r--routes/transactions.js54
-rw-r--r--routes/users.js42
2 files changed, 60 insertions, 36 deletions
diff --git a/routes/transactions.js b/routes/transactions.js
index 31875918..d132e418 100644
--- a/routes/transactions.js
+++ b/routes/transactions.js
@@ -1,8 +1,12 @@
(function() {
- var db;
+ var config, db, moment;
db = require('../redis');
+ config = require("../config");
+
+ moment = require('moment');
+
module.exports = {
index: function(req, res) {
return res.render('transactions/index', {
@@ -53,6 +57,35 @@
create: function(req, res) {
var finish;
finish = function() {
+ db.hgetall("user:" + req.params.user.toLowerCase(), function(err, user) {
+ return res.render('transactions/notification', {
+ layout: 'mail',
+ amount: (req.body.received * req.body.exchange).toFixed(2).toString() + ' ' + user.currency,
+ address: req.body.address,
+ txid: req.body.txid,
+ js: (function() {
+ return global.js;
+ }),
+ css: (function() {
+ return global.css;
+ })
+ }, function(err, html) {
+ var content, from_email, helper, mail, request, sg, subject, to_email;
+ helper = require('sendgrid').mail;
+ from_email = new helper.Email('[email protected]');
+ to_email = new helper.Email(user.email);
+ subject = 'Transaction Sent';
+ content = new helper.Content('text/html', html);
+ mail = new helper.Mail(from_email, subject, to_email, content);
+ sg = require('sendgrid')(config.sendgrid_token);
+ request = sg.emptyRequest({
+ method: 'POST',
+ path: '/v3/mail/send',
+ body: mail.toJSON()
+ });
+ return sg.API(request);
+ });
+ });
res.write(JSON.stringify(req.body));
return res.end();
};
@@ -62,25 +95,6 @@
if (result) {
return finish();
}
- res.render('notification', {
- layout: 'mail',
- js: (function() {
- return global.js;
- }),
- css: (function() {
- return global.css;
- })
- }, function(err, html) {
- var email, sendgrid;
- sendgrid = require('sendgrid')(config.sendgrid_user, config.sendgrid_password);
- email = new sendgrid.Email({
- subject: 'Transaction Sent',
- html: html
- });
- return sendgrid.send(email);
- });
multi = db.multi();
multi.hmset(req.body.txid, req.body);
multi.rpush("" + req.params.user + ":transactions", req.body.txid);
diff --git a/routes/users.js b/routes/users.js
index 1449eb02..2c79cb31 100644
--- a/routes/users.js
+++ b/routes/users.js
@@ -154,15 +154,20 @@
return global.css;
})
}, function(err, html) {
- var email, sendgrid;
- sendgrid = require('sendgrid')(config.sendgrid_user, config.sendgrid_password);
- email = new sendgrid.Email({
- to: req.body.email,
- subject: 'Welcome to CoinOS',
- html: html
+ var content, from_email, helper, mail, sg, subject, to_email;
+ helper = require('sendgrid').mail;
+ from_email = new helper.Email('[email protected]');
+ to_email = new helper.Email(req.body.email);
+ subject = 'Welcome to CoinOS';
+ content = new helper.Content('text/html', html);
+ mail = new helper.Mail(from_email, subject, to_email, content);
+ sg = require('sendgrid')(config.sendgrid_token);
+ request = sg.emptyRequest({
+ method: 'POST',
+ path: '/v3/mail/send',
+ body: mail.toJSON()
});
- return sendgrid.send(email);
+ return sg.API(request);
});
});
});
@@ -232,15 +237,20 @@
return global.css;
})
}, function(err, html) {
- var email, sendgrid;
- sendgrid = require('sendgrid')(config.sendgrid_user, config.sendgrid_password);
- email = new sendgrid.Email({
- to: req.body.email,
- subject: 'CoinOS Wallet Key',
- html: html
+ var content, from_email, helper, mail, sg, subject, to_email;
+ helper = require('sendgrid').mail;
+ from_email = new helper.Email('[email protected]');
+ to_email = new helper.Email(req.body.email);
+ subject = 'CoinOS Wallet Key';
+ content = new helper.Content('text/html', html);
+ mail = new helper.Mail(from_email, subject, to_email, content);
+ sg = require('sendgrid')(config.sendgrid_token);
+ request = sg.emptyRequest({
+ method: 'POST',
+ path: '/v3/mail/send',
+ body: mail.toJSON()
});
- return sendgrid.send(email);
+ return sg.API(request);
});
}
},