summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--db.json19
-rw-r--r--lib/awmail/index.js57
2 files changed, 75 insertions, 1 deletions
diff --git a/db.json b/db.json
index 4f5c7ee..e097f8d 100644
--- a/db.json
+++ b/db.json
@@ -2132,5 +2132,22 @@
"dateCreated": "Fri, 12 May 2017 14:05:55 GMT"
}
],
- "page": []
+ "page": [
+ {
+ "id": "terms-and-conditions",
+ "title": "Terms and Conditions",
+ "body": "Lorem Ipsum Terms and Conditions",
+ "disabled": false,
+ "__index": 0,
+ "dateCreated": "Sat, 13 May 2017 19:49:53 GMT"
+ },
+ {
+ "id": "privacy-policy",
+ "title": "Privacy Policy",
+ "body": "Lorem Ipsum Privacy Policy",
+ "disabled": false,
+ "__index": 1,
+ "dateCreated": "Sat, 13 May 2017 19:50:06 GMT"
+ }
+ ]
} \ No newline at end of file
diff --git a/lib/awmail/index.js b/lib/awmail/index.js
index 159960e..d0f89d5 100644
--- a/lib/awmail/index.js
+++ b/lib/awmail/index.js
@@ -86,6 +86,42 @@ function AWMail (options) {
res.sendStatus(200)
})
+ router.post('/feedback', function (req, res) {
+ res.header('Access-Control-Allow-Origin', '*')
+ res.header('Access-Control-Allow-Headers', 'X-Requested-With')
+
+ var email = req.body.email
+ var message = req.body.message
+ var track = req.body.track
+ var secret = req.body.secret
+
+ if (secret !== config.secret) {
+ return res.sendStatus(500)
+ }
+
+ deferToNextTick().then(function(){
+ console.log("store message")
+ if (String(track) === 'true') {
+ return storeMessage(email, message)
+ } else {
+ return Q.Promise(function(resolve, reject, notify) { resolve() })
+ }
+ }).then(function(){
+ console.log("store email")
+ if (String(track) === 'true') {
+ return storeEmail(email)
+ } else {
+ return Q.Promise(function(resolve, reject, notify) { resolve() })
+ }
+ }).then(function(){
+ console.log("all done")
+ }).catch(function(err){
+ console.error(err.stack)
+ })
+
+ res.sendStatus(200)
+ })
+
router.get('/test', function (req, res) {
var hash = 'test'
var email = 'julescarbon@gmail.com'
@@ -189,6 +225,27 @@ function AWMail (options) {
})
}
+ function storeMessage (mail, message){
+ return Q.Promise(function(resolve, reject, notify) {
+ var data = {}
+ data['Email'] = mail
+ data['Message'] = message
+ data['entry.1436672940'] = mail
+ data['entry.2103257301'] = message
+ data['fvv'] = "1"
+
+ var url = "https://docs.google.com/forms/d/e/1FAIpQLSdWDnpy4ZF1dJwfAcX5CUITpjbLqLC7rS7nr2iSQrEeGXM1bQ/formResponse"
+
+ request({ url: url, qs: data }, function (err, response, body) {
+ if (err || response.statusCode !== 200) {
+ reject(err)
+ } else {
+ resolve()
+ }
+ })
+ })
+ }
+
this._router = router
}