from logging import getLogger from rest_framework import permissions, viewsets from scrobbles.api.serializers import ( AudioScrobblerTSVImportSerializer, KoReaderImportSerializer, LastFmImportSerializer, ScrobbleSerializer, ) from scrobbles.models import ( AudioScrobblerTSVImport, KoReaderImport, Scrobble, LastFmImport, ) logger = getLogger(__name__) class ScrobbleViewSet(viewsets.ModelViewSet): queryset = Scrobble.objects.all().order_by("-timestamp") serializer_class = ScrobbleSerializer permission_classes = [permissions.IsAuthenticated] lookup_field = "uuid" def get_queryset(self): return super().get_queryset().filter(user=self.request.user) class KoReaderImportViewSet(viewsets.ModelViewSet): queryset = KoReaderImport.objects.all().order_by("-created") serializer_class = KoReaderImportSerializer permission_classes = [permissions.IsAuthenticated] def get_queryset(self): return super().get_queryset().filter(user=self.request.user) class AudioScrobblerTSVImportViewSet(viewsets.ModelViewSet): queryset = AudioScrobblerTSVImport.objects.all().order_by("-created") serializer_class = AudioScrobblerTSVImportSerializer permission_classes = [permissions.IsAuthenticated] def get_queryset(self): return super().get_queryset().filter(user=self.request.user) class LastFmImportViewSet(viewsets.ModelViewSet): queryset = LastFmImport.objects.all().order_by("-created") serializer_class = LastFmImportSerializer permission_classes = [permissions.IsAuthenticated] def get_queryset(self): return super().get_queryset().filter(user=self.request.user)