diff --git a/module/jenkins/config/dtable.php b/module/jenkins/config/dtable.php index 5ae030c3b5..5f0d2078b3 100644 --- a/module/jenkins/config/dtable.php +++ b/module/jenkins/config/dtable.php @@ -34,7 +34,7 @@ $config->jenkins->actionList['edit']['url'] = helper::createLink('jenkins', 'ed $config->jenkins->actionList['delete']['icon'] = 'trash'; $config->jenkins->actionList['delete']['text'] = $lang->jenkins->delete; $config->jenkins->actionList['delete']['hint'] = $lang->jenkins->delete; -$config->jenkins->actionList['delete']['url'] = helper::createLink('jenkins', 'delete',"jenkinsID={id}"); +$config->jenkins->actionList['delete']['url'] = 'javascript:confirmDelete("{id}")'; $config->jenkins->dtable->fieldList['actions']['name'] = 'actions'; $config->jenkins->dtable->fieldList['actions']['title'] = $lang->actions; diff --git a/module/jenkins/control.php b/module/jenkins/control.php index 72c6d753a8..b795ee4361 100644 --- a/module/jenkins/control.php +++ b/module/jenkins/control.php @@ -93,21 +93,30 @@ class jenkins extends control } /** + * 删除一条jenkins数据。 * Delete a jenkins. * * @param int $id * @access public * @return void */ - public function delete($id, $confim = 'no') + public function delete($id) { - if($confim != 'yes') return print(js::confirm($this->lang->jenkins->confirmDelete, inlink('delete', "id=$id&confirm=yes"))); - $jobs = $this->dao->select('*')->from(TABLE_JOB)->where('server')->eq($id)->andWhere('engine')->eq('jenkins')->andWhere('deleted')->eq('0')->fetchAll(); - if($jobs) return print(js::alert($this->lang->jenkins->error->linkedJob)); + if($jobs) + { + $response['result'] = 'fail'; + $response['message'] = $this->lang->jenkins->error->linkedJob; + + return $this->send($response); + } $this->jenkins->delete(TABLE_PIPELINE, $id); - echo js::reload('parent'); + + $response['load'] = true; + $response['result'] = 'success'; + + return $this->send($response); } /** diff --git a/module/jenkins/js/browse.ui.js b/module/jenkins/js/browse.ui.js index 917a56c64f..14412ccdfe 100644 --- a/module/jenkins/js/browse.ui.js +++ b/module/jenkins/js/browse.ui.js @@ -16,4 +16,20 @@ window.renderCell = function(result, {col, row}) } return result; -}; \ No newline at end of file +}; + +/** + * 提示并删除版本。 + * Delete release with tips. + * + * @param int jenkinsID + * @access public + * @return void + */ +window.confirmDelete = function(jenkinsID) +{ + if(window.confirm(confirmDelete)) + { + $.ajaxSubmit({url: $.createLink('jenkins', 'delete', 'jenkinsID=' + jenkinsID)}); + } +} \ No newline at end of file diff --git a/module/jenkins/ui/browse.html.php b/module/jenkins/ui/browse.html.php index 11e15f189d..57fde0dba2 100644 --- a/module/jenkins/ui/browse.html.php +++ b/module/jenkins/ui/browse.html.php @@ -26,6 +26,7 @@ toolbar $canCreate ? item(set($createItem)) : null, ); +jsVar('confirmDelete', $lang->jenkins->confirmDelete); jsVar('orderBy', $orderBy); jsVar('canBrowseProject', common::hasPriv('jenkins', 'browseProject')); jsVar('sortLink', helper::createLink('jenkins', 'browse', "orderBy={orderBy}&recTotal={$pager->recTotal}&recPerPage={$pager->recPerPage}&pageID={$pager->pageID}"));