Gallery-Archivist/backend/api/creators/views.py

39 lines
1.1 KiB
Python
Raw Normal View History

from rest_framework.generics import ListAPIView, RetrieveAPIView
2025-02-12 13:23:35 +01:00
from rest_framework.response import Response
from rest_framework.exceptions import NotFound
from rest_framework.permissions import IsAuthenticated
from apps.archive.models import CreatorModel
from .serializers import (
CreatorListSerializer,
CreatorDetailsSerializer,
)
class CreatorListView(ListAPIView):
2025-02-12 13:23:35 +01:00
permission_classes = [IsAuthenticated]
serializer_class = CreatorListSerializer
2025-02-12 13:23:35 +01:00
def get_queryset(self):
user = self.request.user.userprofile
2025-02-12 13:23:35 +01:00
if user.show_mature:
return CreatorModel.objects.all()
2025-02-12 13:23:35 +01:00
else:
return CreatorModel.objects.filter(mature=False)
2025-02-12 13:23:35 +01:00
class CreatorDetailsView(RetrieveAPIView):
2025-02-12 13:23:35 +01:00
permission_classes = [IsAuthenticated]
serializer_class = CreatorDetailsSerializer
lookup_field = "creator_id"
2025-02-12 13:23:35 +01:00
def get_queryset(self):
user = self.request.user.userprofile
2025-02-12 13:23:35 +01:00
if user.show_mature:
return CreatorModel.objects.all()
else:
return CreatorModel.objects.filter(mature=False)