Fix #858: Broadcast/handle rejected follows

This commit is contained in:
Agate 2020-08-18 20:40:02 +02:00
parent 191f28f79c
commit cd109ddeb6
7 changed files with 120 additions and 13 deletions

View file

@ -34,6 +34,8 @@ def update_follow(follow, approved):
follow.save(update_fields=["approved"])
if approved:
routes.outbox.dispatch({"type": "Accept"}, context={"follow": follow})
else:
routes.outbox.dispatch({"type": "Reject"}, context={"follow": follow})
class LibraryFollowViewSet(
@ -57,7 +59,7 @@ class LibraryFollowViewSet(
def get_queryset(self):
qs = super().get_queryset()
return qs.filter(actor=self.request.user.actor)
return qs.filter(actor=self.request.user.actor).exclude(approved=False)
def perform_create(self, serializer):
follow = serializer.save(actor=self.request.user.actor)