Browse Source

getEventsByFollowingArray done, and deleteEvent done

master
arnaucode 7 years ago
parent
commit
b62ddb37bc
2 changed files with 40 additions and 1 deletions
  1. +36
    -1
      controllers/eventController.js
  2. +4
    -0
      server.js

+ 36
- 1
controllers/eventController.js

@ -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

+ 4
- 0
server.js

@ -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 -------------------------------------

Loading…
Cancel
Save