Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function getAds(req, res) {
- jwt.verify(req.token, 'secretKey', (err) => {
- if (err) {
- res.sendStatus(403);
- }
- else {
- let page = req.query.page || 0;
- let items_per_page = parseInt(req.query.items_per_page) || 10;
- let sort_order = req.query.sort_order || 'asc';
- let sortField = req.query.sort || 'name';
- let firstElementIndex = page * items_per_page;
- const tag_query = req.query.tags ? {tags: req.query.tags} : {};
- const query = req.query.find ? {title: req.query.find} : {};
- Promise.all([
- adItem.find((query, tag_query))
- .skip(firstElementIndex)
- .limit(items_per_page)
- .sort({[sortField]: sort_order})
- .exec(),
- adItem.find({})
- .count()
- .exec(),
- ]).then(([docs, numberOfItems]) => {
- res.json({results: docs, count: numberOfItems});
- }).catch(e => {
- res.json({message: e.message});
- });
- }
- })
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement