taskapp/events/task.py
changeset 219 f04a1ec7a07f
parent 218 59107ce0a618
equal deleted inserted replaced
218:59107ce0a618 219:f04a1ec7a07f
   104     
   104     
   105     task.reviewers.add(reviewer)
   105     task.reviewers.add(reviewer)
   106     task.save()
   106     task.save()
   107     return task     
   107     return task     
   108 
   108 
   109 def createTask(title,desc,created_by,credits):
   109 def createTask(title,desc,created_by,pynts):
   110     """ creates a bare minimum task with title, description and credits.
   110     """ creates a bare minimum task with title, description and pynts.
   111     the creator of the task will be assigned as a reviewer for the task.
   111     the creator of the task will be assigned as a reviewer for the task.
   112     """
   112     """
   113 
   113 
   114     while True:
   114     while True:
   115         id = get_key()
   115         id = get_key()
   126         task = Task(title=title)
   126         task = Task(title=title)
   127 
   127 
   128     task.id = id 
   128     task.id = id 
   129     task.desc = desc
   129     task.desc = desc
   130     task.created_by = created_by
   130     task.created_by = created_by
   131     task.credits = credits
   131     task.pynts = pynts
   132     task.creation_datetime = datetime.now()
   132     task.creation_datetime = datetime.now()
   133     task.published_datetime = datetime.now()
   133     task.published_datetime = datetime.now()
   134     task.save()
   134     task.save()
   135     return task
   135     return task
   136 
   136 
   163     task.save()
   163     task.save()
   164 
   164 
   165     create_notification("AU", added_user, assigned_by, task=task)
   165     create_notification("AU", added_user, assigned_by, task=task)
   166 
   166 
   167 
   167 
   168 def updateTask(task, title=None, desc=None, credits=None, tags_field=None):
   168 def updateTask(task, title=None, desc=None, pynts=None, tags_field=None):
   169     """ update the property accordingly.
   169     """ update the property accordingly.
   170     while updating title, check for uniqueness of title.
   170     while updating title, check for uniqueness of title.
   171     return None if any error. 
   171     return None if any error. 
   172     """
   172     """
   173     
   173     
   176             task.title = title
   176             task.title = title
   177             task.save()
   177             task.save()
   178         except Task.IntegrityError:
   178         except Task.IntegrityError:
   179             return None
   179             return None
   180     if desc:task.desc = desc
   180     if desc:task.desc = desc
   181     if credits:task.credits = credits
   181     if pynts:task.pynts = pynts
   182     if tags_field:task.tags_field = tags_field
   182     if tags_field:task.tags_field = tags_field
   183     task.save()
   183     task.save()
   184     return task
   184     return task
   185 
   185 
   186 def removeTask(main_task, sub_task):
   186 def removeTask(main_task, sub_task):
   202     rem_user.request_receiving_user.filter(task=main_task,role="PY",is_valid=True,is_replied=False).update(is_valid=False)
   202     rem_user.request_receiving_user.filter(task=main_task,role="PY",is_valid=True,is_replied=False).update(is_valid=False)
   203 
   203 
   204     create_notification("RU", rem_user, removed_by, task=main_task, remarks=reason)
   204     create_notification("RU", rem_user, removed_by, task=main_task, remarks=reason)
   205     ## TODO : create notification to the victim
   205     ## TODO : create notification to the victim
   206 
   206 
   207 def assignCredits(task, given_by, given_to, points):
   207 def assignPynts(task, given_by, given_to, points):
   208     """ make a proper request object.
   208     """ make a proper request object.
   209     """
   209     """
   210     
   210     
   211     create_request(sent_by=given_by, role="PY", task=task, receiving_user=given_to, pynts=points ) 
   211     create_request(sent_by=given_by, role="PY", task=task, receiving_user=given_to, pynts=points ) 
   212 
   212