From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [IPv6:2a01:7e0:0:424::9]) by lore.proxmox.com (Postfix) with ESMTPS id 8ADB51FF15F for ; Mon, 21 Oct 2024 14:18:41 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 4FC4B337A3; Mon, 21 Oct 2024 14:19:19 +0200 (CEST) From: Timothy Nicholson To: pve-devel@lists.proxmox.com Date: Mon, 21 Oct 2024 14:17:33 +0200 Message-Id: <20241021121733.143909-1-t.nicholson@proxmox.com> X-Mailer: git-send-email 2.39.5 MIME-Version: 1.0 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.001 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment KAM_LAZY_DOMAIN_SECURITY 1 Sending domain does not have any anti-forgery methods RDNS_NONE 0.793 Delivered to internal network by a host with no rDNS SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_NONE 0.001 SPF: sender does not publish an SPF Record Subject: [pve-devel] [PATCH manager] fix #5787: ui: display vm description in confirm dialogs X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Proxmox VE development discussion Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: pve-devel-bounces@lists.proxmox.com Sender: "pve-devel" Signed-off-by: Timothy Nicholson --- This patch adds a new function to the PVE Utils that formats a task confirmation message to display in confirm dialogs, for example when shutting down a VM. As requested by the Bugzilla entry #5787, the message now includes the VM name in addition to the VM ID. www/manager6/Utils.js | 4 ++++ www/manager6/lxc/CmdMenu.js | 4 ++-- www/manager6/lxc/Config.js | 8 +++++--- www/manager6/qemu/CmdMenu.js | 4 ++-- www/manager6/qemu/Config.js | 14 ++++++++------ www/manager6/window/GuestStop.js | 2 +- 6 files changed, 22 insertions(+), 14 deletions(-) diff --git a/www/manager6/Utils.js b/www/manager6/Utils.js index db86fa9a..462eb148 100644 --- a/www/manager6/Utils.js +++ b/www/manager6/Utils.js @@ -1960,6 +1960,10 @@ Ext.define('PVE.Utils', { } return languageCookie || Proxmox.defaultLang || 'en'; }, + + format_task_confirmation_message: function(type, vmid, vmname) { + return `${Proxmox.Utils.format_task_description(type, `${vmid} (${vmname})`)}?`; + }, }, singleton: true, diff --git a/www/manager6/lxc/CmdMenu.js b/www/manager6/lxc/CmdMenu.js index 76b39423..b6d57a6e 100644 --- a/www/manager6/lxc/CmdMenu.js +++ b/www/manager6/lxc/CmdMenu.js @@ -22,7 +22,7 @@ Ext.define('PVE.lxc.CmdMenu', { }); }; let confirmedVMCommand = (cmd, params) => { - let msg = Proxmox.Utils.format_task_description(`vz${cmd}`, info.vmid); + let msg = PVE.Utils.format_task_confirmation_message(`vz${cmd}`, info.vmid, info.name); Ext.Msg.confirm(gettext('Confirm'), msg, btn => { if (btn === 'yes') { vm_command(cmd, params); @@ -108,7 +108,7 @@ Ext.define('PVE.lxc.CmdMenu', { text: gettext('Convert to template'), iconCls: 'fa fa-fw fa-file-o', handler: function() { - let msg = Proxmox.Utils.format_task_description('vztemplate', info.vmid); + let msg = PVE.Utils.format_task_confirmation_message('vztemplate', info.vmid, info.name); Ext.Msg.confirm(gettext('Confirm'), msg, function(btn) { if (btn === 'yes') { Proxmox.Utils.API2Request({ diff --git a/www/manager6/lxc/Config.js b/www/manager6/lxc/Config.js index d0e40fc4..8211dfdd 100644 --- a/www/manager6/lxc/Config.js +++ b/www/manager6/lxc/Config.js @@ -20,6 +20,8 @@ Ext.define('PVE.lxc.Config', { throw "no VM ID specified"; } + var vmname = vm.name; + var template = !!vm.template; var running = !!vm.uptime; @@ -59,7 +61,7 @@ Ext.define('PVE.lxc.Config', { text: gettext('Shutdown'), disabled: !caps.vms['VM.PowerMgmt'] || !running, hidden: template, - confirmMsg: Proxmox.Utils.format_task_description('vzshutdown', vmid), + confirmMsg: PVE.Utils.format_task_confirmation_message('vzshutdown', vmid, vmname), handler: function() { vm_command('shutdown'); }, @@ -67,7 +69,7 @@ Ext.define('PVE.lxc.Config', { items: [{ text: gettext('Reboot'), disabled: !caps.vms['VM.PowerMgmt'], - confirmMsg: Proxmox.Utils.format_task_description('vzreboot', vmid), + confirmMsg: PVE.Utils.format_task_confirmation_message('vzreboot', vmid, vmname), tooltip: Ext.String.format(gettext('Reboot {0}'), 'CT'), handler: function() { vm_command("reboot"); @@ -124,7 +126,7 @@ Ext.define('PVE.lxc.Config', { xtype: 'pveMenuItem', iconCls: 'fa fa-fw fa-file-o', hidden: !caps.vms['VM.Allocate'], - confirmMsg: Proxmox.Utils.format_task_description('vztemplate', vmid), + confirmMsg: PVE.Utils.format_task_confirmation_message('vztemplate', vmid, vmname), handler: function() { Proxmox.Utils.API2Request({ url: base_url + '/template', diff --git a/www/manager6/qemu/CmdMenu.js b/www/manager6/qemu/CmdMenu.js index 834577e7..b621d9df 100644 --- a/www/manager6/qemu/CmdMenu.js +++ b/www/manager6/qemu/CmdMenu.js @@ -23,7 +23,7 @@ Ext.define('PVE.qemu.CmdMenu', { }; let confirmedVMCommand = (cmd, params, confirmTask) => { let task = confirmTask || `qm${cmd}`; - let msg = Proxmox.Utils.format_task_description(task, info.vmid); + let msg = PVE.Utils.format_task_confirmation_message(task, info.vmid, info.name); Ext.Msg.confirm(gettext('Confirm'), msg, btn => { if (btn === 'yes') { vm_command(cmd, params); @@ -136,7 +136,7 @@ Ext.define('PVE.qemu.CmdMenu', { iconCls: 'fa fa-fw fa-file-o', hidden: !caps.vms['VM.Allocate'], handler: function() { - let msg = Proxmox.Utils.format_task_description('qmtemplate', info.vmid); + let msg = PVE.Utils.format_task_confirmation_message('qmtemplate', info.vmid, info.name); Ext.Msg.confirm(gettext('Confirm'), msg, btn => { if (btn === 'yes') { Proxmox.Utils.API2Request({ diff --git a/www/manager6/qemu/Config.js b/www/manager6/qemu/Config.js index f28ee67b..c117778c 100644 --- a/www/manager6/qemu/Config.js +++ b/www/manager6/qemu/Config.js @@ -19,6 +19,8 @@ Ext.define('PVE.qemu.Config', { throw "no VM ID specified"; } + var vmname = vm.name; + var template = !!vm.template; var running = !!vm.uptime; @@ -97,7 +99,7 @@ Ext.define('PVE.qemu.Config', { xtype: 'pveMenuItem', iconCls: 'fa fa-fw fa-file-o', hidden: !caps.vms['VM.Allocate'], - confirmMsg: Proxmox.Utils.format_task_description('qmtemplate', vmid), + confirmMsg: PVE.Utils.format_task_confirmation_message('qmtemplate', vmid, vmname), handler: function() { Proxmox.Utils.API2Request({ url: base_url + '/template', @@ -142,7 +144,7 @@ Ext.define('PVE.qemu.Config', { text: gettext('Shutdown'), disabled: !caps.vms['VM.PowerMgmt'] || !running, hidden: template, - confirmMsg: Proxmox.Utils.format_task_description('qmshutdown', vmid), + confirmMsg: PVE.Utils.format_task_confirmation_message('qmshutdown', vmid, vmname), handler: function() { vm_command('shutdown'); }, @@ -151,7 +153,7 @@ Ext.define('PVE.qemu.Config', { text: gettext('Reboot'), disabled: !caps.vms['VM.PowerMgmt'], tooltip: Ext.String.format(gettext('Shutdown, apply pending changes and reboot {0}'), 'VM'), - confirmMsg: Proxmox.Utils.format_task_description('qmreboot', vmid), + confirmMsg: PVE.Utils.format_task_confirmation_message('qmreboot', vmid, vmname), handler: function() { vm_command("reboot"); }, @@ -159,7 +161,7 @@ Ext.define('PVE.qemu.Config', { }, { text: gettext('Pause'), disabled: !caps.vms['VM.PowerMgmt'], - confirmMsg: Proxmox.Utils.format_task_description('qmpause', vmid), + confirmMsg: PVE.Utils.format_task_confirmation_message('qmpause', vmid, vmname), handler: function() { vm_command("suspend"); }, @@ -167,7 +169,7 @@ Ext.define('PVE.qemu.Config', { }, { text: gettext('Hibernate'), disabled: !caps.vms['VM.PowerMgmt'], - confirmMsg: Proxmox.Utils.format_task_description('qmsuspend', vmid), + confirmMsg: PVE.Utils.format_task_confirmation_message('qmsuspend', vmid, vmname), tooltip: gettext('Suspend to disk'), handler: function() { vm_command("suspend", { todisk: 1 }); @@ -189,7 +191,7 @@ Ext.define('PVE.qemu.Config', { text: gettext('Reset'), disabled: !caps.vms['VM.PowerMgmt'], tooltip: Ext.String.format(gettext('Reset {0} immediately'), 'VM'), - confirmMsg: Proxmox.Utils.format_task_description('qmreset', vmid), + confirmMsg: PVE.Utils.format_task_confirmation_message('qmreset', vmid, vmname), handler: function() { vm_command("reset"); }, diff --git a/www/manager6/window/GuestStop.js b/www/manager6/window/GuestStop.js index fbd45c7a..039ddfcb 100644 --- a/www/manager6/window/GuestStop.js +++ b/www/manager6/window/GuestStop.js @@ -68,7 +68,7 @@ Ext.define('PVE.GuestStop', { let cfg = { title: gettext('Confirm'), icon: Ext.Msg.WARNING, - msg: Proxmox.Utils.format_task_description(me.taskType, me.vm.vmid), + msg: PVE.Utils.format_task_confirmation_message(me.taskType, me.vm.vmid, me.vm.name), buttons: Ext.Msg.YESNO, callback: btn => me.handler(btn), }; -- 2.39.5 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel