Merge branch 'stable' into develop

This commit is contained in:
Georg Krause 2022-07-04 17:18:55 +02:00
commit 5c5b35a0ad
No known key found for this signature in database
GPG key ID: 2970D504B2183D22
12 changed files with 1178 additions and 1063 deletions

View file

@ -1,5 +1,5 @@
# -*- coding: utf-8 -*-
__version__ = "1.2.5"
__version__ = "1.2.6"
__version_info__ = tuple(
[
int(num) if num.isdigit() else num

View file

@ -208,7 +208,7 @@ def update_domain_nodeinfo(domain):
domain.service_actor = (
utils.retrieve_ap_object(
service_actor_id,
actor=actors.get_service_actor(),
actor=None,
queryset=models.Actor,
serializer_class=serializers.ActorSerializer,
)

View file

@ -67,7 +67,11 @@ def slugify_username(username):
def retrieve_ap_object(
fid, actor, serializer_class=None, queryset=None, apply_instance_policies=True
fid,
actor,
serializer_class=None,
queryset=None,
apply_instance_policies=True,
):
# we have a duplicate check here because it's less expensive to do those checks
# twice than to trigger a HTTP request

View file

@ -670,17 +670,31 @@ class SubsonicViewSet(viewsets.GenericViewSet):
def create_playlist(self, request, *args, **kwargs):
data = request.GET or request.POST
name = data.get("name", "")
if not name:
createPlaylist = True
playListId = data.get("playlistId", "")
if name and playListId:
return response.Response(
{
"error": {
"code": 10,
"message": "Playlist ID or name must be specified.",
"message": "You can only supply either a playlistId or name, not both.",
}
}
)
playlist = request.user.playlists.create(name=name)
if playListId:
playlist = request.user.playlists.get(pk=playListId)
createPlaylist = False
if not name and not playlist:
return response.Response(
{
"error": {
"code": 10,
"message": "A valid playlist ID or name must be specified.",
}
}
)
if createPlaylist:
playlist = request.user.playlists.create(name=name)
ids = []
for i in data.getlist("songId"):
try: