--- a/server/ammicosrv/authentication/views.py Wed Jun 10 15:15:41 2015 +0200
+++ b/server/ammicosrv/authentication/views.py Wed Jun 10 15:19:07 2015 +0200
@@ -1,6 +1,7 @@
import json
+from django.conf import settings
from django.contrib.auth import get_user_model
import requests
from rest_framework import serializers, status, permissions, parsers, renderers
@@ -9,14 +10,11 @@
from rest_framework.views import APIView
from ammicosrv.ammico.views import populateVisit
-from django.conf import settings
+from ammicosrv.authentication.serializers import AuthTokenSerializer, \
+ UserSerializer
#from ammico.views import populateVisit
-class UserSerializer(serializers.ModelSerializer):
- class Meta:
- model = get_user_model()
-
class User(APIView):
"""
get list user or add user
@@ -39,7 +37,7 @@
r = requests.get(settings.URL_JAMESPOT, params=params)
infoUser = json.loads(r.content.decode('utf-8'))
if ('idUser' in infoUser['VAL']):
- user_data.update({"idUser":infoUser['VAL']['idUser']})
+ user_data.update({"id_user":infoUser['VAL']['idUser']})
user = get_user_model().objects.create_user(
**user_data
)
@@ -54,8 +52,11 @@
renderer_classes = (renderers.JSONRenderer,)
def post(self, request):
- user = get_user_model().objects.get(email = request.data['email'], password = request.data['password'])
- if (user.idUser and 'idExpo' in request.GET):
- populateVisit(user, request.GET['idExpo']);
- token, _ = Token.objects.get_or_create(user=user)
- return Response({'token': token.key})
\ No newline at end of file
+ serializer = AuthTokenSerializer(data=request.data)
+ if serializer.is_valid():
+ user = serializer.validated_data['user']
+ if (user.id_user and 'idExpo' in request.GET):
+ populateVisit(user, request.GET['idExpo'])
+ token, _ = Token.objects.get_or_create(user=user)
+ return Response({'token': token.key})
+ return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
\ No newline at end of file