Expose SubTask Time Tracking though the API

Also allow users to create Subtasks and Log Time for Subtasks through the User API

Rebased to new API code
This commit is contained in:
Nikolaos Georgakis 2016-06-07 17:48:03 +03:00
parent 5e7a812933
commit 27f947412f
3 changed files with 41 additions and 0 deletions

View File

@ -32,13 +32,20 @@ class AuthenticationApiMiddleware extends Base implements MiddlewareInterface
'getDefaultTaskColors',
'getColorList',
'getProjectById',
'getSubTask',
'getTask',
'getTaskByReference',
'getTimeSpent',
'getAllTasks',
'getAllSubTasks',
'hasTimer',
'logStartTime',
'logEndTime',
'openTask',
'closeTask',
'moveTaskPosition',
'createTask',
'createSubtask',
'updateTask',
'getBoard',
'getProjectActivity',

View File

@ -0,0 +1,32 @@
<?php
namespace Kanboard\Api;
/**
* Subtask Time Tracking API controller
*
* @package api
* @author Nikolaos Georgakis
*/
class SubtaskTimeTracking extends \Kanboard\Core\Base
{
public function hasTimer($subtask_id,$user_id)
{
return $this->subtaskTimeTracking->hasTimer($subtask_id,$user_id);
}
public function logStartTime($subtask_id,$user_id)
{
return $this->subtaskTimeTracking->logStartTime($subtask_id,$user_id);
}
public function logEndTime($subtask_id,$user_id)
{
return $this->subtaskTimeTracking->logEndTime($subtask_id,$user_id);
}
public function getTimeSpent($subtask_id,$user_id)
{
return $this->subtaskTimeTracking->getTimeSpent($subtask_id,$user_id);
}
}

View File

@ -18,6 +18,7 @@ use Kanboard\Api\Middleware\AuthenticationApiMiddleware;
use Kanboard\Api\ProjectApi;
use Kanboard\Api\ProjectPermissionApi;
use Kanboard\Api\SubtaskApi;
use Kanboard\Api\SubtaskTimeTracking;
use Kanboard\Api\SwimlaneApi;
use Kanboard\Api\TaskApi;
use Kanboard\Api\TaskLinkApi;
@ -60,6 +61,7 @@ class ApiProvider implements ServiceProviderInterface
->withObject(new ProjectApi($container))
->withObject(new ProjectPermissionApi($container))
->withObject(new SubtaskApi($container))
->withObject(new SubtaskTimeTracking($container))
->withObject(new SwimlaneApi($container))
->withObject(new TaskApi($container))
->withObject(new TaskLinkApi($container))