pytask/taskapp/views.py
changeset 135 014d812e625e
parent 134 563fe356947d
child 136 cdd8026ee60e
equal deleted inserted replaced
134:563fe356947d 135:014d812e625e
    13 from pytask.views import show_msg
    13 from pytask.views import show_msg
    14 
    14 
    15 from pytask.taskapp.models import Task, TaskComment, TaskClaim, TextBook
    15 from pytask.taskapp.models import Task, TaskComment, TaskClaim, TextBook
    16 from pytask.taskapp.forms import CreateTaskForm, EditTaskForm, \
    16 from pytask.taskapp.forms import CreateTaskForm, EditTaskForm, \
    17                                  TaskCommentForm, ClaimTaskForm, \
    17                                  TaskCommentForm, ClaimTaskForm, \
    18                                  ChoiceForm, EditTaskForm, CreateTextbookForm
    18                                  ChoiceForm, EditTaskForm, CreateTextbookForm,\
       
    19                                  EditTextbookForm
    19 from pytask.taskapp.utils import getTask, getTextBook
    20 from pytask.taskapp.utils import getTask, getTextBook
    20 from pytask.profile.utils import get_notification
    21 from pytask.profile.utils import get_notification
    21 
    22 
    22 
    23 
    23 @login_required
    24 @login_required
   268         context.update({"unpub_textbooks": unpub_textbooks})
   269         context.update({"unpub_textbooks": unpub_textbooks})
   269 
   270 
   270     return render_to_response("task/browse_textbooks.html", context)
   271     return render_to_response("task/browse_textbooks.html", context)
   271 
   272 
   272 @login_required
   273 @login_required
       
   274 def edit_textbook(request, tid):
       
   275 
       
   276     user = request.user
       
   277     profile = user.get_profile()
       
   278 
       
   279     textbook = getTextBook(tid)
       
   280     textbook_url = "/task/textbook/view/tid=%s"%textbook.uniq_key
       
   281 
       
   282     can_edit = True if user == textbook.created_by and textbook.status == "UP"\
       
   283                        else False
       
   284 
       
   285     if not can_edit:
       
   286         raise Http404
       
   287 
       
   288     context = {"user": user,
       
   289                "profile": profile,
       
   290                "textbook": textbook,
       
   291               }
       
   292 
       
   293     context.update(csrf(request))
       
   294 
       
   295     if request.method == "POST":
       
   296         form = EditTextbookForm(request.POST, instance=textbook)
       
   297         if form.is_valid():
       
   298             form.save()
       
   299             return redirect(textbook_url)
       
   300         else:
       
   301             context.update({"form": form})
       
   302             return render_to_response("task/edit_textbook.html", context)
       
   303     else:
       
   304         form = EditTextbookForm(instance=textbook)
       
   305         context.update({"form": form})
       
   306         return render_to_response("task/edit_textbook.html", context)
       
   307 
       
   308 @login_required
   273 def claim_task(request, tid):
   309 def claim_task(request, tid):
   274 
   310 
   275     task_url = "/task/view/tid=%s"%tid
   311     task_url = "/task/view/tid=%s"%tid
   276     claim_url = "/task/claim/tid=%s"%tid
   312     claim_url = "/task/claim/tid=%s"%tid
   277     task = getTask(tid)
   313     task = getTask(tid)