diff -r e7c887d93039 -r bf4ae7d9a517 server/ammicosrv/authentication/views.py --- 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