|
@@ -210,37 +210,19 @@ module.exports = function(crowi, app) {
|
|
|
* @apiGroup Tag
|
|
* @apiGroup Tag
|
|
|
*
|
|
*
|
|
|
* @apiParam {Number} limit
|
|
* @apiParam {Number} limit
|
|
|
- * @apiParam {Number} offset
|
|
|
|
|
|
|
+ * @apiParam {Number} skip
|
|
|
*/
|
|
*/
|
|
|
api.list = async function(req, res) {
|
|
api.list = async function(req, res) {
|
|
|
const limit = +req.query.limit || 50;
|
|
const limit = +req.query.limit || 50;
|
|
|
- const offset = +req.query.offset || 0;
|
|
|
|
|
|
|
+ const skip = +req.query.skip || 0;
|
|
|
const sortOpt = { count: -1, _id: -1 };
|
|
const sortOpt = { count: -1, _id: -1 };
|
|
|
- const queryOptions = { offset, limit, sortOpt };
|
|
|
|
|
- const result = {};
|
|
|
|
|
|
|
+ const queryOptions = { skip, limit, sortOpt };
|
|
|
|
|
|
|
|
try {
|
|
try {
|
|
|
- // get tag list contains id and count properties
|
|
|
|
|
- const listData = await PageTagRelation.createTagListWithCount(queryOptions);
|
|
|
|
|
- const ids = listData.list.map((obj) => { return obj._id });
|
|
|
|
|
-
|
|
|
|
|
- // get tag documents for add name data to the list
|
|
|
|
|
- const tags = await Tag.find({ _id: { $in: ids } });
|
|
|
|
|
-
|
|
|
|
|
- // add name property
|
|
|
|
|
- result.data = listData.list.map((elm) => {
|
|
|
|
|
- const data = {};
|
|
|
|
|
- const tag = tags.find((tag) => { return (tag.id === elm._id.toString()) });
|
|
|
|
|
-
|
|
|
|
|
- data._id = elm._id;
|
|
|
|
|
- data.name = tag.name;
|
|
|
|
|
- data.count = elm.count; // the number of related pages
|
|
|
|
|
- return data;
|
|
|
|
|
- });
|
|
|
|
|
-
|
|
|
|
|
- result.totalCount = listData.totalCount;
|
|
|
|
|
|
|
+ // get tag list contains id name and count properties
|
|
|
|
|
+ const tagsWithCount = await PageTagRelation.createTagListWithCount(queryOptions);
|
|
|
|
|
|
|
|
- return res.json(ApiResponse.success(result));
|
|
|
|
|
|
|
+ return res.json(ApiResponse.success(tagsWithCount));
|
|
|
}
|
|
}
|
|
|
catch (err) {
|
|
catch (err) {
|
|
|
return res.json(ApiResponse.error(err));
|
|
return res.json(ApiResponse.error(err));
|