server/python/django2/renkanmanager/api/views.py
changeset 611 f0f07e2b841f
parent 610 b9edc1c1538a
child 613 e00a24b711a0
--- a/server/python/django2/renkanmanager/api/views.py	Tue May 03 14:32:28 2016 +0200
+++ b/server/python/django2/renkanmanager/api/views.py	Tue Jun 07 10:44:41 2016 +0200
@@ -87,7 +87,7 @@
         try:
             renkan = self.get_object(renkan_guid=renkan_guid)
         except Renkan.DoesNotExist:
-            return Response({'detail': 'Renkan project %r does not exist'.format(renkan_guid)}, status=status.HTTP_404_NOT_FOUND)
+            return Response({'detail': 'Renkan project '+renkan_guid+' does not exist'}, status=status.HTTP_404_NOT_FOUND)
         self.check_object_permissions(request, renkan)
         serializer = RenkanSerializer(renkan)
         if {'true': True, 'false': False, "0": False, "1": True}.get(request.GET.get("content_only", "false").lower()):
@@ -98,7 +98,7 @@
         try:
             renkan = self.get_object(renkan_guid=renkan_guid)
         except Renkan.DoesNotExist:
-            return Response({'detail': 'Renkan project %r does not exist'.format(renkan_guid)}, status=status.HTTP_404_NOT_FOUND)
+            return Response({'detail': 'Renkan project '+renkan_guid+' does not exist'}, status=status.HTTP_404_NOT_FOUND)
         logger.debug("RENKAN PUT %r : CHECKING OBJECT PERMISSION", renkan_guid)
         logger.debug("RENKAN PUT: permission? %r", request.user.has_perm("change_renkan", renkan))
         self.check_object_permissions(request, renkan)
@@ -109,9 +109,13 @@
             put_data["title"] = request.data.get("title", "")
         else:
             put_data = request.data
+        if put_data.get("validation_timestamp", None) is None and put_data.get("content", None) is not None:
+            put_data["validation_timestamp"] = json.loads(put_data["content"]).get("updated", "")
         serializer = RenkanSerializer(renkan, data=put_data)
         if serializer.is_valid():
             serializer.save(updator=request.user)
+            if {'true': True, 'false': False, "0": False, "1": True}.get(request.GET.get("content_only", "false").lower()):
+                return Response(json.loads(serializer.data["content"]), status=status.HTTP_200_OK, content_type='application/json')
             return Response(serializer.data, status=status.HTTP_200_OK, content_type='application/json')
         return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)