getEventsByFollowingArray done, and deleteEvent done

This commit is contained in:
arnaucode
2017-02-12 17:29:10 +01:00
parent b0f414d621
commit b62ddb37bc
2 changed files with 40 additions and 1 deletions

View File

@@ -65,19 +65,54 @@ exports.addEvent = function(req, res) {
} }
});//end of usermodel.find });//end of usermodel.find
}; };
exports.deleteEvent = function(req, res) {
userModel.findOne({'tokens.token': req.headers['x-access-token']})
.exec(function(err, user){
if (err) return res.send(500, err.message);
eventModel.findOne({
_id: req.params.eventid,
user: user._id
})
.exec(function(err, event) {
if (err) return res.send(500, err.message);
if(event.user.equals(user._id))
{
event.remove(function(err) {
if(err) return res.send(500, err.message);
console.log("deleted");
exports.getAllEvents(req, res);
});
}
});
});
};//funciona, pero no esborra les referències dels users als events que s'esborren. Més endavant caldria fer-ho.
/* /*
un get events by following, que seria: un get events by following, que seria:
s'envia un post /events/following s'envia un post /events/following
amb la data: amb la data:
{ {
users: ['user1', 'user4', 'user8'] "following": ["user1", "user2", "user3"]
} }
que bàsicament és una array amb els followings que tens que bàsicament és una array amb els followings que tens
això retorna els events d'aquests users que segueixes això retorna els events d'aquests users que segueixes
*/ */
exports.getEventsByFollowingArray = function(req, res) {
eventModel.find({
date: {$gte: new Date()},
'username': req.body.users
})
.sort('date')
.limit(pageSize)
.skip(pageSize * Number(req.query.page))
.exec(function (err, events) {
if (err) return res.send(500, err.message);
res.status(200).jsonp(events);
});
};
/* /*
un get events by categories, que seria: un get events by categories, que seria:
s'envia un get /events/category/:category s'envia un get /events/category/:category

View File

@@ -61,6 +61,8 @@ apiRoutes.route('/events')
.get(eventCtrl.getAllEvents); .get(eventCtrl.getAllEvents);
apiRoutes.route('/events/id/:eventid') apiRoutes.route('/events/id/:eventid')
.get(eventCtrl.getEventById); .get(eventCtrl.getEventById);
apiRoutes.route('/events/following')
.post(eventCtrl.getEventsByFollowingArray);
apiRoutes.route('/events/category/:category') apiRoutes.route('/events/category/:category')
.get(eventCtrl.getEventsByCategory); .get(eventCtrl.getEventsByCategory);
@@ -98,6 +100,8 @@ apiRoutes.use(function(req, res, next) {
apiRoutes.route('/events') apiRoutes.route('/events')
.post(eventCtrl.addEvent); .post(eventCtrl.addEvent);
apiRoutes.route('/events/id/:eventid')
.delete(eventCtrl.deleteEvent);
app.use('/api', apiRoutes); app.use('/api', apiRoutes);
// end of API routes ------------------------------------- // end of API routes -------------------------------------