diff --git a/api/v1/entries/repos.php b/api/v1/entries/repos.php new file mode 100644 index 0000000000..e1631d4a57 --- /dev/null +++ b/api/v1/entries/repos.php @@ -0,0 +1,41 @@ + + * @package entries + * @version 1 + * @link http://www.zentao.net + */ +class reposEntry extends entry +{ + /** + * GET method. + * + * @param int $productID + * @access public + * @return void + */ + public function get() + { + $control = $this->loadController('repo', 'maintain'); + $control->maintain(0, $this->param('order', 'id_desc'), 0, $this->param('limit', 100), $this->param('page', 1)); + + /* Response */ + $data = $this->getData(); + if(isset($data->status) and $data->status == 'success') + { + $result = array(); + $pager = $data->data->pager; + $repos = $data->data->repoList; + foreach($repos as $repo) $result[] = $this->format($repo, 'deleted:bool,lastSync:datetime,synced:bool'); + + return $this->send(200, array('page' => $pager->pageID, 'total' => $pager->recTotal, 'limit' => $pager->recPerPage, 'releases' => $result)); + } + + if(isset($data->status) and $data->status == 'fail') return $this->sendError(zget($data, 'code', 400), $data->message); + return $this->sendError(400, 'error'); + } +} diff --git a/config/routes.php b/config/routes.php index 2b5be5154b..448bf1141c 100644 --- a/config/routes.php +++ b/config/routes.php @@ -116,6 +116,8 @@ $routes['/doclibs/:id'] = 'docs'; $routes['/docs'] = 'docs'; $routes['/docs/:id'] = 'doc'; +$routes['/repos'] = 'repos'; + $routes['/reports'] = 'reports'; $routes['/z/folders'] = 'zfolders';