pytask/taskapp/views.py
changeset 132 1be4a3c09a47
parent 130 a4fa11b2cb5c
child 134 563fe356947d
--- a/pytask/taskapp/views.py	Sun Jan 09 20:33:08 2011 +0530
+++ b/pytask/taskapp/views.py	Tue Jan 11 00:00:48 2011 +0530
@@ -16,7 +16,7 @@
 from pytask.taskapp.forms import CreateTaskForm, EditTaskForm, \
                                  TaskCommentForm, ClaimTaskForm, \
                                  ChoiceForm, EditTaskForm, CreateTextbookForm
-from pytask.taskapp.utils import getTask
+from pytask.taskapp.utils import getTask, getTextBook
 from pytask.profile.utils import get_notification
 
 
@@ -208,7 +208,7 @@
 
             new_textbook.chapters = form.cleaned_data['chapters']
 
-            textbook_url = "/task/textbook/tid=%s"%new_textbook.uniq_key
+            textbook_url = "/task/textbook/view/tid=%s"%new_textbook.uniq_key
             return redirect(textbook_url)
         else:
             context.update({"form": form})
@@ -218,6 +218,37 @@
         context.update({"form": form})
         return render_to_response("task/create_textbook.html", context)
 
+def view_textbook(request, tid):
+
+    textbook = getTextBook(tid)
+    textbook_url = "/task/textbook/view/tid=%s"%textbook.uniq_key
+
+    user = request.user
+    if not user.is_authenticated():
+        return render_to_response("task/view_textbook.html")
+
+    profile = user.get_profile()
+
+    context = {"user": user,
+               "profile": profile,
+               "textbook": textbook,
+              }
+
+    context.update(csrf(request))
+
+    chapters = Task.objects.filter(status="UP")
+
+    can_edit = True if user == textbook.created_by and textbook.status == "UP"\
+                       else False
+
+    can_approve = True if profile.rights in ["MG", "DC"] and \
+                          textbook.status == "UP" else False
+
+    context.update({"chapters": chapters,
+                    "can_edit": can_edit,
+                    "can_approve": can_approve})
+    return render_to_response("task/view_textbook.html", context)
+
 @login_required
 def claim_task(request, tid):