summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJules Laplace <jules@okfoc.us>2015-02-02 13:50:09 -0500
committerJules Laplace <jules@okfoc.us>2015-02-02 13:50:09 -0500
commit19b74bf938aef3b0c3a35c185d9d1563e773a972 (patch)
treed201fe0e1a5469f37fc80bdecdab9d1560bc526b
parentcd6b76e4665f37566f08075479d501628f30eb0b (diff)
webhook firing
-rw-r--r--package.json1
-rw-r--r--server/lib/webhook/webhook.js35
2 files changed, 23 insertions, 13 deletions
diff --git a/package.json b/package.json
index 7a504af..69766ce 100644
--- a/package.json
+++ b/package.json
@@ -15,6 +15,7 @@
"express-subdomains": "0.0.5",
"express-xml-bodyparser": "0.0.6",
"html-entities": "~1.0.10",
+ "inspect": "0.0.2",
"intro.js": "^0.9.0",
"js2xml": "^1.0.0",
"knox": "~0.8.10",
diff --git a/server/lib/webhook/webhook.js b/server/lib/webhook/webhook.js
index 21ff23d..25e3fb8 100644
--- a/server/lib/webhook/webhook.js
+++ b/server/lib/webhook/webhook.js
@@ -57,11 +57,13 @@ var subscribe = module.exports = {
// subscriptions
new_subscription_notification: function(data, user){
- var account = data.account
- Subscription.findOne({ "uuid": data.subscription.uuid }, function(err, subscription){
+ var account = data.account[0].account_code[0]
+ var subscrip = data.subscription[0]
+ var uuid = subscrip.uuid[0]
+ Subscription.findOne({ "uuid": uuid }, function(err, subscription){
if (err || subscription) return;
- var plan = data.subscription.plan.plan_code.split("-")
+ var plan = subscrip.plan[0].plan_code[0].split("-")
var plan_type = plan[0]
var plan_period = plan[1]
@@ -69,17 +71,25 @@ var subscribe = module.exports = {
user.plan_level = subscribe.plan_level[plan_type]
var subscriber = new Subscription ()
- subscriber.uuid = data.subscription.uuid
+ subscriber.uuid = uuid
subscriber.user_id = user._id
subscriber.plan_type = plan_type
subscriber.plan_period = plan_period
subscriber.plan_level = subscribe.plan_level[plan_type]
- subscriber.add_ons = subscription.add_ons.map(function(add_on){
- return {
- name: add_on.plan,
- quantity: add_on.quantity,
- }
- })
+ subscriber.add_ons = []
+ var add_ons = subscrip.subscription_add_ons[0].subscription_add_on
+ if (add_ons) {
+ add_ons.forEach(function(add_on){
+ switch (add_on.add_on_code[0]) {
+ case 'extra-basic-layout':
+ subscriber.basic_layouts = parseInt(add_on.quantity[0]._, 10) || 0
+ break
+ case 'extra-pro-layout':
+ subscriber.pro_layouts = parseInt(add_on.quantity[0]._, 10) || 0
+ break
+ }
+ })
+ }
subscriber.save(function(err, data){
if (err) return;
user.save(function(err){
@@ -117,7 +127,7 @@ var subscribe = module.exports = {
},
execute: function(action, data){
- User.findOne({ _id: data.account.account_code }, function(err, user){
+ User.findOne({ _id: data.account[0].account_code[0] }, function(err, user){
if (err) { return }
subscribe.callbacks[action](data, user)
})
@@ -128,13 +138,12 @@ var subscribe = module.exports = {
console.log(req.body)
// parser.parseString(req.body, function (err, result) {
var result = req.body
- console.log(inspect(result, { colors: true, depth: Infinity }));
for (var action in result) {
if (subscribe.callbacks[action]) {
subscribe.execute(action, result[action]);
- return res.status(200).end()
}
}
+ return res.status(200).end()
},
list: function(req, res){