--- a/pytask/taskapp/views.py Tue Jan 11 00:23:47 2011 +0530
+++ b/pytask/taskapp/views.py Tue Jan 11 00:34:23 2011 +0530
@@ -15,7 +15,8 @@
from pytask.taskapp.models import Task, TaskComment, TaskClaim, TextBook
from pytask.taskapp.forms import CreateTaskForm, EditTaskForm, \
TaskCommentForm, ClaimTaskForm, \
- ChoiceForm, EditTaskForm, CreateTextbookForm
+ ChoiceForm, EditTaskForm, CreateTextbookForm,\
+ EditTextbookForm
from pytask.taskapp.utils import getTask, getTextBook
from pytask.profile.utils import get_notification
@@ -270,6 +271,41 @@
return render_to_response("task/browse_textbooks.html", context)
@login_required
+def edit_textbook(request, tid):
+
+ user = request.user
+ profile = user.get_profile()
+
+ textbook = getTextBook(tid)
+ textbook_url = "/task/textbook/view/tid=%s"%textbook.uniq_key
+
+ can_edit = True if user == textbook.created_by and textbook.status == "UP"\
+ else False
+
+ if not can_edit:
+ raise Http404
+
+ context = {"user": user,
+ "profile": profile,
+ "textbook": textbook,
+ }
+
+ context.update(csrf(request))
+
+ if request.method == "POST":
+ form = EditTextbookForm(request.POST, instance=textbook)
+ if form.is_valid():
+ form.save()
+ return redirect(textbook_url)
+ else:
+ context.update({"form": form})
+ return render_to_response("task/edit_textbook.html", context)
+ else:
+ form = EditTextbookForm(instance=textbook)
+ context.update({"form": form})
+ return render_to_response("task/edit_textbook.html", context)
+
+@login_required
def claim_task(request, tid):
task_url = "/task/view/tid=%s"%tid