X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Fcontrollers%2Fapi%2Fusers%2Fmy-subscriptions.ts;h=6e2aa371108a9b97b11db69f49b29b0fefb4f2a0;hb=85c20aaeb90ef0e0f44c377e62c323fde275cdde;hp=fb1f6863513441b862a5e1bac1f2a2ad0d8b61a2;hpb=80badf493afca026bc542260f353210e605a1715;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/controllers/api/users/my-subscriptions.ts b/server/controllers/api/users/my-subscriptions.ts index fb1f68635..6e2aa3711 100644 --- a/server/controllers/api/users/my-subscriptions.ts +++ b/server/controllers/api/users/my-subscriptions.ts @@ -30,6 +30,7 @@ import { } from '../../../middlewares/validators' import { ActorFollowModel } from '../../../models/actor/actor-follow' import { VideoModel } from '../../../models/video/video' +import { Hooks } from '@server/lib/plugins/hooks' const mySubscriptionsRouter = express.Router() @@ -98,7 +99,7 @@ async function areSubscriptionsExist (req: express.Request, res: express.Respons const obj = results.find(r => { const server = r.ActorFollowing.Server - return r.ActorFollowing.preferredUsername === sanitizedHandle.name && + return r.ActorFollowing.preferredUsername.toLowerCase() === sanitizedHandle.name.toLowerCase() && ( (!server && !sanitizedHandle.host) || (server.host === sanitizedHandle.host) @@ -122,7 +123,7 @@ function addUserSubscription (req: express.Request, res: express.Response) { followerActorId: user.Account.Actor.id } - JobQueue.Instance.createJob({ type: 'activitypub-follow', payload }) + JobQueue.Instance.createJobAsync({ type: 'activitypub-follow', payload }) return res.status(HttpStatusCode.NO_CONTENT_204).end() } @@ -138,7 +139,9 @@ async function deleteUserSubscription (req: express.Request, res: express.Respon const subscription = res.locals.subscription await sequelizeTypescript.transaction(async t => { - if (subscription.state === 'accepted') await sendUndoFollow(subscription, t) + if (subscription.state === 'accepted') { + sendUndoFollow(subscription, t) + } return subscription.destroy({ transaction: t }) }) @@ -168,7 +171,7 @@ async function getUserSubscriptionVideos (req: express.Request, res: express.Res const countVideos = getCountVideos(req) const query = pickCommonVideoQuery(req.query) - const resultList = await VideoModel.listForApi({ + const apiOptions = await Hooks.wrapObject({ ...query, displayOnlyForFollower: { @@ -178,7 +181,13 @@ async function getUserSubscriptionVideos (req: express.Request, res: express.Res nsfw: buildNSFWFilter(res, query.nsfw), user, countVideos - }) + }, 'filter:api.user.me.subscription-videos.list.params') + + const resultList = await Hooks.wrapPromiseFun( + VideoModel.listForApi, + apiOptions, + 'filter:api.user.me.subscription-videos.list.result' + ) return res.json(getFormattedObjects(resultList.data, resultList.total, guessAdditionalAttributesFromQuery(query))) }