From 5b9c965d5aa747f29b081289f930ee215fdc23c8 Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Mon, 8 Apr 2019 14:04:57 +0200 Subject: Add ability to forbid followers --- server/middlewares/validators/follows.ts | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'server/middlewares') diff --git a/server/middlewares/validators/follows.ts b/server/middlewares/validators/follows.ts index ef4151efe..38df39fda 100644 --- a/server/middlewares/validators/follows.ts +++ b/server/middlewares/validators/follows.ts @@ -9,7 +9,6 @@ import { ActorFollowModel } from '../../models/activitypub/actor-follow' import { areValidationErrors } from './utils' import { ActorModel } from '../../models/activitypub/actor' import { loadActorUrlOrGetFromWebfinger } from '../../helpers/webfinger' -import { getOrCreateActorAndServerAndModel } from '../../lib/activitypub' import { isValidActorHandle } from '../../helpers/custom-validators/activitypub/actor' const followValidator = [ @@ -66,12 +65,16 @@ const removeFollowerValidator = [ if (areValidationErrors(req, res)) return - const serverActor = await getServerActor() - - const actorUrl = await loadActorUrlOrGetFromWebfinger(req.params.nameWithHost) - const actor = await ActorModel.loadByUrl(actorUrl) + let follow: ActorFollowModel + try { + const actorUrl = await loadActorUrlOrGetFromWebfinger(req.params.nameWithHost) + const actor = await ActorModel.loadByUrl(actorUrl) - const follow = await ActorFollowModel.loadByActorAndTarget(actor.id, serverActor.id) + const serverActor = await getServerActor() + follow = await ActorFollowModel.loadByActorAndTarget(actor.id, serverActor.id) + } catch (err) { + logger.warn('Cannot get actor from handle.', { handle: req.params.nameWithHost, err }) + } if (!follow) { return res -- cgit v1.2.3