[pve-devel] [PATCH manager v2] ui: improve user experience for vm/container transfer between pools
Philipp Hufnagl
p.hufnagl at proxmox.com
Fri Sep 8 15:00:10 CEST 2023
Please dont merge. It appers i made an error at testing
On 9/8/23 13:56, Philipp Hufnagl wrote:
> After the implementation of fix #474, it has been suggested that
> instead of requiring the user to click a checkbox allowing migration,
> it should be allowed automatically and and a warning should be displayed
>
> Further it has been discussed to rename the feature from "transfer" to
> "migrate". However and API change would break already implemented usage
> and so it has been decided to call it (for now) transfer everywhere to
>
> Signed-off-by: Philipp Hufnagl <p.hufnagl at proxmox.com>
>
> modified: www/manager6/grid/PoolMembers.js
> ---
> www/manager6/grid/PoolMembers.js | 26 +++++++++++++++++++-------
> 1 file changed, 19 insertions(+), 7 deletions(-)
>
> diff --git a/www/manager6/grid/PoolMembers.js b/www/manager6/grid/PoolMembers.js
> index 224daca3..607042e8 100644
> --- a/www/manager6/grid/PoolMembers.js
> +++ b/www/manager6/grid/PoolMembers.js
> @@ -4,7 +4,11 @@ Ext.define('PVE.pool.AddVM', {
> height: 420,
> isAdd: true,
> isCreate: true,
> + extraRequestParams: {
> + transfer: 1,
> + }
> initComponent: function() {
> +
> var me = this;
>
> if (!me.pool) {
> @@ -35,6 +39,13 @@ Ext.define('PVE.pool.AddVM', {
> ],
> });
>
> + let transferWarning = Ext.create('Ext.form.field.Display', {
> + userCls: 'pmx-hint',
> + value: gettext('Virtual guests are removed from current pools'),
> + hidden: true,
> + });
> +
> +
> var vmGrid = Ext.create('widget.grid', {
> store: vmStore,
> border: true,
> @@ -46,9 +57,15 @@ Ext.define('PVE.pool.AddVM', {
> listeners: {
> selectionchange: function(model, selected, opts) {
> var selectedVms = [];
> + var isTransfer = false;
> selected.forEach(function(vm) {
> selectedVms.push(vm.data.vmid);
> + if (vm.data.pool?.length) {
> + isTransfer = true;
> + }
> });
> + transfer.setValue(isTransfer);
> + transferWarning.setHidden(!isTransfer);
> vmsField.setValue(selectedVms);
> },
> },
> @@ -90,15 +107,10 @@ Ext.define('PVE.pool.AddVM', {
> ],
> });
>
> - let transfer = Ext.create('Ext.form.field.Checkbox', {
> - name: 'transfer',
> - boxLabel: gettext('Allow Transfer'),
> - inputValue: 1,
> - value: 0,
> - });
> +
> Ext.apply(me, {
> subject: gettext('Virtual Machine'),
> - items: [vmsField, vmGrid, transfer],
> + items: [vmsField, vmGrid, transferWarning, transfer],
> });
>
> me.callParent();
More information about the pve-devel
mailing list