|
@@ -5,6 +5,7 @@ const logger = loggerFactory('growi:routes:apiv3:pages');
|
|
|
const express = require('express');
|
|
const express = require('express');
|
|
|
|
|
|
|
|
const { query, param } = require('express-validator');
|
|
const { query, param } = require('express-validator');
|
|
|
|
|
+const { serializeUserSecurely } = require('../../models/serializers/user-serializer');
|
|
|
const ErrorV3 = require('../../models/vo/error-apiv3');
|
|
const ErrorV3 = require('../../models/vo/error-apiv3');
|
|
|
|
|
|
|
|
const router = express.Router();
|
|
const router = express.Router();
|
|
@@ -128,13 +129,16 @@ module.exports = (crowi) => {
|
|
|
page: selectedPage,
|
|
page: selectedPage,
|
|
|
limit,
|
|
limit,
|
|
|
sort: { createdAt: -1 },
|
|
sort: { createdAt: -1 },
|
|
|
- populate: {
|
|
|
|
|
- path: 'author',
|
|
|
|
|
- select: User.USER_PUBLIC_FIELDS,
|
|
|
|
|
- },
|
|
|
|
|
|
|
+ populate: 'author',
|
|
|
},
|
|
},
|
|
|
);
|
|
);
|
|
|
|
|
|
|
|
|
|
+ paginateResult.docs.forEach((doc) => {
|
|
|
|
|
+ if (doc.author != null && doc.author instanceof User) {
|
|
|
|
|
+ doc.author = serializeUserSecurely(doc.author);
|
|
|
|
|
+ }
|
|
|
|
|
+ });
|
|
|
|
|
+
|
|
|
return res.apiv3(paginateResult);
|
|
return res.apiv3(paginateResult);
|
|
|
}
|
|
}
|
|
|
catch (err) {
|
|
catch (err) {
|
|
@@ -181,7 +185,12 @@ module.exports = (crowi) => {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
try {
|
|
try {
|
|
|
- const revision = await Revision.findById(revisionId).populate('author', User.USER_PUBLIC_FIELDS);
|
|
|
|
|
|
|
+ const revision = await Revision.findById(revisionId).populate('author');
|
|
|
|
|
+
|
|
|
|
|
+ if (revision.author != null && revision.author instanceof User) {
|
|
|
|
|
+ revision.author = serializeUserSecurely(revision.author);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
return res.apiv3({ revision });
|
|
return res.apiv3({ revision });
|
|
|
}
|
|
}
|
|
|
catch (err) {
|
|
catch (err) {
|