diff options
author | nishanth | 2010-02-26 00:17:54 +0530 |
---|---|---|
committer | nishanth | 2010-02-26 00:17:54 +0530 |
commit | 8c5ecbc4780ca1f0b929cca534a9b63dcba967fd (patch) | |
tree | dbb08a93d52be855ffecf1dc70ab51ea35bf377d /taskapp | |
parent | d7a7222bb20f85cf730e7c7f1f8350ccf43066f6 (diff) | |
download | pytask-8c5ecbc4780ca1f0b929cca534a9b63dcba967fd.tar.gz pytask-8c5ecbc4780ca1f0b929cca534a9b63dcba967fd.tar.bz2 pytask-8c5ecbc4780ca1f0b929cca534a9b63dcba967fd.zip |
now adding mentor for a task happens through request. notifications still pending though
Diffstat (limited to 'taskapp')
-rw-r--r-- | taskapp/events/request.py | 10 | ||||
-rw-r--r-- | taskapp/events/task.py | 6 | ||||
-rw-r--r-- | taskapp/views/task.py | 4 |
3 files changed, 16 insertions, 4 deletions
diff --git a/taskapp/events/request.py b/taskapp/events/request.py index aa38fc8..73ba5f9 100644 --- a/taskapp/events/request.py +++ b/taskapp/events/request.py @@ -1,5 +1,5 @@ from datetime import datetime -from pytask.taskapp.events.task import addCredits +from pytask.taskapp.events.task import addCredits, addMentor def reply_to_request(request_obj, reply, replied_by): """ @@ -24,7 +24,13 @@ def reply_to_request(request_obj, reply, replied_by): print "send a no notificvaton" elif request_obj.role == "MT": ## add him as a mentor to the task - pass + if reply: + addMentor(request_obj.task, request_obj.replied_by) + ## pass on notification of request_obj.sent_by + else: + print "request for mentor rejected" + ## pass on notification to request_obj.sent_by + elif request_obj.role in ["AD", "MG", "DV"]: if reply: pass diff --git a/taskapp/events/task.py b/taskapp/events/task.py index a3ae263..323c8cf 100644 --- a/taskapp/events/task.py +++ b/taskapp/events/task.py @@ -75,6 +75,12 @@ def addDep(main_task, dependency): main_task.save() +def reqMentor(task, mentor, req_by): + """ create a request object with role as MT. + """ + + create_request(sent_by=req_by, role="MT", sent_to=mentor, task=task) + def addMentor(task,mentor): """ add the mentor to mentors list of the task """ diff --git a/taskapp/views/task.py b/taskapp/views/task.py index 37831cc..1dc2b89 100644 --- a/taskapp/views/task.py +++ b/taskapp/views/task.py @@ -5,7 +5,7 @@ from django.shortcuts import render_to_response, redirect from pytask.taskapp.models import User, Task, Comment, Claim, Credit from pytask.taskapp.forms.task import TaskCreateForm, AddMentorForm, AddTaskForm, ChoiceForm, AssignCreditForm, RemoveUserForm -from pytask.taskapp.events.task import createTask, addMentor, publishTask, addSubTask, addDep, addClaim, assignTask, getTask, updateTask, removeTask, removeUser, assignCredits +from pytask.taskapp.events.task import createTask, reqMentor, publishTask, addSubTask, addDep, addClaim, assignTask, getTask, updateTask, removeTask, removeUser, assignCredits from pytask.taskapp.views.user import show_msg ## everywhere if there is no task, django should display 500 message.. but take care of that in sensitive views like add mentor and all @@ -145,7 +145,7 @@ def add_mentor(request, tid): if request.method == "POST": uid = request.POST['mentor'] new_mentor = User.objects.get(id=uid) - addMentor(task, new_mentor) + reqMentor(task, new_mentor, user) return redirect(task_url) else: return render_to_response('task/addmentor.html', {'form':form, 'errors':errors}) |