From 74f5d961e7afcdf55ad4df53153ca791d2251d0c Mon Sep 17 00:00:00 2001 From: zhaoke Date: Tue, 5 Sep 2023 17:56:30 +0800 Subject: [PATCH] * Fix bug #38259. --- module/gitea/control.php | 2 +- module/gitlab/control.php | 2 +- module/gogs/control.php | 2 +- module/instance/config.php | 2 +- module/instance/control.php | 2 +- module/instance/js/view.ui.js | 2 +- module/instance/ui/view.html.php | 5 +++-- module/jenkins/control.php | 2 +- module/sonarqube/control.php | 2 +- module/space/js/browse.ui.js | 2 ++ module/system/js/dashboard.ui.js | 2 ++ 11 files changed, 15 insertions(+), 10 deletions(-) diff --git a/module/gitea/control.php b/module/gitea/control.php index 8bb5d777f9..a3594ed85e 100644 --- a/module/gitea/control.php +++ b/module/gitea/control.php @@ -164,7 +164,7 @@ class gitea extends control $changes = common::createChanges($oldGitea, $gitea); $this->loadModel('action')->logHistory($actionID, $changes); - $response['load'] = true; + $response['load'] = $this->createLink('space', 'browse'); $response['message'] = zget($this->lang->instance->notices, 'uninstallSuccess'); $response['result'] = 'success'; diff --git a/module/gitlab/control.php b/module/gitlab/control.php index a28c1c93ed..941a684eb3 100644 --- a/module/gitlab/control.php +++ b/module/gitlab/control.php @@ -264,7 +264,7 @@ class gitlab extends control $changes = common::createChanges($oldGitLab, $gitLab); $this->loadModel('action')->logHistory($actionID, $changes); - $response['load'] = true; + $response['load'] = $this->createLink('space', 'browse'); $response['result'] = 'success'; return $this->send($response); } diff --git a/module/gogs/control.php b/module/gogs/control.php index 5f170f9303..3eb2ae56ec 100644 --- a/module/gogs/control.php +++ b/module/gogs/control.php @@ -164,7 +164,7 @@ class gogs extends control $changes = common::createChanges($oldGogs, $gogs); $this->loadModel('action')->logHistory($actionID, $changes); - $response['load'] = true; + $response['load'] = $this->createLink('space', 'browse'); $response['result'] = 'success'; return $this->send($response); } diff --git a/module/instance/config.php b/module/instance/config.php index 9bfc5fb556..2c79168cf4 100644 --- a/module/instance/config.php +++ b/module/instance/config.php @@ -39,7 +39,7 @@ $config->instance->actionList['ajaxUninstall']['hint'] = $lang->instance $config->instance->actionList['ajaxUninstall']['text'] = $lang->instance->uninstall; $config->instance->actionList['ajaxUninstall']['className'] = 'ajax-submit'; $config->instance->actionList['ajaxUninstall']['data-confirm'] = $lang->instance->notices['confirmUninstall']; -$config->instance->actionList['ajaxUninstall']['url'] = array('module' => 'instance', 'method' => 'ajaxUninstall', 'params' => 'id={id}'); +$config->instance->actionList['ajaxUninstall']['url'] = array('module' => 'instance', 'method' => 'ajaxUninstall', 'params' => 'id={id}&type={type}'); $config->instance->actionList['visit']['icon'] = 'menu-my'; $config->instance->actionList['visit']['hint'] = $lang->instance->visit; diff --git a/module/instance/control.php b/module/instance/control.php index 7a8914972f..b892612360 100644 --- a/module/instance/control.php +++ b/module/instance/control.php @@ -618,7 +618,7 @@ class instance extends control */ public function ajaxUninstall($instanceID, $type = '') { - if($type == 'external') + if($type !== 'store') { $instance = $this->loadModel('pipeline')->getByID($instanceID); if(!$instance) return $this->send(array('result' => 'success', 'message' => $this->lang->instance->notices['success'], 'load' => $this->createLink('space', 'browse'))); diff --git a/module/instance/js/view.ui.js b/module/instance/js/view.ui.js index e35b3ad6a9..e35529350d 100644 --- a/module/instance/js/view.ui.js +++ b/module/instance/js/view.ui.js @@ -29,7 +29,7 @@ window.afterPageUpdate = function() { setTimeout(function() { - if(reloadTimes > 20) return; + if(reloadTimes > 60 || instanceType != 'store') return; if($('#statusTD').data('reload') === true || $('#memoryRate').data('load') == true) { reloadTimes++; diff --git a/module/instance/ui/view.html.php b/module/instance/ui/view.html.php index 30aa989ba2..a2abe25c8b 100644 --- a/module/instance/ui/view.html.php +++ b/module/instance/ui/view.html.php @@ -13,8 +13,9 @@ declare(strict_types=1); namespace zin; -jsVar('copied', $lang->instance->copied); -jsVar('instanceID', $instance->id); +jsVar('copied', $lang->instance->copied); +jsVar('instanceID', $instance->id); +jsVar('instanceType', $type); $cpuInfo = $this->instance->printCpuUsage($instance, $instanceMetric->cpu, 'array'); $memoryInfo = $this->instance->printMemUsage($instance, $instanceMetric->memory, 'array'); diff --git a/module/jenkins/control.php b/module/jenkins/control.php index 62bf2b7d45..f0b379044e 100644 --- a/module/jenkins/control.php +++ b/module/jenkins/control.php @@ -124,7 +124,7 @@ class jenkins extends control $this->jenkins->delete(TABLE_PIPELINE, $id); - $response['load'] = true; + $response['load'] = $this->createLink('space', 'browse'); $response['result'] = 'success'; return $this->send($response); diff --git a/module/sonarqube/control.php b/module/sonarqube/control.php index 67b5c56d3b..101edea5d3 100644 --- a/module/sonarqube/control.php +++ b/module/sonarqube/control.php @@ -240,7 +240,7 @@ class sonarqube extends control $changes = common::createChanges($oldSonarQube, $sonarQube); $this->action->logHistory($actionID, $changes); - $response['load'] = true; + $response['load'] = $this->createLink('space', 'browse'); $response['result'] = 'success'; return $this->send($response); diff --git a/module/space/js/browse.ui.js b/module/space/js/browse.ui.js index a3d8c61bc6..b45f3fa98a 100644 --- a/module/space/js/browse.ui.js +++ b/module/space/js/browse.ui.js @@ -39,6 +39,7 @@ window.afterPageUpdate = function() { if(timer) return; const postData = new FormData(); + if(idList.length === 0) return; idList.forEach(function(id) { postData.append('idList[]', id) @@ -52,6 +53,7 @@ window.afterPageUpdate = function() onComplete: function(res) { if(res.result != 'success') return; + if(res.data.length == 0) clearInterval(timer); $.each(res.data, function(index, instance) { if(statusMap[instance.id] != instance.status) diff --git a/module/system/js/dashboard.ui.js b/module/system/js/dashboard.ui.js index 2e0242abaf..31f07fec8e 100644 --- a/module/system/js/dashboard.ui.js +++ b/module/system/js/dashboard.ui.js @@ -50,6 +50,7 @@ window.afterPageUpdate = function() { if(timer) return; const postData = new FormData(); + if(instanceIdList.length === 0) return; instanceIdList.forEach(function(id) { postData.append('idList[]', id) @@ -63,6 +64,7 @@ window.afterPageUpdate = function() onComplete: function(res) { if(res.result != 'success') return; + if(res.data.length == 0) clearInterval(timer); $.each(res.data, function(index, instance) { if($("#instance-status-" + instance.id).data('status') != instance.status)