Mise à jour de routes
This commit is contained in:
+67
-1
@@ -7,7 +7,7 @@ const auth = require('../auth');
|
|||||||
|
|
||||||
|
|
||||||
router.get('/', auth.required, function (req, res, next) {
|
router.get('/', auth.required, function (req, res, next) {
|
||||||
var limit = 20;
|
var limit = 25;
|
||||||
var offset = 0;
|
var offset = 0;
|
||||||
if (typeof req.query.limit !== 'undefined') {
|
if (typeof req.query.limit !== 'undefined') {
|
||||||
limit = req.query.limit;
|
limit = req.query.limit;
|
||||||
@@ -37,6 +37,11 @@ router.get('/', auth.required, function (req, res, next) {
|
|||||||
'$sum': 1
|
'$sum': 1
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}, {
|
||||||
|
'$sort':
|
||||||
|
{
|
||||||
|
'_id': 1
|
||||||
|
},
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
Promise.all([
|
Promise.all([
|
||||||
@@ -62,7 +67,68 @@ router.get('/', auth.required, function (req, res, next) {
|
|||||||
*/
|
*/
|
||||||
}).catch(next);
|
}).catch(next);
|
||||||
}).catch(next);
|
}).catch(next);
|
||||||
|
});
|
||||||
|
|
||||||
|
router.get('/allByDate', auth.required, function (req, res, next) {
|
||||||
|
User.findById(req.payload.id).then(function (user) {
|
||||||
|
if (!user) {
|
||||||
|
return res.sendStatus(401);
|
||||||
|
}
|
||||||
|
var limit = 50;
|
||||||
|
var offset = 0;
|
||||||
|
if (typeof req.query.limit !== 'undefined') {
|
||||||
|
limit = req.query.limit;
|
||||||
|
}
|
||||||
|
if (typeof req.query.offset !== 'undefined') {
|
||||||
|
offset = req.query.offset;
|
||||||
|
}
|
||||||
|
var query = [
|
||||||
|
{
|
||||||
|
'$match': {
|
||||||
|
'$expr': {
|
||||||
|
'$eq': [ '$author' , { '$toObjectId': user._id.toString() } ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
'$project': {
|
||||||
|
'_id': 0,
|
||||||
|
'aeronef': 1,
|
||||||
|
'imat': 1,
|
||||||
|
'year': {
|
||||||
|
'$year': '$date'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
'$group': {
|
||||||
|
'_id': {
|
||||||
|
'aeronef': '$aeronef',
|
||||||
|
'imat': '$imat',
|
||||||
|
'year': '$year'
|
||||||
|
},
|
||||||
|
'count': {
|
||||||
|
'$sum': 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
'$sort': {
|
||||||
|
'_id': 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
Jump.aggregate(query)
|
||||||
|
.limit(Number(limit))
|
||||||
|
.skip(Number(offset))
|
||||||
|
.exec()
|
||||||
|
.then(function (result) {
|
||||||
|
var aeronefs = result;
|
||||||
|
//console.log(aeronefs);
|
||||||
|
return res.json({
|
||||||
|
aeronefs: aeronefs,
|
||||||
|
aeronefsCount: aeronefs.length
|
||||||
|
});
|
||||||
|
}).catch(next);
|
||||||
|
}).catch(next);
|
||||||
});
|
});
|
||||||
|
|
||||||
module.exports = router;
|
module.exports = router;
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ router.param('application', function (req, res, next, slug) {
|
|||||||
|
|
||||||
router.get('/', auth.required, function (req, res, next) {
|
router.get('/', auth.required, function (req, res, next) {
|
||||||
var query = {};
|
var query = {};
|
||||||
var limit = 20;
|
var limit = 25;
|
||||||
var offset = 0;
|
var offset = 0;
|
||||||
|
|
||||||
if (typeof req.query.limit !== 'undefined') {
|
if (typeof req.query.limit !== 'undefined') {
|
||||||
|
|||||||
+215
-3
@@ -5,9 +5,43 @@ var router = require('express').Router(),
|
|||||||
User = mongoose.model('User');
|
User = mongoose.model('User');
|
||||||
const auth = require('../auth');
|
const auth = require('../auth');
|
||||||
|
|
||||||
|
|
||||||
router.get('/', auth.required, function (req, res, next) {
|
router.get('/', auth.required, function (req, res, next) {
|
||||||
var limit = 20;
|
var query = {};
|
||||||
|
var limit = 25;
|
||||||
|
var offset = 0;
|
||||||
|
if (typeof req.query.limit !== 'undefined') {
|
||||||
|
limit = req.query.limit;
|
||||||
|
}
|
||||||
|
if (typeof req.query.offset !== 'undefined') {
|
||||||
|
offset = req.query.offset;
|
||||||
|
}
|
||||||
|
if (typeof req.query.slug !== 'undefined') {
|
||||||
|
query.slug = req.query.slug;
|
||||||
|
}
|
||||||
|
|
||||||
|
User.findById(req.payload.id).then(function (user) {
|
||||||
|
if (!user) {
|
||||||
|
return res.sendStatus(401);
|
||||||
|
}
|
||||||
|
if (user.role == 'Admin') {
|
||||||
|
return res.sendStatus(403);
|
||||||
|
}
|
||||||
|
Jump.find(query)
|
||||||
|
.limit(Number(limit))
|
||||||
|
.skip(Number(offset))
|
||||||
|
.exec()
|
||||||
|
.then(function (result) {
|
||||||
|
var canopies = result;
|
||||||
|
return res.json({
|
||||||
|
canopies: canopies,
|
||||||
|
canopiesCount: canopies.length
|
||||||
|
});
|
||||||
|
}).catch(next);
|
||||||
|
}).catch(next);
|
||||||
|
});
|
||||||
|
|
||||||
|
router.get('/allBySize', auth.required, function (req, res, next) {
|
||||||
|
var limit = 25;
|
||||||
var offset = 0;
|
var offset = 0;
|
||||||
if (typeof req.query.limit !== 'undefined') {
|
if (typeof req.query.limit !== 'undefined') {
|
||||||
limit = req.query.limit;
|
limit = req.query.limit;
|
||||||
@@ -30,13 +64,17 @@ router.get('/', auth.required, function (req, res, next) {
|
|||||||
}, {
|
}, {
|
||||||
'$group': {
|
'$group': {
|
||||||
'_id': {
|
'_id': {
|
||||||
'voile': '$voile',
|
|
||||||
'taille': '$taille'
|
'taille': '$taille'
|
||||||
},
|
},
|
||||||
'count': {
|
'count': {
|
||||||
'$sum': 1
|
'$sum': 1
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}, {
|
||||||
|
'$sort':
|
||||||
|
{
|
||||||
|
'_id': 1
|
||||||
|
},
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
Promise.all([
|
Promise.all([
|
||||||
@@ -52,7 +90,181 @@ router.get('/', auth.required, function (req, res, next) {
|
|||||||
});
|
});
|
||||||
}).catch(next);
|
}).catch(next);
|
||||||
}).catch(next);
|
}).catch(next);
|
||||||
|
});
|
||||||
|
|
||||||
|
router.get('/allByYear', auth.required, function (req, res, next) {
|
||||||
|
User.findById(req.payload.id).then(function (user) {
|
||||||
|
if (!user) {
|
||||||
|
return res.sendStatus(401);
|
||||||
|
}
|
||||||
|
var limit = 25;
|
||||||
|
var offset = 0;
|
||||||
|
if (typeof req.query.limit !== 'undefined') {
|
||||||
|
limit = req.query.limit;
|
||||||
|
}
|
||||||
|
if (typeof req.query.offset !== 'undefined') {
|
||||||
|
offset = req.query.offset;
|
||||||
|
}
|
||||||
|
var query = [
|
||||||
|
{
|
||||||
|
'$match': {
|
||||||
|
'$expr': {
|
||||||
|
'$eq': [ '$author' , { '$toObjectId': user._id.toString() } ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
'$project': {
|
||||||
|
'_id': 0,
|
||||||
|
'taille': 1,
|
||||||
|
'year': {
|
||||||
|
'$year': '$date'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
'$group': {
|
||||||
|
'_id': {
|
||||||
|
'taille': '$taille',
|
||||||
|
'year': '$year'
|
||||||
|
},
|
||||||
|
'count': {
|
||||||
|
'$sum': 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
'$sort': {
|
||||||
|
'_id': 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
Jump.aggregate(query)
|
||||||
|
.limit(Number(limit))
|
||||||
|
.skip(Number(offset))
|
||||||
|
.exec()
|
||||||
|
.then(function (result) {
|
||||||
|
var canopies = result;
|
||||||
|
//console.log(dropzones);
|
||||||
|
return res.json({
|
||||||
|
canopies: canopies,
|
||||||
|
canopiesCount: canopies.length
|
||||||
|
});
|
||||||
|
}).catch(next);
|
||||||
|
}).catch(next);
|
||||||
|
});
|
||||||
|
|
||||||
|
router.get('/allModelBySize', auth.required, function (req, res, next) {
|
||||||
|
var limit = 25;
|
||||||
|
var offset = 0;
|
||||||
|
if (typeof req.query.limit !== 'undefined') {
|
||||||
|
limit = req.query.limit;
|
||||||
|
}
|
||||||
|
if (typeof req.query.offset !== 'undefined') {
|
||||||
|
offset = req.query.offset;
|
||||||
|
}
|
||||||
|
|
||||||
|
User.findById(req.payload.id).then(function (user) {
|
||||||
|
if (!user) {
|
||||||
|
return res.sendStatus(401);
|
||||||
|
}
|
||||||
|
var query = [
|
||||||
|
{
|
||||||
|
'$match': {
|
||||||
|
'$expr': {
|
||||||
|
'$eq': [ '$author' , { '$toObjectId': user._id.toString() } ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
'$group': {
|
||||||
|
'_id': {
|
||||||
|
'taille': '$taille',
|
||||||
|
'voile': '$voile'
|
||||||
|
},
|
||||||
|
'count': {
|
||||||
|
'$sum': 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
'$sort':
|
||||||
|
{
|
||||||
|
'_id': 1
|
||||||
|
},
|
||||||
|
}
|
||||||
|
];
|
||||||
|
Promise.all([
|
||||||
|
Jump.aggregate(query)
|
||||||
|
.limit(Number(limit))
|
||||||
|
.skip(Number(offset))
|
||||||
|
.exec()
|
||||||
|
]).then(function (results) {
|
||||||
|
var canopies = results[0];
|
||||||
|
return res.json({
|
||||||
|
canopies: canopies,
|
||||||
|
canopiesCount: canopies.length
|
||||||
|
});
|
||||||
|
}).catch(next);
|
||||||
|
}).catch(next);
|
||||||
|
});
|
||||||
|
|
||||||
|
router.get('/allModelByYear', auth.required, function (req, res, next) {
|
||||||
|
User.findById(req.payload.id).then(function (user) {
|
||||||
|
if (!user) {
|
||||||
|
return res.sendStatus(401);
|
||||||
|
}
|
||||||
|
var limit = 25;
|
||||||
|
var offset = 0;
|
||||||
|
if (typeof req.query.limit !== 'undefined') {
|
||||||
|
limit = req.query.limit;
|
||||||
|
}
|
||||||
|
if (typeof req.query.offset !== 'undefined') {
|
||||||
|
offset = req.query.offset;
|
||||||
|
}
|
||||||
|
var query = [
|
||||||
|
{
|
||||||
|
'$match': {
|
||||||
|
'$expr': {
|
||||||
|
'$eq': [ '$author' , { '$toObjectId': user._id.toString() } ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
'$project': {
|
||||||
|
'_id': 0,
|
||||||
|
'voile': 1,
|
||||||
|
'taille': 1,
|
||||||
|
'year': {
|
||||||
|
'$year': '$date'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
'$group': {
|
||||||
|
'_id': {
|
||||||
|
'taille': '$taille',
|
||||||
|
'voile': '$voile',
|
||||||
|
'year': '$year'
|
||||||
|
},
|
||||||
|
'count': {
|
||||||
|
'$sum': 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
'$sort': {
|
||||||
|
'_id': 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
Jump.aggregate(query)
|
||||||
|
.limit(Number(limit))
|
||||||
|
.skip(Number(offset))
|
||||||
|
.exec()
|
||||||
|
.then(function (result) {
|
||||||
|
var canopies = result;
|
||||||
|
//console.log(dropzones);
|
||||||
|
return res.json({
|
||||||
|
canopies: canopies,
|
||||||
|
canopiesCount: canopies.length
|
||||||
|
});
|
||||||
|
}).catch(next);
|
||||||
|
}).catch(next);
|
||||||
});
|
});
|
||||||
|
|
||||||
module.exports = router;
|
module.exports = router;
|
||||||
|
|||||||
+80
-16
@@ -7,19 +7,18 @@ const auth = require('../auth');
|
|||||||
|
|
||||||
|
|
||||||
router.get('/', auth.required, function (req, res, next) {
|
router.get('/', auth.required, function (req, res, next) {
|
||||||
var limit = 20;
|
|
||||||
var offset = 0;
|
|
||||||
if (typeof req.query.limit !== 'undefined') {
|
|
||||||
limit = req.query.limit;
|
|
||||||
}
|
|
||||||
if (typeof req.query.offset !== 'undefined') {
|
|
||||||
offset = req.query.offset;
|
|
||||||
}
|
|
||||||
|
|
||||||
User.findById(req.payload.id).then(function (user) {
|
User.findById(req.payload.id).then(function (user) {
|
||||||
if (!user) {
|
if (!user) {
|
||||||
return res.sendStatus(401);
|
return res.sendStatus(401);
|
||||||
}
|
}
|
||||||
|
var limit = 25;
|
||||||
|
var offset = 0;
|
||||||
|
if (typeof req.query.limit !== 'undefined') {
|
||||||
|
limit = req.query.limit;
|
||||||
|
}
|
||||||
|
if (typeof req.query.offset !== 'undefined') {
|
||||||
|
offset = req.query.offset;
|
||||||
|
}
|
||||||
var query = [
|
var query = [
|
||||||
{
|
{
|
||||||
'$match': {
|
'$match': {
|
||||||
@@ -37,22 +36,87 @@ router.get('/', auth.required, function (req, res, next) {
|
|||||||
'$sum': 1
|
'$sum': 1
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}, {
|
||||||
|
'$sort':
|
||||||
|
{
|
||||||
|
'_id': 1
|
||||||
|
},
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
Promise.all([
|
Jump.aggregate(query)
|
||||||
Jump.aggregate(query)
|
.limit(Number(limit))
|
||||||
.limit(Number(limit))
|
.skip(Number(offset))
|
||||||
.skip(Number(offset))
|
.exec()
|
||||||
.exec()
|
.then(function (result) {
|
||||||
]).then(function (results) {
|
var dropzones = result;
|
||||||
var dropzones = results[0];
|
|
||||||
return res.json({
|
return res.json({
|
||||||
dropzones: dropzones,
|
dropzones: dropzones,
|
||||||
dropzonesCount: dropzones.length
|
dropzonesCount: dropzones.length
|
||||||
});
|
});
|
||||||
}).catch(next);
|
}).catch(next);
|
||||||
}).catch(next);
|
}).catch(next);
|
||||||
|
});
|
||||||
|
|
||||||
|
router.get('/allByDate', auth.required, function (req, res, next) {
|
||||||
|
User.findById(req.payload.id).then(function (user) {
|
||||||
|
if (!user) {
|
||||||
|
return res.sendStatus(401);
|
||||||
|
}
|
||||||
|
var limit = 25;
|
||||||
|
var offset = 0;
|
||||||
|
if (typeof req.query.limit !== 'undefined') {
|
||||||
|
limit = req.query.limit;
|
||||||
|
}
|
||||||
|
if (typeof req.query.offset !== 'undefined') {
|
||||||
|
offset = req.query.offset;
|
||||||
|
}
|
||||||
|
var query = [
|
||||||
|
{
|
||||||
|
'$match': {
|
||||||
|
'$expr': {
|
||||||
|
'$eq': [ '$author' , { '$toObjectId': user._id.toString() } ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
'$project': {
|
||||||
|
'_id': 0,
|
||||||
|
'lieu': 1,
|
||||||
|
'oaci': 1,
|
||||||
|
'year': {
|
||||||
|
'$year': '$date'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
'$group': {
|
||||||
|
'_id': {
|
||||||
|
'lieu': '$lieu',
|
||||||
|
'oaci': '$oaci',
|
||||||
|
'year': '$year'
|
||||||
|
},
|
||||||
|
'count': {
|
||||||
|
'$sum': 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
'$sort': {
|
||||||
|
'_id': 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
Jump.aggregate(query)
|
||||||
|
.limit(Number(limit))
|
||||||
|
.skip(Number(offset))
|
||||||
|
.exec()
|
||||||
|
.then(function (result) {
|
||||||
|
var dropzones = result;
|
||||||
|
//console.log(dropzones);
|
||||||
|
return res.json({
|
||||||
|
dropzones: dropzones,
|
||||||
|
dropzonesCount: dropzones.length
|
||||||
|
});
|
||||||
|
}).catch(next);
|
||||||
|
}).catch(next);
|
||||||
});
|
});
|
||||||
|
|
||||||
module.exports = router;
|
module.exports = router;
|
||||||
|
|||||||
+133
-21
@@ -17,9 +17,12 @@ router.param('jump', function (req, res, next, slug) {
|
|||||||
}).catch(next);
|
}).catch(next);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
/**
|
||||||
|
* return all jumps
|
||||||
|
*/
|
||||||
router.get('/', auth.required, function (req, res, next) {
|
router.get('/', auth.required, function (req, res, next) {
|
||||||
var query = {};
|
var query = {};
|
||||||
var limit = 20;
|
var limit = 25;
|
||||||
var offset = 0;
|
var offset = 0;
|
||||||
if (typeof req.query.limit !== 'undefined') {
|
if (typeof req.query.limit !== 'undefined') {
|
||||||
limit = req.query.limit;
|
limit = req.query.limit;
|
||||||
@@ -51,7 +54,7 @@ router.get('/', auth.required, function (req, res, next) {
|
|||||||
Jump.find(query)
|
Jump.find(query)
|
||||||
.limit(Number(limit))
|
.limit(Number(limit))
|
||||||
.skip(Number(offset))
|
.skip(Number(offset))
|
||||||
.sort({ numero: 'asc' })
|
.sort({ numero: 'desc' })
|
||||||
.populate('author')
|
.populate('author')
|
||||||
.exec(),
|
.exec(),
|
||||||
Jump.count(query).exec(),
|
Jump.count(query).exec(),
|
||||||
@@ -71,8 +74,71 @@ router.get('/', auth.required, function (req, res, next) {
|
|||||||
}).catch(next);
|
}).catch(next);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
router.get('/allByDate', auth.required, function (req, res, next) {
|
||||||
|
User.findById(req.payload.id).then(function (user) {
|
||||||
|
if (!user) {
|
||||||
|
return res.sendStatus(401);
|
||||||
|
}
|
||||||
|
var limit = 120;
|
||||||
|
var offset = 0;
|
||||||
|
if (typeof req.query.limit !== 'undefined') {
|
||||||
|
limit = req.query.limit;
|
||||||
|
}
|
||||||
|
if (typeof req.query.offset !== 'undefined') {
|
||||||
|
offset = req.query.offset;
|
||||||
|
}
|
||||||
|
var query = [
|
||||||
|
{
|
||||||
|
'$match': {
|
||||||
|
'$expr': {
|
||||||
|
'$eq': [ '$author' , { '$toObjectId': user._id.toString() } ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
'$project': {
|
||||||
|
'_id': 0,
|
||||||
|
'year': {
|
||||||
|
'$year': '$date'
|
||||||
|
},
|
||||||
|
'month': {
|
||||||
|
'$month': '$date'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
'$group': {
|
||||||
|
'_id': {
|
||||||
|
'year': '$year',
|
||||||
|
'month': '$month'
|
||||||
|
},
|
||||||
|
'count': {
|
||||||
|
'$sum': 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
'$sort': {
|
||||||
|
'_id': 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
Jump.aggregate(query)
|
||||||
|
.limit(Number(limit))
|
||||||
|
.skip(Number(offset))
|
||||||
|
.exec()
|
||||||
|
.then(function (result) {
|
||||||
|
var jumps = result;
|
||||||
|
//console.log(jumps);
|
||||||
|
return res.json({
|
||||||
|
jumps: jumps,
|
||||||
|
jumpsCount: jumps.length
|
||||||
|
});
|
||||||
|
}).catch(next);
|
||||||
|
}).catch(next);
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
router.get('/feed', auth.required, function (req, res, next) {
|
router.get('/feed', auth.required, function (req, res, next) {
|
||||||
var limit = 20;
|
var limit = 25;
|
||||||
var offset = 0;
|
var offset = 0;
|
||||||
if (typeof req.query.limit !== 'undefined') {
|
if (typeof req.query.limit !== 'undefined') {
|
||||||
limit = req.query.limit;
|
limit = req.query.limit;
|
||||||
@@ -106,6 +172,64 @@ router.get('/feed', auth.required, function (req, res, next) {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
/**
|
||||||
|
* return last jump
|
||||||
|
*/
|
||||||
|
router.get('/last', auth.required, function (req, res, next) {
|
||||||
|
|
||||||
|
User.findById(req.payload.id).then(function (user) {
|
||||||
|
if (!user) {
|
||||||
|
return res.sendStatus(401);
|
||||||
|
}
|
||||||
|
/*Jump.findOne({ slug: slug })
|
||||||
|
.populate('author')
|
||||||
|
.then(function (jump) {
|
||||||
|
if (!jump) {
|
||||||
|
return res.sendStatus(404);
|
||||||
|
}
|
||||||
|
req.jump = jump;
|
||||||
|
return next();
|
||||||
|
}).catch(next);*/
|
||||||
|
Jump.find({})
|
||||||
|
.limit(1)
|
||||||
|
.skip(0)
|
||||||
|
.sort({ numero: 'desc' })
|
||||||
|
.populate('author')
|
||||||
|
.exec()
|
||||||
|
.then(function (jumps) {
|
||||||
|
if (!jumps) {
|
||||||
|
return res.sendStatus(404);
|
||||||
|
}
|
||||||
|
req.lastjump = jumps[0];
|
||||||
|
if (req.lastjump.author._id.toString() !== req.payload.id.toString()) {
|
||||||
|
return res.sendStatus(403);
|
||||||
|
}
|
||||||
|
return res.json({ jump: req.lastjump.toJSONFor(user) });
|
||||||
|
}).catch(next);
|
||||||
|
}).catch(next);
|
||||||
|
});
|
||||||
|
/**
|
||||||
|
* return a jump
|
||||||
|
*/
|
||||||
|
router.get('/:jump', auth.required, function (req, res, next) {
|
||||||
|
Promise.all([
|
||||||
|
req.payload ? User.findById(req.payload.id) : null
|
||||||
|
/*req.jump.populate('author')*/
|
||||||
|
]).then(function (results) {
|
||||||
|
var user = results[0];
|
||||||
|
if (!user) {
|
||||||
|
return res.sendStatus(401);
|
||||||
|
}
|
||||||
|
if (req.jump.author._id.toString() !== req.payload.id.toString()) {
|
||||||
|
return res.sendStatus(403);
|
||||||
|
}
|
||||||
|
return res.json({ jump: req.jump.toJSONFor(user) });
|
||||||
|
}).catch(next);
|
||||||
|
});
|
||||||
|
|
||||||
|
/**
|
||||||
|
* save a jump
|
||||||
|
*/
|
||||||
router.post('/', auth.required, function (req, res, next) {
|
router.post('/', auth.required, function (req, res, next) {
|
||||||
Promise.all([
|
Promise.all([
|
||||||
req.payload ? User.findById(req.payload.id) : null
|
req.payload ? User.findById(req.payload.id) : null
|
||||||
@@ -128,23 +252,9 @@ router.post('/', auth.required, function (req, res, next) {
|
|||||||
}).catch(next);
|
}).catch(next);
|
||||||
});
|
});
|
||||||
|
|
||||||
// return a jump
|
/**
|
||||||
router.get('/:jump', auth.required, function (req, res, next) {
|
* update a jump
|
||||||
Promise.all([
|
*/
|
||||||
req.payload ? User.findById(req.payload.id) : null
|
|
||||||
/*req.jump.populate('author')*/
|
|
||||||
]).then(function (results) {
|
|
||||||
var user = results[0];
|
|
||||||
if (!user) {
|
|
||||||
return res.sendStatus(401);
|
|
||||||
}
|
|
||||||
if (req.jump.author._id.toString() !== req.payload.id.toString()) {
|
|
||||||
return res.sendStatus(403);
|
|
||||||
}
|
|
||||||
return res.json({ jump: req.jump.toJSONFor(user) });
|
|
||||||
}).catch(next);
|
|
||||||
});
|
|
||||||
|
|
||||||
router.put('/:jump', auth.required, function (req, res, next) {
|
router.put('/:jump', auth.required, function (req, res, next) {
|
||||||
Promise.all([
|
Promise.all([
|
||||||
req.payload ? User.findById(req.payload.id) : null
|
req.payload ? User.findById(req.payload.id) : null
|
||||||
@@ -217,7 +327,9 @@ router.put('/:jump', auth.required, function (req, res, next) {
|
|||||||
}).catch(next);
|
}).catch(next);
|
||||||
});
|
});
|
||||||
|
|
||||||
// delete jump
|
/**
|
||||||
|
* delete a jump
|
||||||
|
*/
|
||||||
router.delete('/:jump', auth.required, function (req, res, next) {
|
router.delete('/:jump', auth.required, function (req, res, next) {
|
||||||
User.findById(req.payload.id).then(function (user) {
|
User.findById(req.payload.id).then(function (user) {
|
||||||
if (!user) {
|
if (!user) {
|
||||||
|
|||||||
+7
-1
@@ -36,6 +36,9 @@ router.put('/user', auth.required, function (req, res, next) {
|
|||||||
if (typeof req.body.user.licence !== 'undefined') {
|
if (typeof req.body.user.licence !== 'undefined') {
|
||||||
user.licence = req.body.user.licence;
|
user.licence = req.body.user.licence;
|
||||||
}
|
}
|
||||||
|
if (typeof req.body.user.poids !== 'undefined') {
|
||||||
|
user.poids = req.body.user.poids;
|
||||||
|
}
|
||||||
if (typeof req.body.user.image !== 'undefined') {
|
if (typeof req.body.user.image !== 'undefined') {
|
||||||
user.image = req.body.user.image;
|
user.image = req.body.user.image;
|
||||||
}
|
}
|
||||||
@@ -106,8 +109,11 @@ router.post('/users', function (req, res, next) {
|
|||||||
if (typeof req.body.user.licence !== 'undefined') {
|
if (typeof req.body.user.licence !== 'undefined') {
|
||||||
user.licence = req.body.user.licence;
|
user.licence = req.body.user.licence;
|
||||||
}
|
}
|
||||||
|
if (typeof req.body.user.poids !== 'undefined') {
|
||||||
|
user.poids = req.body.user.poids;
|
||||||
|
}
|
||||||
user.setPassword(req.body.user.password);
|
user.setPassword(req.body.user.password);
|
||||||
user.role = 'User'; // valeurs possibles : 'User' or 'Admin'
|
user.role = 'User';
|
||||||
|
|
||||||
user.save().then(function () {
|
user.save().then(function () {
|
||||||
return res.json({ user: user.toAuthJSON() });
|
return res.json({ user: user.toAuthJSON() });
|
||||||
|
|||||||
Reference in New Issue
Block a user