50 lines
1.6 KiB
Python
50 lines
1.6 KiB
Python
from rest_framework import permissions, viewsets
|
|
from scrobbles.api.serializers import (
|
|
AudioScrobblerTSVImportSerializer,
|
|
KoReaderImportSerializer,
|
|
LastFmImportSerializer,
|
|
ScrobbleSerializer,
|
|
)
|
|
from scrobbles.models import (
|
|
AudioScrobblerTSVImport,
|
|
KoReaderImport,
|
|
Scrobble,
|
|
LastFmImport,
|
|
)
|
|
|
|
|
|
class ScrobbleViewSet(viewsets.ModelViewSet):
|
|
queryset = Scrobble.objects.all().order_by('-timestamp')
|
|
serializer_class = ScrobbleSerializer
|
|
permission_classes = [permissions.IsAuthenticated]
|
|
|
|
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)
|