mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-10-26 16:46:12 +01:00
fix: follower calls to return empty item list unless a page is explicitly passed in
This commit is contained in:
@@ -12,37 +12,51 @@ Controller.topics = require('./topics');
|
|||||||
|
|
||||||
Controller.getFollowing = async (req, res) => {
|
Controller.getFollowing = async (req, res) => {
|
||||||
const { followingCount: totalItems } = await user.getUserFields(req.params.uid, ['followingCount']);
|
const { followingCount: totalItems } = await user.getUserFields(req.params.uid, ['followingCount']);
|
||||||
|
let orderedItems;
|
||||||
|
|
||||||
const page = parseInt(req.query.page, 10) || 1;
|
if (req.query.page) {
|
||||||
const resultsPerPage = 50;
|
const page = parseInt(req.query.page, 10) || 1;
|
||||||
const start = Math.max(0, page - 1) * resultsPerPage;
|
const resultsPerPage = 50;
|
||||||
const stop = start + resultsPerPage - 1;
|
const start = Math.max(0, page - 1) * resultsPerPage;
|
||||||
|
const stop = start + resultsPerPage - 1;
|
||||||
|
|
||||||
|
orderedItems = await user.getFollowing(req.params.uid, start, stop);
|
||||||
|
orderedItems = orderedItems.map(({ userslug }) => `${nconf.get('url')}/user/${userslug}`);
|
||||||
|
} else {
|
||||||
|
orderedItems = [];
|
||||||
|
}
|
||||||
|
|
||||||
let orderedItems = await user.getFollowing(req.params.uid, start, stop);
|
|
||||||
orderedItems = orderedItems.map(({ userslug }) => `${nconf.get('url')}/user/${userslug}`);
|
|
||||||
res.status(200).json({
|
res.status(200).json({
|
||||||
'@context': 'https://www.w3.org/ns/activitystreams',
|
'@context': 'https://www.w3.org/ns/activitystreams',
|
||||||
type: 'OrderedCollection',
|
type: 'OrderedCollection',
|
||||||
totalItems,
|
totalItems,
|
||||||
orderedItems,
|
orderedItems,
|
||||||
|
// next, todo...
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
Controller.getFollowers = async (req, res) => {
|
Controller.getFollowers = async (req, res) => {
|
||||||
const { followerCount: totalItems } = await user.getUserFields(req.params.uid, ['followerCount']);
|
const { followerCount: totalItems } = await user.getUserFields(req.params.uid, ['followerCount']);
|
||||||
|
let orderedItems;
|
||||||
|
|
||||||
const page = parseInt(req.query.page, 10) || 1;
|
if (req.query.page) {
|
||||||
const resultsPerPage = 50;
|
const page = parseInt(req.query.page, 10) || 1;
|
||||||
const start = Math.max(0, page - 1) * resultsPerPage;
|
const resultsPerPage = 50;
|
||||||
const stop = start + resultsPerPage - 1;
|
const start = Math.max(0, page - 1) * resultsPerPage;
|
||||||
|
const stop = start + resultsPerPage - 1;
|
||||||
|
|
||||||
|
orderedItems = await user.getFollowers(req.params.uid, start, stop);
|
||||||
|
orderedItems = orderedItems.map(({ userslug }) => `${nconf.get('url')}/user/${userslug}`);
|
||||||
|
} else {
|
||||||
|
orderedItems = [];
|
||||||
|
}
|
||||||
|
|
||||||
let orderedItems = await user.getFollowers(req.params.uid, start, stop);
|
|
||||||
orderedItems = orderedItems.map(({ userslug }) => `${nconf.get('url')}/user/${userslug}`);
|
|
||||||
res.status(200).json({
|
res.status(200).json({
|
||||||
'@context': 'https://www.w3.org/ns/activitystreams',
|
'@context': 'https://www.w3.org/ns/activitystreams',
|
||||||
type: 'OrderedCollection',
|
type: 'OrderedCollection',
|
||||||
totalItems,
|
totalItems,
|
||||||
orderedItems,
|
orderedItems,
|
||||||
|
// next, todo...
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user