X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/162b0b772d94f0f6b12a63ea2778c1cc0c104027..8b021af276a2eb583fe962098b28459764f84b88:/src/social/api/views.py diff --git a/src/social/api/views.py b/src/social/api/views.py index 6cae38ae4..2a57ad3d4 100644 --- a/src/social/api/views.py +++ b/src/social/api/views.py @@ -212,6 +212,32 @@ class ListItemListViewV3(ListCreateAPIView): serializer.save(list=lst) +@never_cache +class ListItemsForBook(ListAPIView): + permission_classes = [IsAuthenticated] + serializer_class = serializers.UserListItemReadSerializer + + def get_queryset(self): + book = get_object_or_404(catalogue.models.Book, slug=self.kwargs['book']) + return models.UserListItem.objects.filter( + list__user=self.request.user, + book=book, + ) + + +class ListItemsView(APIView): + permission_classes = [IsAuthenticated] + + def delete(self, request): + if not isinstance(self.request.data, list): + return Response({"error": "no data"}, status=400) + models.UserListItem.objects.filter( + list__user=self.request.user, + uuid__in=self.request.data + ).delete() + return Response({}) + + @never_cache class ListItemViewV3(RetrieveUpdateDestroyAPIView): permission_classes = [IsAuthenticated]