src/hdalab/views/profile.py
changeset 301 3ec8fb1afed8
parent 300 108fd2717177
child 302 106c33871db4
--- a/src/hdalab/views/profile.py	Mon Jul 21 17:44:56 2014 +0200
+++ b/src/hdalab/views/profile.py	Tue Jul 22 17:06:21 2014 +0200
@@ -14,7 +14,7 @@
 from hdalab.models.renkan import HdalabRenkan
 from hdalab.views.ajax import filter_generic
 from renkanmanager.models import Renkan
-from renkanmanager.utils import LineNodePlacer
+from renkanmanager.utils import LineNodePlacer, renkan_copier, renkan_deleter
 from renkanmanager.views import RenkanGetPut
 import json
 import uuid
@@ -35,6 +35,16 @@
         return context
 
 
+class RenkanPublicList(TemplateView):
+    
+    template_name = "renkan_list.html"
+    
+    def get_context_data(self, **kwargs):
+        context = super(RenkanPublicList, self).get_context_data(**kwargs)
+        context['renkan_list'] = HdalabRenkan.objects.select_related("renkan").filter(state=HdalabRenkan.PUBLISHED).order_by("-renkan__modification_date")
+        return context
+
+
 
 class RenkanNew(View):
     
@@ -201,4 +211,27 @@
         return HttpResponse(json.dumps(content), content_type="application/json")
 
 
+
+
+class HdalabRenkanCopy(View):
+    
+    def get(self, request, rk_id):
+        rk = renkan_copier(request.user, rk_id)
+        hr = HdalabRenkan()
+        hr.renkan = rk
+        hr.state = HdalabRenkan.EDITION
+        hr.save()
+        if "next" in request.GET:
+            return redirect(request.GET["next"])
+        return redirect(reverse('profile_home'))
+
+
+
+class HdalabRenkanDelete(View):
+    
+    def get(self, request, rk_id):
+        renkan_deleter(request.user, rk_id)
+        if "next" in request.GET:
+            return redirect(request.GET["next"])
+        return redirect(reverse('profile_home'))
     
\ No newline at end of file