diff options
| author | Jules Laplace <julescarbon@gmail.com> | 2017-05-21 01:41:23 +0200 |
|---|---|---|
| committer | Jules Laplace <julescarbon@gmail.com> | 2017-05-21 01:41:23 +0200 |
| commit | 113eca6e9d60c923da82474941acf5c9640bd917 (patch) | |
| tree | c4aec09beae64b93c2af25a03912fc668b532558 | |
| parent | 222df09ef1f5322a92ade3936aa0b94b0f4a7f02 (diff) | |
handle new uploads
| -rw-r--r-- | lib/awmail/index.js | 38 | ||||
| -rw-r--r-- | package.json | 2 | ||||
| -rw-r--r-- | templates/email.html | 4 | ||||
| -rw-r--r-- | templates/email.txt | 2 |
4 files changed, 35 insertions, 11 deletions
diff --git a/lib/awmail/index.js b/lib/awmail/index.js index 9534b32..64db34c 100644 --- a/lib/awmail/index.js +++ b/lib/awmail/index.js @@ -8,6 +8,7 @@ var request = require('request') var multer = require('multer') var PassThrough = require('stream').PassThrough var upload = require('../../node_modules/okcms/app/node_modules/okservices/oks3/upload') +var uuid = require('uuid/v1') /* awmail: { @@ -39,36 +40,59 @@ function AWMail (options) { key: process.env.MAILGUN_API_KEY, }) - router.post('/send', mult.single('image'), function (req, res) { + var multerMiddleware = mult.fields([ + { name: 'dots', maxCount: 1 }, + { name: 'lines', maxCount: 1 }, + { name: 'plain', maxCount: 1 }, + ]) + + router.post('/send', multerMiddleware, function (req, res) { res.header('Access-Control-Allow-Origin', '*') res.header('Access-Control-Allow-Headers', 'X-Requested-With') + var id = uuid() var email = req.body.email var track = req.body.track var secret = req.body.secret + var dots_url, lines_url, plain_url if (secret !== config.secret) { return res.sendStatus(500) } deferToNextTick().then(function(){ - console.log("upload image") + console.log("upload dots") + return uploadImage({ + filename: uuid + '-dots.jpg', + file: req.files.dots[0], + }) + }).then(function(url){ + console.log("upload lines") + dots_url = url return uploadImage({ - file: req.file, + filename: uuid + '-lines.jpg', + file: req.files.lines[0], }) }).then(function(url){ + console.log("upload plain") + lines_url = url + return uploadImage({ + filename: uuid + '-plain.jpg', + file: req.files.plain[0], + }) + }).then(function(url){ + plain_url = url console.log("parse templates") // https://marsupial.s3.amazonaws.com/armory/mail/260b1e90-380e-11e7-b0c0-190f661d482a.jpg - var hash = url.replace('https://marsupial.s3.amazonaws.com/armory/mail/','').replace('.jpg','') var templateData = { + id: id, email: email, - hash: hash, } return parseTemplates(templateData) }).then(function(mailData){ console.log("send mail") mailData.email = email - mailData.image = req.file + mailData.image = req.files.plain[0] return sendMail(mailData) }).then(function(){ console.log("store email") @@ -157,7 +181,7 @@ function AWMail (options) { return Q.Promise(function(resolve, reject, notify) { upload.put({ file: data.file, - preserveFilename: false, + filename: data.filename, dirname: "armory/mail", types: { 'image/gif': 'gif', diff --git a/package.json b/package.json index 4334c5b..01f754e 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "liquid-node": "^2.6.1", "mailgun.js": "^2.0.1", "multer": "^1.3.0", - "okcms": "git+ssh://git@ghghgh.us/~/okcms.git#v0.2.7", + "okcms": "git+ssh://git@ghghgh.us/~/okcms.git#v0.2.8", "request": "^2.81.0" }, "devDependencies": {} diff --git a/templates/email.html b/templates/email.html index e7ddad8..fab1372 100644 --- a/templates/email.html +++ b/templates/email.html @@ -1,7 +1,7 @@ HANSEL AND GRETEL <br><br> -<img src='cid:face.jpg'> +<img src='cid:plain.jpg'> <br><br> -<a href='https://hanselgretelarmory.com/photo/{{hash}}'>Download your photo</a> +<a href='https://hanselgretelarmory.com/photo/{{id}}'>Download your photo</a> <br><br> diff --git a/templates/email.txt b/templates/email.txt index 71c367d..94f8577 100644 --- a/templates/email.txt +++ b/templates/email.txt @@ -3,7 +3,7 @@ HANSEL AND GRETEL We found your face! Download your photo: -https://hanselgretelarmory.com/photo/{{hash}} +https://hanselgretelarmory.com/photo/{{id}} ARMORY ON PARK |
