author | anoop |
Wed, 24 Feb 2010 17:11:59 +0530 | |
changeset 80 | 8917b190c4c4 |
parent 78 | c5bcafccc135 |
child 81 | cade14d25a58 |
permissions | -rw-r--r-- |
58 | 1 |
from pytask.taskapp.models import Request |
2 |
from datetime import datetime |
|
3 |
||
71
801cf8fca53a
made change to the request model and corresponding create_request utility.
anoop
parents:
58
diff
changeset
|
4 |
def create_request(to,by,role,task=None,assigned_user=None): |
58 | 5 |
""" |
6 |
creates an unreplied request, based on the passed arguments |
|
7 |
to - a list of users to which the notification is to be sent |
|
8 |
by - sender of request |
|
9 |
role - a two character field which represents the role requested |
|
78
c5bcafccc135
added utilities reply_to_request, mark_notification_read, delete_notification and made change to create_request utility.
anoop
parents:
71
diff
changeset
|
10 |
task - a requesting task (useful for sending admins a request to give Pynts to the user) |
c5bcafccc135
added utilities reply_to_request, mark_notification_read, delete_notification and made change to create_request utility.
anoop
parents:
71
diff
changeset
|
11 |
assigned_user - user to whom the Pynts/Task is assigned to(useful for sending admins a request to give Pynts to the user) |
58 | 12 |
""" |
13 |
req = Request(creation_date=datetime.now()) |
|
14 |
req.by = by |
|
15 |
req.reply_date = datetime(1970,01,01) |
|
16 |
req.save() |
|
17 |
req.to = to |
|
18 |
req.role = role |
|
80 | 19 |
if task: |
71
801cf8fca53a
made change to the request model and corresponding create_request utility.
anoop
parents:
58
diff
changeset
|
20 |
req.task = task |
80 | 21 |
if assigned_user: |
71
801cf8fca53a
made change to the request model and corresponding create_request utility.
anoop
parents:
58
diff
changeset
|
22 |
req.assigned_user = assigned_user |
58 | 23 |
req.save() |
78
c5bcafccc135
added utilities reply_to_request, mark_notification_read, delete_notification and made change to create_request utility.
anoop
parents:
71
diff
changeset
|
24 |
|
c5bcafccc135
added utilities reply_to_request, mark_notification_read, delete_notification and made change to create_request utility.
anoop
parents:
71
diff
changeset
|
25 |
def reply_to_request(request_id, reply): |
c5bcafccc135
added utilities reply_to_request, mark_notification_read, delete_notification and made change to create_request utility.
anoop
parents:
71
diff
changeset
|
26 |
""" |
c5bcafccc135
added utilities reply_to_request, mark_notification_read, delete_notification and made change to create_request utility.
anoop
parents:
71
diff
changeset
|
27 |
makes a request replied with the given reply. |
c5bcafccc135
added utilities reply_to_request, mark_notification_read, delete_notification and made change to create_request utility.
anoop
parents:
71
diff
changeset
|
28 |
arguments: |
c5bcafccc135
added utilities reply_to_request, mark_notification_read, delete_notification and made change to create_request utility.
anoop
parents:
71
diff
changeset
|
29 |
request_id - a number denoting the id of the Request object |
c5bcafccc135
added utilities reply_to_request, mark_notification_read, delete_notification and made change to create_request utility.
anoop
parents:
71
diff
changeset
|
30 |
reply - a boolean value to be given as reply (True/False) |
c5bcafccc135
added utilities reply_to_request, mark_notification_read, delete_notification and made change to create_request utility.
anoop
parents:
71
diff
changeset
|
31 |
""" |
c5bcafccc135
added utilities reply_to_request, mark_notification_read, delete_notification and made change to create_request utility.
anoop
parents:
71
diff
changeset
|
32 |
try: |
c5bcafccc135
added utilities reply_to_request, mark_notification_read, delete_notification and made change to create_request utility.
anoop
parents:
71
diff
changeset
|
33 |
request = Request.objects.get(id = request_id) |
c5bcafccc135
added utilities reply_to_request, mark_notification_read, delete_notification and made change to create_request utility.
anoop
parents:
71
diff
changeset
|
34 |
except Request.DoesNotExist: |
c5bcafccc135
added utilities reply_to_request, mark_notification_read, delete_notification and made change to create_request utility.
anoop
parents:
71
diff
changeset
|
35 |
return False #No such request exist |
80 | 36 |
if not request.replied: |
78
c5bcafccc135
added utilities reply_to_request, mark_notification_read, delete_notification and made change to create_request utility.
anoop
parents:
71
diff
changeset
|
37 |
request.reply = reply |
c5bcafccc135
added utilities reply_to_request, mark_notification_read, delete_notification and made change to create_request utility.
anoop
parents:
71
diff
changeset
|
38 |
request.replied = True |
c5bcafccc135
added utilities reply_to_request, mark_notification_read, delete_notification and made change to create_request utility.
anoop
parents:
71
diff
changeset
|
39 |
request.read = True |
c5bcafccc135
added utilities reply_to_request, mark_notification_read, delete_notification and made change to create_request utility.
anoop
parents:
71
diff
changeset
|
40 |
request.reply_date = datetime.now() |
c5bcafccc135
added utilities reply_to_request, mark_notification_read, delete_notification and made change to create_request utility.
anoop
parents:
71
diff
changeset
|
41 |
request.save() |
c5bcafccc135
added utilities reply_to_request, mark_notification_read, delete_notification and made change to create_request utility.
anoop
parents:
71
diff
changeset
|
42 |
return True #Reply has been added successfully |
c5bcafccc135
added utilities reply_to_request, mark_notification_read, delete_notification and made change to create_request utility.
anoop
parents:
71
diff
changeset
|
43 |
return False #Already replied |