From 0365ed8e701abd59e8d21daa06a9aec8604677a2 Mon Sep 17 00:00:00 2001 From: Hao Date: Fri, 21 Oct 2022 16:03:41 +0800 Subject: [PATCH] fix(docker): comfirm modal for removing secrets/networks/configs [EE-4211] (#7882) * fix(ui): comfirm modal for removing secrets/networks/configs [EE-4211] * fix(ui): comfirm modal for removing secrets/networks/configs [EE-4211] * fix(ui): comfirm modal for removing secrets/networks/configs [EE-4211] --- app/docker/views/configs/configsController.js | 7 ++++++- app/docker/views/networks/networksController.js | 7 ++++++- app/docker/views/secrets/secretsController.js | 7 ++++++- 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/app/docker/views/configs/configsController.js b/app/docker/views/configs/configsController.js index 013dbf9f7..4870625e7 100644 --- a/app/docker/views/configs/configsController.js +++ b/app/docker/views/configs/configsController.js @@ -1,4 +1,5 @@ import angular from 'angular'; +import { confirmDeletionAsync } from 'Portainer/services/modal.service/confirm'; class ConfigsController { /* @ngInject */ @@ -31,7 +32,11 @@ class ConfigsController { this.getConfigs(); } - removeAction(selectedItems) { + async removeAction(selectedItems) { + const confirmed = await confirmDeletionAsync('Do you want to remove the selected config(s)?'); + if (!confirmed) { + return null; + } return this.$async(this.removeActionAsync, selectedItems); } diff --git a/app/docker/views/networks/networksController.js b/app/docker/views/networks/networksController.js index 6289f8fb3..43031bc89 100644 --- a/app/docker/views/networks/networksController.js +++ b/app/docker/views/networks/networksController.js @@ -1,6 +1,7 @@ import _ from 'lodash-es'; import DockerNetworkHelper from 'Docker/helpers/networkHelper'; import { isOfflineEndpoint } from '@/portainer/helpers/endpointHelper'; +import { confirmDeletionAsync } from 'Portainer/services/modal.service/confirm'; angular.module('portainer.docker').controller('NetworksController', [ '$q', @@ -12,7 +13,11 @@ angular.module('portainer.docker').controller('NetworksController', [ 'endpoint', 'AgentService', function ($q, $scope, $state, NetworkService, Notifications, HttpRequestHelper, endpoint, AgentService) { - $scope.removeAction = function (selectedItems) { + $scope.removeAction = async function (selectedItems) { + const confirmed = await confirmDeletionAsync('Do you want to remove the selected network(s)?'); + if (!confirmed) { + return null; + } var actionCount = selectedItems.length; angular.forEach(selectedItems, function (network) { HttpRequestHelper.setPortainerAgentTargetHeader(network.NodeName); diff --git a/app/docker/views/secrets/secretsController.js b/app/docker/views/secrets/secretsController.js index 69d22b196..2b14e0e1a 100644 --- a/app/docker/views/secrets/secretsController.js +++ b/app/docker/views/secrets/secretsController.js @@ -1,10 +1,15 @@ +import { confirmDeletionAsync } from 'Portainer/services/modal.service/confirm'; angular.module('portainer.docker').controller('SecretsController', [ '$scope', '$state', 'SecretService', 'Notifications', function ($scope, $state, SecretService, Notifications) { - $scope.removeAction = function (selectedItems) { + $scope.removeAction = async function (selectedItems) { + const confirmed = await confirmDeletionAsync('Do you want to remove the selected secret(s)?'); + if (!confirmed) { + return null; + } var actionCount = selectedItems.length; angular.forEach(selectedItems, function (secret) { SecretService.remove(secret.Id)