|
|
|
|
@ -18,6 +18,8 @@ from django.core.exceptions import ObjectDoesNotExist |
|
|
|
|
from .permissions import IsClubOwner |
|
|
|
|
from .utils import is_valid_email |
|
|
|
|
|
|
|
|
|
import tournaments.models |
|
|
|
|
|
|
|
|
|
class CustomAuthToken(APIView): |
|
|
|
|
permission_classes = [] |
|
|
|
|
|
|
|
|
|
@ -65,6 +67,25 @@ class Logout(APIView): |
|
|
|
|
|
|
|
|
|
return Response(status=status.HTTP_200_OK) |
|
|
|
|
|
|
|
|
|
class UserCanPayView(APIView): |
|
|
|
|
permission_classes = (IsAuthenticated,) |
|
|
|
|
|
|
|
|
|
def post(self, request, *args, **kwargs): |
|
|
|
|
|
|
|
|
|
user = self.request.user |
|
|
|
|
if user.is_anonymous: |
|
|
|
|
return Response({'error': 'Vous n\'êtes pas authentifié'}, status=status.HTTP_401_UNAUTHORIZED) |
|
|
|
|
|
|
|
|
|
club_id = request.data.get('club') |
|
|
|
|
if club_id is None: |
|
|
|
|
return Response({'error': 'Aucun club n\'est renseigné'}, status=status.HTTP_401_UNAUTHORIZED) |
|
|
|
|
|
|
|
|
|
for club in user.authorized_clubs.all(): |
|
|
|
|
if club.id == club_id: |
|
|
|
|
return Response({'payment': TournamentPayment.UNLIMITED}, status=status.HTTP_200_OK) |
|
|
|
|
|
|
|
|
|
return Response(status=status.HTTP_401_UNAUTHORIZED) # request is fine but no payment returned |
|
|
|
|
|
|
|
|
|
@api_view(['GET']) |
|
|
|
|
def user_by_token(request): |
|
|
|
|
serializer = UserSerializer(request.user) |
|
|
|
|
|