Added API endpoints to list library followees and followers
This commit is contained in:
parent
3caa03aedf
commit
e82a53da35
4 changed files with 101 additions and 0 deletions
|
|
@ -18,6 +18,7 @@ from funkwhale_api.music.models import TrackFile
|
|||
from . import activity
|
||||
from . import actors
|
||||
from . import authentication
|
||||
from . import filters
|
||||
from . import library
|
||||
from . import models
|
||||
from . import permissions
|
||||
|
|
@ -177,6 +178,40 @@ class LibraryViewSet(viewsets.GenericViewSet):
|
|||
data = library.scan_from_account_name(account)
|
||||
return response.Response(data)
|
||||
|
||||
@list_route(methods=['get'])
|
||||
def following(self, request, *args, **kwargs):
|
||||
library_actor = actors.SYSTEM_ACTORS['library'].get_actor_instance()
|
||||
queryset = models.Follow.objects.filter(
|
||||
actor=library_actor
|
||||
).select_related(
|
||||
'target',
|
||||
'target',
|
||||
).order_by('-creation_date')
|
||||
filterset = filters.FollowFilter(request.GET, queryset=queryset)
|
||||
serializer = serializers.APIFollowSerializer(filterset.qs, many=True)
|
||||
data = {
|
||||
'results': serializer.data,
|
||||
'count': len(filterset.qs),
|
||||
}
|
||||
return response.Response(data)
|
||||
|
||||
@list_route(methods=['get'])
|
||||
def followers(self, request, *args, **kwargs):
|
||||
library_actor = actors.SYSTEM_ACTORS['library'].get_actor_instance()
|
||||
queryset = models.Follow.objects.filter(
|
||||
target=library_actor
|
||||
).select_related(
|
||||
'target',
|
||||
'target',
|
||||
).order_by('-creation_date')
|
||||
filterset = filters.FollowFilter(request.GET, queryset=queryset)
|
||||
serializer = serializers.APIFollowSerializer(filterset.qs, many=True)
|
||||
data = {
|
||||
'results': serializer.data,
|
||||
'count': len(filterset.qs),
|
||||
}
|
||||
return response.Response(data)
|
||||
|
||||
@transaction.atomic
|
||||
def create(self, request, *args, **kwargs):
|
||||
serializer = serializers.APILibraryCreateSerializer(data=request.data)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue