[pve-devel] [PATCH v3 manager 2/2] fix 3850: ui: storage: using PreallocationSelector for file based storage types

Fabian Ebner f.ebner at proxmox.com
Tue Oct 12 10:25:49 CEST 2021


Am 11.10.21 um 14:13 schrieb Lorenz Stechauner:
> Signed-off-by: Lorenz Stechauner <l.stechauner at proxmox.com>
> ---
>   www/manager6/controller/StorageEdit.js |  6 ++++++
>   www/manager6/storage/Base.js           | 20 ++++++++++++++++++++
>   www/manager6/storage/NFSEdit.js        |  2 +-
>   3 files changed, 27 insertions(+), 1 deletion(-)
> 
> diff --git a/www/manager6/controller/StorageEdit.js b/www/manager6/controller/StorageEdit.js
> index 4246d363..cb73b776 100644
> --- a/www/manager6/controller/StorageEdit.js
> +++ b/www/manager6/controller/StorageEdit.js
> @@ -4,6 +4,12 @@ Ext.define('PVE.controller.StorageEdit', {
>       control: {
>   	'field[name=content]': {
>   	    change: function(field, value) {
> +		const hasImages = Ext.Array.contains(value, 'images');
> +		const prealloc = field.up('form').getForm().findField('preallocation');
> +		if (prealloc) {
> +		    prealloc.setDisabled(!hasImages);
> +		}
> +
>   		var hasBackups = Ext.Array.contains(value, 'backup');
>   		var maxfiles = this.lookupReference('maxfiles');
>   		if (!maxfiles) {
> diff --git a/www/manager6/storage/Base.js b/www/manager6/storage/Base.js
> index f339e8cd..830823af 100644
> --- a/www/manager6/storage/Base.js
> +++ b/www/manager6/storage/Base.js
> @@ -51,6 +51,26 @@ Ext.define('PVE.panel.StorageBase', {
>   	    },
>   	);
>   
> +	const qemuImgStorageTypes = ['dir', 'btrfs', 'nfs', 'cifs'];

Missing 'glusterfs'.

> +
> +	if (qemuImgStorageTypes.includes(me.type)) {
> +	    const preallocSelector = {
> +		xtype: 'pvePreallocationSelector',
> +		name: 'preallocation',
> +		fieldLabel: gettext('Preallocation'),
> +		allowBlank: false,
> +		value: '__default__',
> +	    };
> +
> +	    me.advancedColumn1 = me.advancedColumn1 || [];
> +	    me.advancedColumn2 = me.advancedColumn2 || [];
> +	    if (me.advancedColumn2.length < me.advancedColumn1.length) {
> +		me.advancedColumn2.unshift(preallocSelector);
> +	    } else {
> +		me.advancedColumn1.unshift(preallocSelector);
> +	    }
> +	}
> +
>   	me.callParent();
>       },
>   });
> diff --git a/www/manager6/storage/NFSEdit.js b/www/manager6/storage/NFSEdit.js
> index faa41732..202c7de0 100644
> --- a/www/manager6/storage/NFSEdit.js
> +++ b/www/manager6/storage/NFSEdit.js
> @@ -143,7 +143,7 @@ Ext.define('PVE.storage.NFSInputPanel', {
>   	    },
>   	];
>   
> -	me.advancedColumn1 = [
> +	me.advancedColumn2 = [
>   	    {
>   		xtype: 'proxmoxKVComboBox',
>   		fieldLabel: gettext('NFS Version'),
> 





More information about the pve-devel mailing list