- items: [
- {
- xtype: 'pmxDisplayEditField',
- cbind: {
- editable: get => !get('disk').match(/^unused\d+/),
- value: get => get('disk').match(/^unused\d+/) ? 'unused' : 'mp',
- },
- disabled: true,
- name: 'mpType',
- reference: 'mpType',
- fieldLabel: gettext('Add as'),
- submitValue: true,
- flex: 4,
- editConfig: {
- xtype: 'proxmoxKVComboBox',
- name: 'mpTypeCombo',
- reference: 'mpTypeCombo',
- deleteEmpty: false,
- cbind: {
- hidden: '{isQemu}',
- },
- comboItems: [
- ['mp', gettext('Mount Point')],
- ['unused', gettext('Unused')],
- ],
- listeners: { change: 'onMpTypeChange' },
- },
- },
- {
- xtype: 'proxmoxintegerfield',
- name: 'mpId',
- reference: 'mpIdSelector',
- minValue: 0,
- flex: 1,
- allowBlank: false,
- validateOnChange: true,
- disabled: true,
- bind: {
- maxValue: '{mpMaxCount}',
- },
- validator: function(value) {
- let view = this.up('window');
- let type = view.getViewModel().get('mpType');
- if (Ext.isDefined(view.VMConfig[`${type}${value}`])) {
- return "Mount point is already in use.";
- }
- return true;
- },
- },
- ],