--- a/pytask/taskapp/views.py Sun Jan 09 00:53:51 2011 +0530
+++ b/pytask/taskapp/views.py Sun Jan 09 08:37:28 2011 +0530
@@ -63,6 +63,10 @@
task = getTask(tid)
user = request.user
+
+ if not user.is_authenticated():
+ return render_to_response("/task/view.html", {"task": task})
+
profile = user.get_profile()
context = {"user": user,
@@ -75,38 +79,39 @@
if task.status == "DL":
return show_msg(user, 'This task no longer exists', '/task/browse/','browse the tasks')
- comments = task.comments.filter(is_deleted=False).order_by('comment_datetime')
- reviewers = task.reviewers.all()
+ task_viewable = True if ( task.status != "UP" ) or profile.rights != "CT"\
+ else False
+ if not task_viewable:
+ return show_msg(user, "You are not authorised to view this task", "/task/browse/", "browse the tasks")
- is_guest = True if not user.is_authenticated() else False
+ reviewers = task.reviewers.all()
is_reviewer = True if user in task.reviewers.all() else False
+ comments = task.comments.filter(is_deleted=False).order_by('comment_datetime')
- context.update({'is_guest':is_guest,
- 'is_reviewer':is_reviewer,
+ context.update({'is_reviewer':is_reviewer,
'comments':comments,
'reviewers':reviewers,
})
claimed_users = task.claimed_users.all()
-
+ selected_users = task.selected_users.all()
-# is_requested_reviewer = True if user.is_authenticated() and user.request_sent_to.filter(is_valid=True,is_replied=False,role="MT",task=task) else False
-# task_viewable = True if ( task.status != "UP" ) or is_reviewer or is_requested_reviewer else False
-# if not task_viewable:
-# return show_msg(user, "You are not authorised to view this task", "/task/browse/", "browse the tasks")
+ is_creator = True if user == task.created_by else False
+ has_claimed = True if user in claimed_users else False
-# context['is_requested_reviewer'] = is_requested_reviewer
-
- context['can_publish'] = True if task.status == "UP" and user == task.created_by else False
- context['can_edit'] = True if task.status == "UP" and is_reviewer else False
+ context['is_selected'] = True if user in selected_users else False
+ context['can_approve'] = True if task.status == "UP" and\
+ profile.rights in ["MG", "DC"]\
+ else False
+ context['can_edit'] = True if is_creator else False
context['can_close'] = True if task.status not in ["UP", "CD", "CM"] and is_reviewer else False
- context['can_delete'] = True if task.status == "UP" and user == task.created_by else False
-
- context['can_mod_reviewers'] = True if task.status in ["UP", "OP", "LO", "WR"] and is_reviewer else False
- context['can_mod_tasks'] = True if task.status in ["UP", "OP", "LO"] and is_reviewer else False
+ context['can_delete'] = True if task.status == "UP" and is_creator else False
context['can_assign_pynts'] = True if task.status in ["OP", "WR"] and is_reviewer else False
- context['task_claimable'] = True if task.status in ["OP", "WR"] and not is_guest else False
+ context['task_claimable'] = True if task.status in ["OP", "WR"] else False
+
+ context['can_comment'] = True if task.status != "UP" or\
+ profile.rights!="CT" else False
# if task.status == "CD":
# context['closing_notification'] = Notification.objects.filter(task=task,role="CD")[0]
@@ -116,20 +121,17 @@
# context['assigned_users'] = task.assigned_users.all()
if request.method == 'POST':
- if not is_guest:
- form = TaskCommentForm(request.POST)
- if form.is_valid():
- data = form.cleaned_data['data']
- new_comment = TaskComment(task=task, data=data,
- uniq_key=make_key(TaskComment),
- commented_by=user, comment_datetime=datetime.now())
- new_comment.save()
- return redirect(task_url)
- else:
- context['form'] = form
- return render_to_response('task/view.html', context)
+ form = TaskCommentForm(request.POST)
+ if form.is_valid():
+ data = form.cleaned_data['data']
+ new_comment = TaskComment(task=task, data=data,
+ uniq_key=make_key(TaskComment),
+ commented_by=user, comment_datetime=datetime.now())
+ new_comment.save()
+ return redirect(task_url)
else:
- return redirect(task_url)
+ context['form'] = form
+ return render_to_response('task/view.html', context)
else:
form = TaskCommentForm()
context['form'] = form