src/hdalab/views/profile.py
changeset 329 ea6268cf8c83
parent 326 fc8961398609
child 330 5c171e379ea2
--- a/src/hdalab/views/profile.py	Wed Sep 03 17:22:23 2014 +0200
+++ b/src/hdalab/views/profile.py	Fri Sep 05 12:43:52 2014 +0200
@@ -36,6 +36,7 @@
 
 
 import logging
+from django.http.response import Http404
 logger = logging.getLogger(__name__)
 
 
@@ -73,10 +74,8 @@
         rk.save()
         hr = HdalabRenkan()
         hr.renkan = rk
-        from random import randrange
-        hr.state = randrange(4) + 1
+        hr.state = HdalabRenkan.EDITION
         hr.save()
-        
         return redirect("%s?rk_id=%s" % (reverse('renkan_edit'), rk_id))
 
 
@@ -474,6 +473,26 @@
 
 
 
+class HdalabRenkanModerate(View):
+    
+    def get(self, request, rk_id, state):
+        if rk_id!="":
+            try:
+                hr = HdalabRenkan.objects.select_related("renkan", "renkan__owner").get(renkan__rk_id=rk_id)
+            except:
+                raise Http404('Renkan not found')
+            if hr.renkan.owner!=request.user and not request.user.is_staff:
+                return HttpResponseBadRequest("You are not allowed to modify the state this renkan.")
+            hr.state = state
+            hr.save()
+        
+        if "next" in request.GET:
+            return redirect(request.GET["next"])
+            
+        return redirect(reverse('profile_home'))
+
+
+
 # Function copied from django.contrib.auth.views to simplify ajax login
 @sensitive_post_parameters()
 @csrf_protect