diff --git a/module/gitlab/control.php b/module/gitlab/control.php index a33c609923..e44af26243 100644 --- a/module/gitlab/control.php +++ b/module/gitlab/control.php @@ -128,6 +128,10 @@ class gitlab extends control public function bindProduct($gitlabID) { + $this->view->projectPairs = $this->gitlab->getProjectPairs($gitlabID); + $this->view->title = $this->lang->gitlab->bindProduct; + $this->display(); + } diff --git a/module/gitlab/lang/zh-cn.php b/module/gitlab/lang/zh-cn.php index bd77ff6bc6..c66aee04a6 100644 --- a/module/gitlab/lang/zh-cn.php +++ b/module/gitlab/lang/zh-cn.php @@ -5,18 +5,22 @@ $lang->gitlab->browse = '浏览gitlab'; $lang->gitlab->create = '添加gitlab'; $lang->gitlab->edit = '编辑gitlab'; $lang->gitlab->bindUser = '绑定用户'; +$lang->gitlab->bindProduct = '关联产品'; $lang->gitlab->delete = '删除'; $lang->gitlab->confirmDelete = '确认删除该gitlab吗?'; $lang->gitlab->gitlabAccount = 'gitlab用户'; $lang->gitlab->zentaoAccount = '禅道用户'; -$lang->gitlab->browseAction = 'gitlab列表'; -$lang->gitlab->deleteAction = '删除gitlab'; +$lang->gitlab->browseAction = 'gitlab列表'; +$lang->gitlab->deleteAction = '删除gitlab'; +$lang->gitlab->gitlabProject = 'gitlab项目'; +$lang->gitlab->zentaoProduct = '禅道产品'; -$lang->gitlab->id = 'ID'; -$lang->gitlab->name = '名称'; -$lang->gitlab->url = '服务地址'; -$lang->gitlab->token = 'Token'; +$lang->gitlab->id = 'ID'; +$lang->gitlab->name = '名称'; +$lang->gitlab->url = '服务地址'; +$lang->gitlab->token = 'Token'; +$lang->gitlab->defaultProject = '默认项目'; $lang->gitlab->lblCreate = '添加gitlab服务器'; $lang->gitlab->desc = '描述'; diff --git a/module/gitlab/model.php b/module/gitlab/model.php index 1da694669f..abda26460f 100644 --- a/module/gitlab/model.php +++ b/module/gitlab/model.php @@ -170,13 +170,13 @@ class gitlabModel extends model /** * Get projects of one gitlab. * - * @param int $id + * @param int $gitlabID * @access public * @return void */ - public function apiGetProjects($id) + public function apiGetProjects($gitlabID) { - $gitlab = $this->getByID($id); + $gitlab = $this->getByID($gitlabID); if(!$gitlab) return array(); $host = rtrim($gitlab->url, '/'); $host .= '/api/v4/projects'; @@ -191,6 +191,26 @@ class gitlabModel extends model return $allResults; } + public function getProjectPairs($gitlabID) + { + $projects = $this->apiGetProjects($gitlabID); + $projectPairs = array(); + foreach($projects as $project) + { + $projectPairs[$project->id] = $project->name_with_namespace; + } + + return $projectPairs; + } + + public funciton getProjectDisplayName($gitlabID, $projectID) + { + return array_key_exists($gitlabID, $projectID) ? $this->gitlab->getProjectPairs($gitlabID)[$projectID]: ""; + } + + + + /** * Get gitlab api base url with access_token * diff --git a/module/gitlab/view/bindproduct.html.php b/module/gitlab/view/bindproduct.html.php deleted file mode 100644 index 9eb34410a2..0000000000 --- a/module/gitlab/view/bindproduct.html.php +++ /dev/null @@ -1,63 +0,0 @@ - - * @package story - * @version $Id$ - * @link http://www.zentao.net - */ -?> - -