pytask/taskapp/events/task.py
author nishanth
Mon, 01 Feb 2010 15:11:50 +0530
changeset 19 2cff66e3386a
parent 18 293692eb8f06
permissions -rw-r--r--
mergehg sthg st
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
     1
from datetime import datetime
18
293692eb8f06 added the functionality to assign a task to one of the claimed users.
nishanth
parents: 14
diff changeset
     2
from pytask.taskapp.models import Profile, Task, Comment, Credit, Claim
12
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
     3
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
     4
def publishTask(task):
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
     5
    """ set the task status to open """
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
     6
    
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
     7
    task.status = "OP"
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
     8
    task.save()
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
     9
    return task
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
    10
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
    11
def addMentor(task,mentor):
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
    12
    """ add the mentor to mentors list of the task """
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
    13
    
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
    14
    task.mentors.add(mentor)
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
    15
    task.save()
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
    16
    return task    
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
    17
    
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
    18
def createTask(title,desc,created_by,credits):
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
    19
    """ creates a bare minimum task with title, description and credits.
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
    20
    the creator of the task will be assigned as a mentor for the task.
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
    21
    """
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
    22
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
    23
    try:
14
f2623fb8041a implemented add another mentor functionality to a task.
nishanth
parents: 12
diff changeset
    24
        task = Task.objects.get(title__iexact=title)
12
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
    25
        return None
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
    26
    except Task.DoesNotExist:
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
    27
        task = Task(title=title)
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
    28
    task.desc = desc
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
    29
    task.created_by = created_by
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
    30
    task.credits = credits
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
    31
    task.creation_datetime = datetime.now()
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
    32
    task.save()
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
    33
    return task
c823b42970a4 added events/task.py and templates/error.html
nishanth
parents:
diff changeset
    34
14
f2623fb8041a implemented add another mentor functionality to a task.
nishanth
parents: 12
diff changeset
    35
def addSubTask(main_task, sub_task):
f2623fb8041a implemented add another mentor functionality to a task.
nishanth
parents: 12
diff changeset
    36
    """ add sub_task to subs list of main_task """
f2623fb8041a implemented add another mentor functionality to a task.
nishanth
parents: 12
diff changeset
    37
    
f2623fb8041a implemented add another mentor functionality to a task.
nishanth
parents: 12
diff changeset
    38
    main_task.subs.add(sub_task)
f2623fb8041a implemented add another mentor functionality to a task.
nishanth
parents: 12
diff changeset
    39
    main_task.status = "LO"
f2623fb8041a implemented add another mentor functionality to a task.
nishanth
parents: 12
diff changeset
    40
    main_task.save()
f2623fb8041a implemented add another mentor functionality to a task.
nishanth
parents: 12
diff changeset
    41
    return main_task
18
293692eb8f06 added the functionality to assign a task to one of the claimed users.
nishanth
parents: 14
diff changeset
    42
293692eb8f06 added the functionality to assign a task to one of the claimed users.
nishanth
parents: 14
diff changeset
    43
def addClaim(task, message, user):
293692eb8f06 added the functionality to assign a task to one of the claimed users.
nishanth
parents: 14
diff changeset
    44
    """ add claim data to the database if it does not exist 
293692eb8f06 added the functionality to assign a task to one of the claimed users.
nishanth
parents: 14
diff changeset
    45
    and also update the claimed users field of the task.
293692eb8f06 added the functionality to assign a task to one of the claimed users.
nishanth
parents: 14
diff changeset
    46
    """
293692eb8f06 added the functionality to assign a task to one of the claimed users.
nishanth
parents: 14
diff changeset
    47
    
293692eb8f06 added the functionality to assign a task to one of the claimed users.
nishanth
parents: 14
diff changeset
    48
    task.claimed_users.add(user)
293692eb8f06 added the functionality to assign a task to one of the claimed users.
nishanth
parents: 14
diff changeset
    49
    task.status = "CL"
293692eb8f06 added the functionality to assign a task to one of the claimed users.
nishanth
parents: 14
diff changeset
    50
    task.save()
293692eb8f06 added the functionality to assign a task to one of the claimed users.
nishanth
parents: 14
diff changeset
    51
    claim = Claim()
293692eb8f06 added the functionality to assign a task to one of the claimed users.
nishanth
parents: 14
diff changeset
    52
    claim.message = message
293692eb8f06 added the functionality to assign a task to one of the claimed users.
nishanth
parents: 14
diff changeset
    53
    claim.task = task
293692eb8f06 added the functionality to assign a task to one of the claimed users.
nishanth
parents: 14
diff changeset
    54
    claim.user = user
293692eb8f06 added the functionality to assign a task to one of the claimed users.
nishanth
parents: 14
diff changeset
    55
    claim.creation_datetime = datetime.now()
293692eb8f06 added the functionality to assign a task to one of the claimed users.
nishanth
parents: 14
diff changeset
    56
    claim.save()
293692eb8f06 added the functionality to assign a task to one of the claimed users.
nishanth
parents: 14
diff changeset
    57
    
293692eb8f06 added the functionality to assign a task to one of the claimed users.
nishanth
parents: 14
diff changeset
    58
def assignTask(task, user):
293692eb8f06 added the functionality to assign a task to one of the claimed users.
nishanth
parents: 14
diff changeset
    59
    """ check for the status of task and assign it to the particular user """
293692eb8f06 added the functionality to assign a task to one of the claimed users.
nishanth
parents: 14
diff changeset
    60
    
293692eb8f06 added the functionality to assign a task to one of the claimed users.
nishanth
parents: 14
diff changeset
    61
    task.assigned_users.add(user)
293692eb8f06 added the functionality to assign a task to one of the claimed users.
nishanth
parents: 14
diff changeset
    62
    task.status = "AS"
293692eb8f06 added the functionality to assign a task to one of the claimed users.
nishanth
parents: 14
diff changeset
    63
    task.save()