first draft

clubs
Laurent 1 year ago
parent eb7ea048c5
commit 7185e62e9d
  1. 3
      api/urls.py
  2. 21
      api/views.py

@ -35,4 +35,7 @@ urlpatterns = [
# forgotten password
path('dj-rest-auth/', include('dj_rest_auth.urls')),
# business
path('can-pay-tournament/', views.UserCanPayView.as_view()),
]

@ -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)

Loading…
Cancel
Save