--- a/src/hdalab/views/profile.py Tue Aug 19 18:33:53 2014 +0200
+++ b/src/hdalab/views/profile.py Wed Aug 20 15:36:50 2014 +0200
@@ -13,7 +13,7 @@
from django.contrib.sites.models import get_current_site
from django.core.urlresolvers import reverse
from django.db.models import Q
-from django.http import HttpResponse
+from django.http import HttpResponse, HttpResponseBadRequest
from django.http import HttpResponseRedirect
from django.shortcuts import get_object_or_404, redirect
from django.shortcuts import resolve_url
@@ -230,19 +230,72 @@
response = json.dumps(content)
- if request.user.is_authenticated():
- rk = Renkan()
- rk.rk_id = unicode(uuid.uuid1())
- rk.title = title
- rk.content = response
- rk.owner = request.user
- rk.save()
- hr = HdalabRenkan()
- hr.renkan = rk
- hr.state = HdalabRenkan.EDITION
- hr.save()
+# if request.user.is_authenticated():
+# rk = Renkan()
+# rk.rk_id = unicode(uuid.uuid1())
+# rk.title = title
+# rk.content = response
+# rk.owner = request.user
+# rk.save()
+# hr = HdalabRenkan()
+# hr.renkan = rk
+# hr.state = HdalabRenkan.EDITION
+# hr.save()
return HttpResponse(response, content_type="application/json")
+
+
+ def post(self, request):
+
+ rk_id = request.GET.get("rk_id", "")
+ #data = json.loads(request.body)
+ logger.debug("YEAH !")
+ #logger.debug(data["edges"])
+ #logger.debug(data["nodes"])
+ #logger.debug(request.user.is_authenticated())
+ #logger.debug(request.user.is_anonymous())
+ if rk_id!="":
+ rk = get_object_or_404(Renkan, rk_id=rk_id)
+ if rk.owner!=request.user:
+ return HttpResponseBadRequest("You are not allowed to edit this renkan")
+ rk.content = request.body
+ data = json.loads(request.body)
+ if "title" in data:
+ rk.title = data["title"]
+ rk.save()
+ return HttpResponse("SAVED")
+ else:
+ logger.debug("1")
+ # if rk_id was not a get parameter AND if it is set in json data AND if user is authenticated
+ # Then we can save the renkan
+ data = json.loads(request.body)
+ logger.debug("2")
+ if "id" in data:
+ logger.debug("3")
+ rk_id = data["id"]
+ logger.debug("4")
+ logger.debug(rk_id)
+ logger.debug(Renkan.objects.filter(rk_id=rk_id))
+ logger.debug(Renkan.objects.filter(rk_id=rk_id).count())
+ logger.debug(request.user.is_authenticated())
+ logger.debug(request.user)
+ if rk_id != "" and Renkan.objects.filter(rk_id=rk_id).count()==0 and request.user.is_authenticated():
+ logger.debug("5")
+ rk = Renkan()
+ rk.rk_id = rk_id
+ rk.title = data["title"] if "title" in data else ""
+ rk.content = data
+ rk.owner = request.user
+ rk.save()
+ hr = HdalabRenkan()
+ hr.renkan = rk
+ hr.state = HdalabRenkan.EDITION
+ hr.save()
+ logger.debug("6")
+ return HttpResponse("rk_id=" + rk_id)
+
+
+ return HttpResponse("NOT SAVED")