# HG changeset patch # User rougeronj # Date 1428066139 -7200 # Node ID a5f9739dcd46fba13cc41323d381cd57bea3dbaa # Parent 5abd0a9eafbc20d314a183127ae265ba6c074609 clean deprecated populateUser diff -r 5abd0a9eafbc -r a5f9739dcd46 server/ammico/urls.py --- a/server/ammico/urls.py Fri Apr 03 15:01:41 2015 +0200 +++ b/server/ammico/urls.py Fri Apr 03 15:02:19 2015 +0200 @@ -1,10 +1,9 @@ from django.conf.urls import patterns, url, include -from ammico.views import populateUser, ListBooks, InfoBook, ListSlides, InfoSlide, BookSlides, SlidesOrder +from ammico.views import ListBooks, InfoBook, ListSlides, InfoSlide, BookSlides, SlidesOrder urlpatterns = patterns('', - url(r'^populateUser$', populateUser, name='populateUser'), url(r'^books$', ListBooks.as_view()), url(r'^books/(?P[0-9]+)$', InfoBook.as_view()), url(r'^books/(?P[0-9]+)/order$', SlidesOrder.as_view()), diff -r 5abd0a9eafbc -r a5f9739dcd46 server/ammico/views.py --- a/server/ammico/views.py Fri Apr 03 15:01:41 2015 +0200 +++ b/server/ammico/views.py Fri Apr 03 15:02:19 2015 +0200 @@ -6,7 +6,7 @@ from django.http import HttpResponse from django.utils.dateparse import parse_datetime import requests -from rest_framework import permissions, status +from rest_framework import status from rest_framework.authentication import TokenAuthentication from rest_framework.permissions import IsAuthenticated from rest_framework.response import Response @@ -20,13 +20,6 @@ #from django.contrib.auth import login, logout User = get_user_model() -def populateUser(request): - usermail = request.GET["email"] - user = User.objects.get(email=usermail) - data = {"user": usermail, "idUser": user.idUser} - populateVisite(user) - return HttpResponse(content=json.dumps(data), content_type='application/json') - def populateVisite(user): # send request with usermail to get the visites of this user and add it to the database #r = requests.get('http://fui-ammico.jamespot.pro/api/api.php?&k=6c8bfcea247e8a5841288269887d88f0&d=2016-01-31&m=EXT-IRI&v=2.0&f=get&o=article&idArticle=169') @@ -85,16 +78,34 @@ books = Book.objects.all() serializer = BookSerializer(books, many=True) return Response(serializer.data) + + def post(self, request): + """ + Add a Book + """ + print (request.user) + DEFAULTS = { + "user":request.user.id, + } + request.data.update(DEFAULTS) + serializer = BookSerializer(data=request.data) + if serializer.is_valid(): + serializer.save() + return Response(serializer.data, status=status.HTTP_201_CREATED) + return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) class InfoBook(APIView): """ - View to get book informations. + View relative to a book """ authentication_classes = (TokenAuthentication,) permission_classes = (IsAuthenticated,) def get(self, request, idBook): + """ + Get information from a book + """ try: book = Book.objects.get(id=idBook) except Book.DoesNotExist: @@ -104,15 +115,17 @@ return Response(serializer.data) def delete(self, request, idBook): + """ + delete a book + """ book = Book.objects.get(id = idBook) book.delete() return Response(status=status.HTTP_204_NO_CONTENT) class BookSlides(APIView): """ - View to get book informations. + Get the slides from a book """ - authentication_classes = (TokenAuthentication,) permission_classes = (IsAuthenticated,) @@ -128,13 +141,16 @@ class SlidesOrder(APIView): """ - Get/Set Slides order + Manage Slides order """ authentication_classes = (TokenAuthentication,) permission_classes = (IsAuthenticated,) def get(self, request, idBook): + """ + Get slides order + """ try: book = Book.objects.get(id=idBook) except Book.DoesNotExist: @@ -144,6 +160,9 @@ return Response(response) def post(self, request, idBook): + """ + Set Slides order + """ try: book = Book.objects.get(id=idBook) except Book.DoesNotExist: @@ -154,7 +173,7 @@ class ListSlides(APIView): """ - Views to list all books. + Views to list all slides. """ authentication_classes = (TokenAuthentication,) @@ -169,6 +188,9 @@ return Response(serializer.data) def post(self, request): + """ + Add a slide + """ serializer = SlideSerializer(data=request.data) if serializer.is_valid(): serializer.save() @@ -177,13 +199,16 @@ class InfoSlide(APIView): """ - View to get book informations. + View to get slide detailed informations. """ authentication_classes = (TokenAuthentication,) permission_classes = (IsAuthenticated,) def get(self, request, idSlide): + """ + Get information from a slide + """ try: slide = Slide.objects.get(id=idSlide) except Slide.DoesNotExist: @@ -193,9 +218,12 @@ return Response(serializer.data) def post(self, request, idSlide): + """ + Update slide information + """ try: slide = Slide.objects.get(id=idSlide) - except Book.DoesNotExist: + except Slide.DoesNotExist: return HttpResponse(status=404) serializer = SlideSerializer(slide, data=request.data) if serializer.is_valid(): @@ -204,9 +232,12 @@ return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) def delete(self, request, idSlide): + """ + Delete a slide + """ try: slide = Slide.objects.get(id = idSlide) - except Book.DoesNotExist: + except Slide.DoesNotExist: return HttpResponse(status=404) slide.delete()