Able to assign tasks. Closes #42223443476020

This commit is contained in:
Aaron Gutierrez
2015-07-26 19:55:26 -07:00
parent 1d462dbf33
commit 7ed9f2f4b2
2 changed files with 81 additions and 14 deletions

View File

@@ -151,6 +151,13 @@ class CmdAsana:
thread = Thread(target=runInThread)
thread.start()
def assignTask(self, task_id, user_id):
def runInThread():
self.client.tasks.update(task_id, assignee=user_id)
thread = Thread(target=runInThread)
thread.start()
def addComment(self, task_id, comment):
def runInThread():
@@ -160,6 +167,18 @@ class CmdAsana:
thread = Thread(target=runInThread)
thread.start()
def userTypeAhead(self, text, callback):
def runInThread():
users = self.client.workspaces.typeahead(self.state['workspace_id'],
{
'type': 'user',
'query': text,
'count': 5
})
callback(users)
thread = Thread(target=runInThread)
thread.start()
def replaceBody(self, widget):
old_widget,_ = self.frame.contents.pop()
if old_widget != None:
@@ -271,18 +290,22 @@ class CmdAsana:
'loadproject',
'updatedescription',
'updatetask',
'usertypeahead',
'assigntask',
])
urwid.register_signal(ui.AssigneeTypeAhead, [
'usertypeahead',
'assigntask',
])
urwid.register_signal(ui.CommentEdit, ['comment'])
urwid.register_signal(ui.DescriptionEdit, ['updatedescription'])
urwid.register_signal(ui.TaskNameEdit, 'updatetask')
urwid.register_signal(ui.WorkspaceMenu, 'click')
urwid.register_signal(ui.ProjectList, 'loadproject')
def clearSignals(self, widget):
urwid.disconnect_signal(widget, 'complete', self.completeTask)
urwid.disconnect_signal(widget, 'newtask', self.newTask)
@@ -291,6 +314,7 @@ class CmdAsana:
urwid.disconnect_signal(widget, 'updatedescription',
self.updateDescription)
urwid.disconnect_signal(widget, 'updatetask', self.updateTask)
urwid.disconnect_signal(widget, 'usertypeahead', self.userTypeAhead)
def connectTaskListSignals(self, task_list):
urwid.connect_signal(task_list, 'complete', self.completeTask)
@@ -304,6 +328,8 @@ class CmdAsana:
urwid.connect_signal(task_details, 'updatedescription',
self.updateDescription)
urwid.connect_signal(task_details, 'updatetask', self.updateTask)
urwid.connect_signal(task_details, 'usertypeahead', self.userTypeAhead)
urwid.connect_signal(task_details, 'assigntask', self.assignTask)
def handleInput(self, key):
if key in ('q', 'Q'):