Resolve Radio playing fails when unauthenticated (#2319)

This commit is contained in:
petitminion 2024-07-04 11:19:22 +00:00
parent 2c2afe0b8f
commit 40935ec5ce
2 changed files with 6 additions and 1 deletions

View File

@ -1,5 +1,6 @@
import pickle import pickle
from django.contrib.auth.models import AnonymousUser
from django.core.cache import cache from django.core.cache import cache
from django.db.models import Q from django.db.models import Q
from drf_spectacular.utils import extend_schema from drf_spectacular.utils import extend_schema
@ -136,9 +137,12 @@ class V1_RadioSessionTrackViewSet(mixins.CreateModelMixin, viewsets.GenericViewS
session = serializer.validated_data["session"] session = serializer.validated_data["session"]
if not request.user.is_authenticated and not request.session.session_key: if not request.user.is_authenticated and not request.session.session_key:
self.request.session.create() self.request.session.create()
if not request.user == session.user or ( if (
not request.session.session_key == session.session_key not request.session.session_key == session.session_key
and not session.session_key and not session.session_key
) or not (
(isinstance(request.user, AnonymousUser) and session.user is None)
or request.user == session.user
): ):
return Response(status=status.HTTP_403_FORBIDDEN) return Response(status=status.HTTP_403_FORBIDDEN)

View File

@ -0,0 +1 @@
Resolve Radio playing fails when unauthenticated (#2319)