X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Fcontrollers%2Fapi%2Fserver%2Ffollows.ts;h=0bc20bd605fecd774a50641393e5ef317348f1d6;hb=7024e9120b381b5b3201212f5a18f5cdc14e15ff;hp=37647622b6b3c525a98965fdc74c2ecf75d27d5f;hpb=8d5e65349deebd499c0be10fe02d535a77d58ddb;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/controllers/api/server/follows.ts b/server/controllers/api/server/follows.ts index 37647622b..0bc20bd60 100644 --- a/server/controllers/api/server/follows.ts +++ b/server/controllers/api/server/follows.ts @@ -19,16 +19,18 @@ import { followingSortValidator, followValidator, getFollowerValidator, - removeFollowingValidator + removeFollowingValidator, + listFollowsValidator } from '../../../middlewares/validators' import { ActorFollowModel } from '../../../models/activitypub/actor-follow' import { JobQueue } from '../../../lib/job-queue' -import { removeRedundancyOf } from '../../../lib/redundancy' +import { removeRedundanciesOfServer } from '../../../lib/redundancy' import { sequelizeTypescript } from '../../../initializers/database' import { autoFollowBackIfNeeded } from '../../../lib/activitypub/follow' const serverFollowsRouter = express.Router() serverFollowsRouter.get('/following', + listFollowsValidator, paginationValidator, followingSortValidator, setDefaultSort, @@ -52,6 +54,7 @@ serverFollowsRouter.delete('/following/:host', ) serverFollowsRouter.get('/followers', + listFollowsValidator, paginationValidator, followersSortValidator, setDefaultSort, @@ -92,26 +95,30 @@ export { async function listFollowing (req: express.Request, res: express.Response) { const serverActor = await getServerActor() - const resultList = await ActorFollowModel.listFollowingForApi( - serverActor.id, - req.query.start, - req.query.count, - req.query.sort, - req.query.search - ) + const resultList = await ActorFollowModel.listFollowingForApi({ + id: serverActor.id, + start: req.query.start, + count: req.query.count, + sort: req.query.sort, + search: req.query.search, + actorType: req.query.actorType, + state: req.query.state + }) return res.json(getFormattedObjects(resultList.data, resultList.total)) } async function listFollowers (req: express.Request, res: express.Response) { const serverActor = await getServerActor() - const resultList = await ActorFollowModel.listFollowersForApi( - serverActor.id, - req.query.start, - req.query.count, - req.query.sort, - req.query.search - ) + const resultList = await ActorFollowModel.listFollowersForApi({ + actorId: serverActor.id, + start: req.query.start, + count: req.query.count, + sort: req.query.sort, + search: req.query.search, + actorType: req.query.actorType, + state: req.query.state + }) return res.json(getFormattedObjects(resultList.data, resultList.total)) } @@ -128,7 +135,6 @@ async function followInstance (req: express.Request, res: express.Response) { } JobQueue.Instance.createJob({ type: 'activitypub-follow', payload }) - .catch(err => logger.error('Cannot create follow job for %s.', host, err)) } return res.status(204).end() @@ -146,7 +152,7 @@ async function removeFollowing (req: express.Request, res: express.Response) { await server.save({ transaction: t }) // Async, could be long - removeRedundancyOf(server.id) + removeRedundanciesOfServer(server.id) .catch(err => logger.error('Cannot remove redundancy of %s.', server.host, err)) await follow.destroy({ transaction: t })