From: Thomas Lamprecht Date: Fri, 22 May 2020 15:16:04 +0000 (+0200) Subject: ui: refactor pool edit window X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=d31c6539b0829bc338c70da256460438a27c6a43;p=pve-manager-legacy.git ui: refactor pool edit window Signed-off-by: Thomas Lamprecht --- diff --git a/www/manager6/dc/PoolEdit.js b/www/manager6/dc/PoolEdit.js index b17d0b8a..d55756e7 100644 --- a/www/manager6/dc/PoolEdit.js +++ b/www/manager6/dc/PoolEdit.js @@ -1,59 +1,37 @@ Ext.define('PVE.dc.PoolEdit', { extend: 'Proxmox.window.Edit', alias: ['widget.pveDcPoolEdit'], + mixins: ['Proxmox.Mixin.CBind'], - initComponent : function() { - var me = this; + subject: gettext('Pool'), - me.isCreate = !me.poolid; + cbindData: { + poolid: '', + isCreate: (cfg) => !cfg.poolid, + }, - var url; - var method; + cbind: { + autoLoad: get => !get('isCreate'), + url: get => `/api2/extjs/pools/${get('poolid')}`, + method: get => get('isCreate') ? 'POST' : 'PUT', + }, - if (me.isCreate) { - url = '/api2/extjs/pools'; - method = 'POST'; - } else { - url = '/api2/extjs/pools/' + me.poolid; - method = 'PUT'; - } - - Ext.applyIf(me, { - subject: gettext('Pool'), - url: url, - method: method, - items: [ - { - xtype: me.isCreate ? 'proxmoxtextfield' : 'displayfield', - fieldLabel: gettext('Name'), - name: 'poolid', - value: me.poolid, - allowBlank: false - }, - { - xtype: 'textfield', - fieldLabel: gettext('Comment'), - name: 'comment', - allowBlank: true - } - ] - }); - - me.callParent(); - - if (!me.isCreate) { - me.load(); - } else { - me.type = 'vnet' -/* - for (i = 0; i < 100; i++) { - confid = 'net' + i.toString(); - if (!Ext.isDefined(me.vmconfig[confid])) { - me.confid = confid; - break; - } - } -*/ - } - } + items: [ + { + xtype: 'pmxDisplayEditField', + fieldLabel: gettext('Name'), + cbind: { + editable: '{isCreate}', + value: '{poolid}', + }, + name: 'poolid', + allowBlank: false, + }, + { + xtype: 'textfield', + fieldLabel: gettext('Comment'), + name: 'comment', + allowBlank: true, + }, + ], });