remove weirdness
authorRadek Czajka <rczajka@rczajka.pl>
Fri, 28 Mar 2025 15:04:14 +0000 (16:04 +0100)
committerRadek Czajka <rczajka@rczajka.pl>
Fri, 28 Mar 2025 15:04:14 +0000 (16:04 +0100)
src/social/api/urls2.py
src/social/api/views.py

index 822bea3..790e8e5 100644 (file)
@@ -8,7 +8,7 @@ from . import views
 
 urlpatterns = [
     path('like/<slug:slug>/',
-        piwik_track_view(views.LikeView.as_view()),
+        piwik_track_view(views.LikeView2.as_view()),
         name='social_api_like'),
     path('likes/', views.LikesView.as_view()),
 ]
index 2c81286..d34503d 100644 (file)
@@ -33,6 +33,25 @@ class LikeView(APIView):
         return Response({})
 
 
+@vary_on_auth
+class LikeView2(APIView):
+    permission_classes = [IsAuthenticated]
+
+    def get(self, request, slug):
+        book = get_object_or_404(Book, slug=slug)
+        return Response({"likes": likes(request.user, book)})
+
+    def put(self, request, slug):
+        book = get_object_or_404(Book, slug=slug)
+        book.like(request.user)
+        return Response({"likes": likes(request.user, book)})
+
+    def delete(self, request, slug):
+        book = get_object_or_404(Book, slug=slug)
+        book.unlike(request.user)
+        return Response({"likes": likes(request.user, book)})
+
+
 @vary_on_auth
 class LikesView(APIView):
     permission_classes = [IsAuthenticated]