[pve-devel] [RFC manager 14/28] use windowEdit from widget toolkit

Dominik Csapak d.csapak at proxmox.com
Fri Dec 15 10:18:12 CET 2017


On 12/11/2017 04:26 PM, Thomas Lamprecht wrote:
> Signed-off-by: Thomas Lamprecht <t.lamprecht at proxmox.com>
> ---
>   www/manager6/Makefile                 |   1 -
>   www/manager6/ceph/Monitor.js          |   2 +-
>   www/manager6/ceph/OSD.js              |   4 +-
>   www/manager6/ceph/Pool.js             |   2 +-
>   www/manager6/dc/ACLView.js            |   2 +-
>   www/manager6/dc/AuthEdit.js           |   2 +-
>   www/manager6/dc/Backup.js             |   2 +-
>   www/manager6/dc/GroupEdit.js          |   2 +-
>   www/manager6/dc/PoolEdit.js           |   2 +-
>   www/manager6/dc/SecurityGroups.js     |   2 +-
>   www/manager6/dc/UserEdit.js           |   2 +-
>   www/manager6/dc/UserView.js           |   2 +-
>   www/manager6/grid/FirewallAliases.js  |   2 +-
>   www/manager6/grid/FirewallOptions.js  |   6 +-
>   www/manager6/grid/FirewallRules.js    |   4 +-
>   www/manager6/grid/PoolMembers.js      |   4 +-
>   www/manager6/grid/Replication.js      |   2 +-
>   www/manager6/ha/GroupEdit.js          |   2 +-
>   www/manager6/ha/ResourceEdit.js       |   2 +-
>   www/manager6/lxc/DNS.js               |   4 +-
>   www/manager6/lxc/MPEdit.js            |   2 +-
>   www/manager6/lxc/Network.js           |   2 +-
>   www/manager6/lxc/Options.js           |  10 +-
>   www/manager6/lxc/ResourceEdit.js      |   4 +-
>   www/manager6/node/DNSEdit.js          |   2 +-
>   www/manager6/node/NetworkEdit.js      |   2 +-
>   www/manager6/node/Subscription.js     |   2 +-
>   www/manager6/node/TimeEdit.js         |   2 +-
>   www/manager6/panel/IPSet.js           |   6 +-
>   www/manager6/qemu/BootOrderEdit.js    |   2 +-
>   www/manager6/qemu/CDEdit.js           |   2 +-
>   www/manager6/qemu/CPUOptions.js       |   2 +-
>   www/manager6/qemu/DisplayEdit.js      |   2 +-
>   www/manager6/qemu/HDEdit.js           |   2 +-
>   www/manager6/qemu/HDEfi.js            |   2 +-
>   www/manager6/qemu/HDThrottle.js       |   2 +-
>   www/manager6/qemu/KeyboardEdit.js     |   2 +-
>   www/manager6/qemu/MemoryEdit.js       |   2 +-
>   www/manager6/qemu/NetworkEdit.js      |   2 +-
>   www/manager6/qemu/OSTypeEdit.js       |   2 +-
>   www/manager6/qemu/Options.js          |  22 +--
>   www/manager6/qemu/ProcessorEdit.js    |   2 +-
>   www/manager6/qemu/QemuBiosEdit.js     |   2 +-
>   www/manager6/qemu/ScsiHwEdit.js       |   2 +-
>   www/manager6/qemu/Smbios1Edit.js      |   2 +-
>   www/manager6/qemu/USBEdit.js          |   2 +-
>   www/manager6/storage/DirEdit.js       |   2 +-
>   www/manager6/storage/GlusterFsEdit.js |   2 +-
>   www/manager6/storage/IScsiEdit.js     |   2 +-
>   www/manager6/storage/LVMEdit.js       |   2 +-
>   www/manager6/storage/LvmThinEdit.js   |   2 +-
>   www/manager6/storage/NFSEdit.js       |   2 +-
>   www/manager6/storage/RBDEdit.js       |   2 +-
>   www/manager6/storage/SheepdogEdit.js  |   2 +-
>   www/manager6/storage/ZFSEdit.js       |   2 +-
>   www/manager6/storage/ZFSPoolEdit.js   |   2 +-
>   www/manager6/window/Edit.js           | 308 ----------------------------------
>   www/manager6/window/NotesEdit.js      |   2 +-
>   www/manager6/window/Restore.js        |   2 +-
>   www/manager6/window/StartupEdit.js    |   2 +-
>   60 files changed, 81 insertions(+), 390 deletions(-)
>   delete mode 100644 www/manager6/window/Edit.js
> 
> diff --git a/www/manager6/Makefile b/www/manager6/Makefile
> index e8673a75..4e850ce2 100644
> --- a/www/manager6/Makefile
> +++ b/www/manager6/Makefile
> @@ -84,7 +84,6 @@ JSSRC= 				                 	\
>   	panel/InputPanel.js				\
>   	panel/GaugeWidget.js				\
>   	panel/HealthWidget.js				\
> -	window/Edit.js					\
>   	window/LoginWindow.js				\
>   	window/TaskViewer.js				\
>   	window/Wizard.js				\
> diff --git a/www/manager6/ceph/Monitor.js b/www/manager6/ceph/Monitor.js
> index 7e755425..a9737983 100644
> --- a/www/manager6/ceph/Monitor.js
> +++ b/www/manager6/ceph/Monitor.js
> @@ -1,5 +1,5 @@
>   Ext.define('PVE.CephCreateMon', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>       alias: ['widget.pveCephCreateMon'],
>   
>       subject: 'Ceph Monitor/Manager',
> diff --git a/www/manager6/ceph/OSD.js b/www/manager6/ceph/OSD.js
> index 57f6f065..cf72a91b 100644
> --- a/www/manager6/ceph/OSD.js
> +++ b/www/manager6/ceph/OSD.js
> @@ -74,7 +74,7 @@ Ext.define('PVE.form.CephDiskSelector', {
>   });
>   
>   Ext.define('PVE.CephCreateOsd', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>       alias: ['widget.pveCephCreateOsd'],
>   
>       subject: 'Ceph OSD',
> @@ -130,7 +130,7 @@ Ext.define('PVE.CephCreateOsd', {
>   });
>   
>   Ext.define('PVE.CephRemoveOsd', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>       alias: ['widget.pveCephRemoveOsd'],
>   
>       isRemove: true,
> diff --git a/www/manager6/ceph/Pool.js b/www/manager6/ceph/Pool.js
> index d4be5208..78931acd 100644
> --- a/www/manager6/ceph/Pool.js
> +++ b/www/manager6/ceph/Pool.js
> @@ -1,5 +1,5 @@
>   Ext.define('PVE.CephCreatePool', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>       alias: 'widget.pveCephCreatePool',
>   
>       showProgress: true,
> diff --git a/www/manager6/dc/ACLView.js b/www/manager6/dc/ACLView.js
> index acc6de50..9ea11a5d 100644
> --- a/www/manager6/dc/ACLView.js
> +++ b/www/manager6/dc/ACLView.js
> @@ -1,5 +1,5 @@
>   Ext.define('PVE.dc.ACLAdd', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>       alias: ['widget.pveACLAdd'],
>       url: '/access/acl',
>       method: 'PUT',
> diff --git a/www/manager6/dc/AuthEdit.js b/www/manager6/dc/AuthEdit.js
> index 86d04b7c..d44820d2 100644
> --- a/www/manager6/dc/AuthEdit.js
> +++ b/www/manager6/dc/AuthEdit.js
> @@ -1,5 +1,5 @@
>   Ext.define('PVE.dc.AuthEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>       alias: ['widget.pveDcAuthEdit'],
>   
>       isAdd: true,
> diff --git a/www/manager6/dc/Backup.js b/www/manager6/dc/Backup.js
> index 539aad31..720bc37f 100644
> --- a/www/manager6/dc/Backup.js
> +++ b/www/manager6/dc/Backup.js
> @@ -1,5 +1,5 @@
>   Ext.define('PVE.dc.BackupEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>       alias: ['widget.pveDcBackupEdit'],
>   
>       defaultFocus: undefined,
> diff --git a/www/manager6/dc/GroupEdit.js b/www/manager6/dc/GroupEdit.js
> index 0d881a38..c6c93895 100644
> --- a/www/manager6/dc/GroupEdit.js
> +++ b/www/manager6/dc/GroupEdit.js
> @@ -1,5 +1,5 @@
>   Ext.define('PVE.dc.GroupEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>       alias: ['widget.pveDcGroupEdit'],
>   
>       initComponent : function() {
> diff --git a/www/manager6/dc/PoolEdit.js b/www/manager6/dc/PoolEdit.js
> index c2a2d25f..652427f5 100644
> --- a/www/manager6/dc/PoolEdit.js
> +++ b/www/manager6/dc/PoolEdit.js
> @@ -1,5 +1,5 @@
>   Ext.define('PVE.dc.PoolEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>       alias: ['widget.pveDcPoolEdit'],
>   
>       initComponent : function() {
> diff --git a/www/manager6/dc/SecurityGroups.js b/www/manager6/dc/SecurityGroups.js
> index 8022ae32..2b171903 100644
> --- a/www/manager6/dc/SecurityGroups.js
> +++ b/www/manager6/dc/SecurityGroups.js
> @@ -1,5 +1,5 @@
>   Ext.define('PVE.SecurityGroupEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       base_url: "/cluster/firewall/groups",
>   
> diff --git a/www/manager6/dc/UserEdit.js b/www/manager6/dc/UserEdit.js
> index 6a16a5ea..4b467104 100644
> --- a/www/manager6/dc/UserEdit.js
> +++ b/www/manager6/dc/UserEdit.js
> @@ -1,5 +1,5 @@
>   Ext.define('PVE.dc.UserEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>       alias: ['widget.pveDcUserEdit'],
>   
>       isAdd: true,
> diff --git a/www/manager6/dc/UserView.js b/www/manager6/dc/UserView.js
> index 4d2238e3..740465f4 100644
> --- a/www/manager6/dc/UserView.js
> +++ b/www/manager6/dc/UserView.js
> @@ -1,5 +1,5 @@
>   Ext.define('PVE.window.PasswordEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       initComponent : function() {
>   	var me = this;
> diff --git a/www/manager6/grid/FirewallAliases.js b/www/manager6/grid/FirewallAliases.js
> index 93238e8a..0a187c2f 100644
> --- a/www/manager6/grid/FirewallAliases.js
> +++ b/www/manager6/grid/FirewallAliases.js
> @@ -1,5 +1,5 @@
>   Ext.define('PVE.FirewallAliasEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       base_url: undefined,
>       
> diff --git a/www/manager6/grid/FirewallOptions.js b/www/manager6/grid/FirewallOptions.js
> index 7ff98ec6..87f6790c 100644
> --- a/www/manager6/grid/FirewallOptions.js
> +++ b/www/manager6/grid/FirewallOptions.js
> @@ -38,7 +38,7 @@ Ext.define('PVE.FirewallOptions', {
>   		required: true,
>   		defaultValue: 'nolog',
>   		editor: {
> -		    xtype: 'pveWindowEdit',
> +		    xtype: 'proxmoxWindowEdit',
>   		    subject: name,
>   		    fieldDefaults: { labelWidth: labelWidth || 100 },
>   		    items: {
> @@ -85,7 +85,7 @@ Ext.define('PVE.FirewallOptions', {
>   		required: true,
>   		defaultValue: 'DROP',
>   		editor: {
> -		    xtype: 'pveWindowEdit',
> +		    xtype: 'proxmoxWindowEdit',
>   		    subject: gettext('Input Policy'),
>   		    items: {
>   			xtype: 'pveFirewallPolicySelector',
> @@ -101,7 +101,7 @@ Ext.define('PVE.FirewallOptions', {
>   		required: true,
>   		defaultValue: 'ACCEPT',
>   		editor: {
> -		    xtype: 'pveWindowEdit',
> +		    xtype: 'proxmoxWindowEdit',
>   		    subject: gettext('Output Policy'),
>   		    items: {
>   			xtype: 'pveFirewallPolicySelector',
> diff --git a/www/manager6/grid/FirewallRules.js b/www/manager6/grid/FirewallRules.js
> index c0c4da55..716f5218 100644
> --- a/www/manager6/grid/FirewallRules.js
> +++ b/www/manager6/grid/FirewallRules.js
> @@ -222,7 +222,7 @@ Ext.define('PVE.FirewallRulePanel', {
>   });
>   
>   Ext.define('PVE.FirewallRuleEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       base_url: undefined,
>       list_refs_url: undefined,
> @@ -287,7 +287,7 @@ Ext.define('PVE.FirewallRuleEdit', {
>   });
>   
>   Ext.define('PVE.FirewallGroupRuleEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       base_url: undefined,
>   
> diff --git a/www/manager6/grid/PoolMembers.js b/www/manager6/grid/PoolMembers.js
> index 5d020f7b..47d326f7 100644
> --- a/www/manager6/grid/PoolMembers.js
> +++ b/www/manager6/grid/PoolMembers.js
> @@ -1,5 +1,5 @@
>   Ext.define('PVE.pool.AddVM', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>       width: 600,
>       height: 400,
>       isAdd: true,
> @@ -97,7 +97,7 @@ Ext.define('PVE.pool.AddVM', {
>   });
>   
>   Ext.define('PVE.pool.AddStorage', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       initComponent : function() {
>   
> diff --git a/www/manager6/grid/Replication.js b/www/manager6/grid/Replication.js
> index 8371da80..3f04951a 100644
> --- a/www/manager6/grid/Replication.js
> +++ b/www/manager6/grid/Replication.js
> @@ -1,5 +1,5 @@
>   Ext.define('PVE.window.ReplicaEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>       xtype: 'pveReplicaEdit',
>   
>       subject: gettext('Replication Job'),
> diff --git a/www/manager6/ha/GroupEdit.js b/www/manager6/ha/GroupEdit.js
> index cdf35509..b48ae06c 100644
> --- a/www/manager6/ha/GroupEdit.js
> +++ b/www/manager6/ha/GroupEdit.js
> @@ -191,7 +191,7 @@ Ext.define('PVE.ha.GroupInputPanel', {
>   });
>   
>   Ext.define('PVE.ha.GroupEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       groupId: undefined,
>   
> diff --git a/www/manager6/ha/ResourceEdit.js b/www/manager6/ha/ResourceEdit.js
> index 49e6a429..9a00d812 100644
> --- a/www/manager6/ha/ResourceEdit.js
> +++ b/www/manager6/ha/ResourceEdit.js
> @@ -155,7 +155,7 @@ Ext.define('PVE.ha.VMResourceInputPanel', {
>   });
>   
>   Ext.define('PVE.ha.VMResourceEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       vmid: undefined,
>       guestType: undefined,
> diff --git a/www/manager6/lxc/DNS.js b/www/manager6/lxc/DNS.js
> index bea56b51..1a9f4d9e 100644
> --- a/www/manager6/lxc/DNS.js
> +++ b/www/manager6/lxc/DNS.js
> @@ -97,7 +97,7 @@ Ext.define('PVE.lxc.DNSInputPanel', {
>   });
>   
>   Ext.define('PVE.lxc.DNSEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       initComponent : function() {
>   	var me = this;
> @@ -161,7 +161,7 @@ Ext.define('PVE.lxc.DNS', {
>   		defaultValue: me.pveSelNode.data.name,
>   		header: gettext('Hostname'),
>   		editor: caps.vms['VM.Config.Network'] ? {
> -		    xtype: 'pveWindowEdit',
> +		    xtype: 'proxmoxWindowEdit',
>   		    subject: gettext('Hostname'),
>   		    items: {
>   			xtype: 'inputpanel',
> diff --git a/www/manager6/lxc/MPEdit.js b/www/manager6/lxc/MPEdit.js
> index 62afa522..59308ddb 100644
> --- a/www/manager6/lxc/MPEdit.js
> +++ b/www/manager6/lxc/MPEdit.js
> @@ -285,7 +285,7 @@ Ext.define('PVE.lxc.MountPointInputPanel', {
>   });
>   
>   Ext.define('PVE.lxc.MountPointEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       unprivileged: false,
>   
> diff --git a/www/manager6/lxc/Network.js b/www/manager6/lxc/Network.js
> index eb8e4660..aaf15bef 100644
> --- a/www/manager6/lxc/Network.js
> +++ b/www/manager6/lxc/Network.js
> @@ -293,7 +293,7 @@ Ext.define('PVE.lxc.NetworkInputPanel', {
>   	
>   
>   Ext.define('PVE.lxc.NetworkEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       isAdd: true,
>   
> diff --git a/www/manager6/lxc/Options.js b/www/manager6/lxc/Options.js
> index 9752d98c..e8723879 100644
> --- a/www/manager6/lxc/Options.js
> +++ b/www/manager6/lxc/Options.js
> @@ -27,7 +27,7 @@ Ext.define('PVE.lxc.Options', {
>   		defaultValue: '',
>   		renderer: PVE.Utils.format_boolean,
>   		editor: caps.vms['VM.Config.Options'] ? {
> -		    xtype: 'pveWindowEdit',
> +		    xtype: 'proxmoxWindowEdit',
>   		    subject: gettext('Start at boot'),
>   		    items: {
>   			xtype: 'proxmoxcheckbox',
> @@ -61,7 +61,7 @@ Ext.define('PVE.lxc.Options', {
>   		defaultValue: 1,
>   		renderer: PVE.Utils.format_enabled_toggle,
>   		editor: caps.vms['VM.Config.Options'] ? {
> -		    xtype: 'pveWindowEdit',
> +		    xtype: 'proxmoxWindowEdit',
>   		    subject: '/dev/console',
>   		    items: {
>   			xtype: 'proxmoxcheckbox',
> @@ -78,7 +78,7 @@ Ext.define('PVE.lxc.Options', {
>   		header: gettext('TTY count'),
>   		defaultValue: 2,
>   		editor: caps.vms['VM.Config.Options'] ? {
> -		    xtype: 'pveWindowEdit',
> +		    xtype: 'proxmoxWindowEdit',
>   		    subject: gettext('TTY count'),
>   		    items: {
>   			xtype: 'pveIntegerField',
> @@ -105,7 +105,7 @@ Ext.define('PVE.lxc.Options', {
>   		header: gettext('Console mode'),
>   		defaultValue: 'tty',
>   		editor: caps.vms['VM.Config.Options'] ? {
> -		    xtype: 'pveWindowEdit',
> +		    xtype: 'proxmoxWindowEdit',
>   		    subject: gettext('Console mode'),
>   		    items: {
>   			xtype: 'proxmoxKVComboBox',
> @@ -127,7 +127,7 @@ Ext.define('PVE.lxc.Options', {
>   		defaultValue: false,
>   		renderer: PVE.Utils.format_boolean,
>   		editor: caps.vms['VM.Config.Options'] ? {
> -		    xtype: 'pveWindowEdit',
> +		    xtype: 'proxmoxWindowEdit',
>   		    subject: gettext('Protection'),
>   		    items: {
>   			xtype: 'proxmoxcheckbox',
> diff --git a/www/manager6/lxc/ResourceEdit.js b/www/manager6/lxc/ResourceEdit.js
> index 6bd35e8a..eae003a4 100644
> --- a/www/manager6/lxc/ResourceEdit.js
> +++ b/www/manager6/lxc/ResourceEdit.js
> @@ -2,7 +2,7 @@
>   var labelWidth = 120;
>   
>   Ext.define('PVE.lxc.MemoryEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       initComponent : function() {
>   	var me = this;
> @@ -20,7 +20,7 @@ Ext.define('PVE.lxc.MemoryEdit', {
>   
>   
>   Ext.define('PVE.lxc.CPUEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       initComponent : function() {
>   	var me = this;
> diff --git a/www/manager6/node/DNSEdit.js b/www/manager6/node/DNSEdit.js
> index e9784801..505097b0 100644
> --- a/www/manager6/node/DNSEdit.js
> +++ b/www/manager6/node/DNSEdit.js
> @@ -1,5 +1,5 @@
>   Ext.define('PVE.node.DNSEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>       alias: ['widget.pveNodeDNSEdit'],
>   
>       initComponent : function() {
> diff --git a/www/manager6/node/NetworkEdit.js b/www/manager6/node/NetworkEdit.js
> index 5e3b05ea..b0457b24 100644
> --- a/www/manager6/node/NetworkEdit.js
> +++ b/www/manager6/node/NetworkEdit.js
> @@ -1,5 +1,5 @@
>   Ext.define('PVE.node.NetworkEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>       alias: ['widget.pveNodeNetworkEdit'],
>   
>       initComponent : function() {
> diff --git a/www/manager6/node/Subscription.js b/www/manager6/node/Subscription.js
> index f5ad1b54..bf515434 100644
> --- a/www/manager6/node/Subscription.js
> +++ b/www/manager6/node/Subscription.js
> @@ -1,6 +1,6 @@
>   /*global Blob*/
>   Ext.define('PVE.node.SubscriptionKeyEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>       title: gettext('Upload Subscription Key'),
>       width: 300,
>       items: {
> diff --git a/www/manager6/node/TimeEdit.js b/www/manager6/node/TimeEdit.js
> index 62d3c211..22f8606c 100644
> --- a/www/manager6/node/TimeEdit.js
> +++ b/www/manager6/node/TimeEdit.js
> @@ -1,5 +1,5 @@
>   Ext.define('PVE.node.TimeEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>       alias: ['widget.pveNodeTimeEdit'],
>   
>       initComponent : function() {
> diff --git a/www/manager6/panel/IPSet.js b/www/manager6/panel/IPSet.js
> index 844097fe..72b39f62 100644
> --- a/www/manager6/panel/IPSet.js
> +++ b/www/manager6/panel/IPSet.js
> @@ -57,7 +57,7 @@ Ext.define('PVE.IPSetList', {
>   	    if (!rec) {
>   		return;
>   	    }
> -	    var win = Ext.create('PVE.window.Edit', {
> +	    var win = Ext.create('Proxmox.window.Edit', {
>   		subject: "IPSet '" + rec.data.name + "'",
>   		url: me.base_url,
>   		method: 'POST',
> @@ -98,7 +98,7 @@ Ext.define('PVE.IPSetList', {
>   	    text: gettext('Create'),
>   	    handler: function() {
>   		sm.deselectAll();
> -		var win = Ext.create('PVE.window.Edit', {
> +		var win = Ext.create('Proxmox.window.Edit', {
>   		    subject: 'IPSet',
>   		    url: me.base_url,
>   		    method: 'POST',
> @@ -173,7 +173,7 @@ Ext.define('PVE.IPSetList', {
>   });
>   
>   Ext.define('PVE.IPSetCidrEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       cidr: undefined,
>   
> diff --git a/www/manager6/qemu/BootOrderEdit.js b/www/manager6/qemu/BootOrderEdit.js
> index 454c4c8e..6b71eefd 100644
> --- a/www/manager6/qemu/BootOrderEdit.js
> +++ b/www/manager6/qemu/BootOrderEdit.js
> @@ -149,7 +149,7 @@ Ext.define('PVE.qemu.BootOrderPanel', {
>   });
>   
>   Ext.define('PVE.qemu.BootOrderEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       items: [{
>   	xtype: 'pveQemuBootOrderPanel',
> diff --git a/www/manager6/qemu/CDEdit.js b/www/manager6/qemu/CDEdit.js
> index aa359dc6..8b6e944c 100644
> --- a/www/manager6/qemu/CDEdit.js
> +++ b/www/manager6/qemu/CDEdit.js
> @@ -142,7 +142,7 @@ Ext.define('PVE.qemu.CDInputPanel', {
>   });
>   
>   Ext.define('PVE.qemu.CDEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       initComponent : function() {
>   	var me = this;
> diff --git a/www/manager6/qemu/CPUOptions.js b/www/manager6/qemu/CPUOptions.js
> index 3cadf226..f158be92 100644
> --- a/www/manager6/qemu/CPUOptions.js
> +++ b/www/manager6/qemu/CPUOptions.js
> @@ -55,7 +55,7 @@ Ext.define('PVE.qemu.CPUOptionsInputPanel', {
>   });
>   
>   Ext.define('PVE.qemu.CPUOptions', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       initComponent : function() {
>   	var me = this;
> diff --git a/www/manager6/qemu/DisplayEdit.js b/www/manager6/qemu/DisplayEdit.js
> index 0141e9c2..00df0036 100644
> --- a/www/manager6/qemu/DisplayEdit.js
> +++ b/www/manager6/qemu/DisplayEdit.js
> @@ -1,5 +1,5 @@
>   Ext.define('PVE.qemu.DisplayEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       vmconfig: undefined,
>   
> diff --git a/www/manager6/qemu/HDEdit.js b/www/manager6/qemu/HDEdit.js
> index fa0cc67f..73f51cd2 100644
> --- a/www/manager6/qemu/HDEdit.js
> +++ b/www/manager6/qemu/HDEdit.js
> @@ -249,7 +249,7 @@ Ext.define('PVE.qemu.HDInputPanel', {
>   /*jslint confusion: false */
>   
>   Ext.define('PVE.qemu.HDEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       isAdd: true,
>   
> diff --git a/www/manager6/qemu/HDEfi.js b/www/manager6/qemu/HDEfi.js
> index 802b3090..f228e849 100644
> --- a/www/manager6/qemu/HDEfi.js
> +++ b/www/manager6/qemu/HDEfi.js
> @@ -51,7 +51,7 @@ Ext.define('PVE.qemu.EFIDiskInputPanel', {
>   });
>   
>   Ext.define('PVE.qemu.EFIDiskEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       isAdd: true,
>       subject: gettext('EFI Disk'),
> diff --git a/www/manager6/qemu/HDThrottle.js b/www/manager6/qemu/HDThrottle.js
> index 8d2af2a6..8dca6f56 100644
> --- a/www/manager6/qemu/HDThrottle.js
> +++ b/www/manager6/qemu/HDThrottle.js
> @@ -158,7 +158,7 @@ Ext.define('PVE.qemu.HDThrottleInputPanel', {
>   });
>   
>   Ext.define('PVE.qemu.HDThrottle', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       isAdd: true,
>   
> diff --git a/www/manager6/qemu/KeyboardEdit.js b/www/manager6/qemu/KeyboardEdit.js
> index dbf0300e..1011f470 100644
> --- a/www/manager6/qemu/KeyboardEdit.js
> +++ b/www/manager6/qemu/KeyboardEdit.js
> @@ -1,5 +1,5 @@
>   Ext.define('PVE.qemu.KeyboardEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       initComponent : function() {
>   	var me = this;
> diff --git a/www/manager6/qemu/MemoryEdit.js b/www/manager6/qemu/MemoryEdit.js
> index 811870d2..79d3e4f9 100644
> --- a/www/manager6/qemu/MemoryEdit.js
> +++ b/www/manager6/qemu/MemoryEdit.js
> @@ -149,7 +149,7 @@ Ext.define('PVE.qemu.MemoryInputPanel', {
>   });
>   
>   Ext.define('PVE.qemu.MemoryEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       initComponent : function() {
>   	var me = this;
> diff --git a/www/manager6/qemu/NetworkEdit.js b/www/manager6/qemu/NetworkEdit.js
> index 2c905e7a..bd093819 100644
> --- a/www/manager6/qemu/NetworkEdit.js
> +++ b/www/manager6/qemu/NetworkEdit.js
> @@ -169,7 +169,7 @@ Ext.define('PVE.qemu.NetworkInputPanel', {
>   });
>   
>   Ext.define('PVE.qemu.NetworkEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       isAdd: true,
>   
> diff --git a/www/manager6/qemu/OSTypeEdit.js b/www/manager6/qemu/OSTypeEdit.js
> index 27b0c40c..eb33c98b 100644
> --- a/www/manager6/qemu/OSTypeEdit.js
> +++ b/www/manager6/qemu/OSTypeEdit.js
> @@ -96,7 +96,7 @@ Ext.define('PVE.qemu.OSTypeInputPanel', {
>   });
>   
>   Ext.define('PVE.qemu.OSTypeEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       subject: 'OS Type',
>   
> diff --git a/www/manager6/qemu/Options.js b/www/manager6/qemu/Options.js
> index b4d0442f..c62a3722 100644
> --- a/www/manager6/qemu/Options.js
> +++ b/www/manager6/qemu/Options.js
> @@ -27,7 +27,7 @@ Ext.define('PVE.qemu.Options', {
>   		defaultValue: me.pveSelNode.data.name,
>   		header: gettext('Name'),
>   		editor: caps.vms['VM.Config.Options'] ? {
> -		    xtype: 'pveWindowEdit',
> +		    xtype: 'proxmoxWindowEdit',
>   		    subject: gettext('Name'),
>   		    items: {
>   			xtype: 'inputpanel',
> @@ -56,7 +56,7 @@ Ext.define('PVE.qemu.Options', {
>   		defaultValue: '',
>   		renderer: PVE.Utils.format_boolean,
>   		editor: caps.vms['VM.Config.Options'] ? {
> -		    xtype: 'pveWindowEdit',
> +		    xtype: 'proxmoxWindowEdit',
>   		    subject: gettext('Start at boot'),
>   		    items: {
>   			xtype: 'proxmoxcheckbox',
> @@ -126,7 +126,7 @@ Ext.define('PVE.qemu.Options', {
>   		defaultValue: true,
>   		renderer: PVE.Utils.format_boolean,
>   		editor: caps.vms['VM.Config.HWType'] ? {
> -		    xtype: 'pveWindowEdit',
> +		    xtype: 'proxmoxWindowEdit',
>   		    subject: gettext('Use tablet for pointer'),
>   		    items: {
>   			xtype: 'proxmoxcheckbox',
> @@ -144,7 +144,7 @@ Ext.define('PVE.qemu.Options', {
>   		defaultValue: 'disk,network,usb',
>   		renderer:  PVE.Utils.render_hotplug_features,
>   		editor: caps.vms['VM.Config.HWType'] ? {
> -		    xtype: 'pveWindowEdit',
> +		    xtype: 'proxmoxWindowEdit',
>   		    subject: gettext('Hotplug'),
>   		    items: {
>   			xtype: 'pveHotplugFeatureSelector',
> @@ -161,7 +161,7 @@ Ext.define('PVE.qemu.Options', {
>   		defaultValue: true,
>   		renderer: PVE.Utils.format_boolean,
>   		editor: caps.vms['VM.Config.HWType'] ? {
> -		    xtype: 'pveWindowEdit',
> +		    xtype: 'proxmoxWindowEdit',
>   		    subject: gettext('ACPI support'),
>   		    items: {
>   			xtype: 'proxmoxcheckbox',
> @@ -191,7 +191,7 @@ Ext.define('PVE.qemu.Options', {
>   		defaultValue: true,
>   		renderer: PVE.Utils.format_boolean,
>   		editor: caps.vms['VM.Config.HWType'] ? {
> -		    xtype: 'pveWindowEdit',
> +		    xtype: 'proxmoxWindowEdit',
>   		    subject: gettext('KVM hardware virtualization'),
>   		    items: {
>   			xtype: 'proxmoxcheckbox',
> @@ -209,7 +209,7 @@ Ext.define('PVE.qemu.Options', {
>   		defaultValue: false,
>   		renderer: PVE.Utils.format_boolean,
>   		editor: caps.vms['VM.PowerMgmt'] ? {
> -		    xtype: 'pveWindowEdit',
> +		    xtype: 'proxmoxWindowEdit',
>   		    subject: gettext('Freeze CPU at startup'),
>   		    items: {
>   			xtype: 'proxmoxcheckbox',
> @@ -227,7 +227,7 @@ Ext.define('PVE.qemu.Options', {
>   		defaultValue: false,
>   		renderer: PVE.Utils.format_boolean,
>   		editor: caps.vms['VM.Config.Options'] ? {
> -		    xtype: 'pveWindowEdit',
> +		    xtype: 'proxmoxWindowEdit',
>   		    subject: gettext('Use local time for RTC'),
>   		    items: {
>   			xtype: 'proxmoxcheckbox',
> @@ -244,7 +244,7 @@ Ext.define('PVE.qemu.Options', {
>   		header: gettext('RTC start date'),
>   		defaultValue: 'now',
>   		editor: caps.vms['VM.Config.Options'] ? {
> -		    xtype: 'pveWindowEdit',
> +		    xtype: 'proxmoxWindowEdit',
>   		    subject: gettext('RTC start date'),
>   		    items: {
>   			xtype: 'pvetextfield',
> @@ -268,7 +268,7 @@ Ext.define('PVE.qemu.Options', {
>   		defaultValue: false,
>   		renderer: PVE.Utils.format_boolean,
>   		editor: caps.vms['VM.Config.Options'] ? {
> -		    xtype: 'pveWindowEdit',
> +		    xtype: 'proxmoxWindowEdit',
>   		    subject: gettext('Qemu Agent'),
>   		    items: {
>   			xtype: 'proxmoxcheckbox',
> @@ -285,7 +285,7 @@ Ext.define('PVE.qemu.Options', {
>   		defaultValue: false,
>   		renderer: PVE.Utils.format_boolean,
>   		editor: caps.vms['VM.Config.Options'] ? {
> -		    xtype: 'pveWindowEdit',
> +		    xtype: 'proxmoxWindowEdit',
>   		    subject: gettext('Protection'),
>   		    items: {
>   			xtype: 'proxmoxcheckbox',
> diff --git a/www/manager6/qemu/ProcessorEdit.js b/www/manager6/qemu/ProcessorEdit.js
> index 9c8bd26b..4a7f27ba 100644
> --- a/www/manager6/qemu/ProcessorEdit.js
> +++ b/www/manager6/qemu/ProcessorEdit.js
> @@ -104,7 +104,7 @@ Ext.define('PVE.qemu.ProcessorInputPanel', {
>   });
>   
>   Ext.define('PVE.qemu.ProcessorEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       initComponent : function() {
>   	var me = this;
> diff --git a/www/manager6/qemu/QemuBiosEdit.js b/www/manager6/qemu/QemuBiosEdit.js
> index d5abbe35..5a8e4661 100644
> --- a/www/manager6/qemu/QemuBiosEdit.js
> +++ b/www/manager6/qemu/QemuBiosEdit.js
> @@ -1,5 +1,5 @@
>   Ext.define('PVE.qemu.BiosEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>       alias: 'widget.pveQemuBiosEdit',
>   
>       initComponent : function() {
> diff --git a/www/manager6/qemu/ScsiHwEdit.js b/www/manager6/qemu/ScsiHwEdit.js
> index cbab5965..a0d6c645 100644
> --- a/www/manager6/qemu/ScsiHwEdit.js
> +++ b/www/manager6/qemu/ScsiHwEdit.js
> @@ -1,5 +1,5 @@
>   Ext.define('PVE.qemu.ScsiHwEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       initComponent : function() {
>   	var me = this;
> diff --git a/www/manager6/qemu/Smbios1Edit.js b/www/manager6/qemu/Smbios1Edit.js
> index 866627f2..31ea4558 100644
> --- a/www/manager6/qemu/Smbios1Edit.js
> +++ b/www/manager6/qemu/Smbios1Edit.js
> @@ -78,7 +78,7 @@ Ext.define('PVE.qemu.Smbios1InputPanel', {
>   });
>   
>   Ext.define('PVE.qemu.Smbios1Edit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       initComponent : function() {
>   	/*jslint confusion: true */
> diff --git a/www/manager6/qemu/USBEdit.js b/www/manager6/qemu/USBEdit.js
> index ad360506..cf1ec427 100644
> --- a/www/manager6/qemu/USBEdit.js
> +++ b/www/manager6/qemu/USBEdit.js
> @@ -150,7 +150,7 @@ Ext.define('PVE.qemu.USBInputPanel', {
>   });
>   
>   Ext.define('PVE.qemu.USBEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       vmconfig: undefined,
>   
> diff --git a/www/manager6/storage/DirEdit.js b/www/manager6/storage/DirEdit.js
> index 4aceaff1..54b7ab49 100644
> --- a/www/manager6/storage/DirEdit.js
> +++ b/www/manager6/storage/DirEdit.js
> @@ -91,7 +91,7 @@ Ext.define('PVE.storage.DirInputPanel', {
>   });
>   
>   Ext.define('PVE.storage.DirEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       initComponent : function() {
>   	var me = this;
> diff --git a/www/manager6/storage/GlusterFsEdit.js b/www/manager6/storage/GlusterFsEdit.js
> index 85a11615..4a55f6a7 100644
> --- a/www/manager6/storage/GlusterFsEdit.js
> +++ b/www/manager6/storage/GlusterFsEdit.js
> @@ -165,7 +165,7 @@ Ext.define('PVE.storage.GlusterFsInputPanel', {
>   });
>   
>   Ext.define('PVE.storage.GlusterFsEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       initComponent : function() {
>   	var me = this;
> diff --git a/www/manager6/storage/IScsiEdit.js b/www/manager6/storage/IScsiEdit.js
> index 71c595da..625788bd 100644
> --- a/www/manager6/storage/IScsiEdit.js
> +++ b/www/manager6/storage/IScsiEdit.js
> @@ -146,7 +146,7 @@ Ext.define('PVE.storage.IScsiInputPanel', {
>   });
>   
>   Ext.define('PVE.storage.IScsiEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       initComponent : function() {
>   	var me = this;
> diff --git a/www/manager6/storage/LVMEdit.js b/www/manager6/storage/LVMEdit.js
> index 531b735a..d307624d 100644
> --- a/www/manager6/storage/LVMEdit.js
> +++ b/www/manager6/storage/LVMEdit.js
> @@ -220,7 +220,7 @@ Ext.define('PVE.storage.LVMInputPanel', {
>   });
>   
>   Ext.define('PVE.storage.LVMEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       initComponent : function() {
>   	var me = this;
> diff --git a/www/manager6/storage/LvmThinEdit.js b/www/manager6/storage/LvmThinEdit.js
> index 4270ee81..406be334 100644
> --- a/www/manager6/storage/LvmThinEdit.js
> +++ b/www/manager6/storage/LvmThinEdit.js
> @@ -208,7 +208,7 @@ Ext.define('PVE.storage.LvmThinInputPanel', {
>   });
>   
>   Ext.define('PVE.storage.LvmThinEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       initComponent : function() {
>   	var me = this;
> diff --git a/www/manager6/storage/NFSEdit.js b/www/manager6/storage/NFSEdit.js
> index 564887ab..77513d71 100644
> --- a/www/manager6/storage/NFSEdit.js
> +++ b/www/manager6/storage/NFSEdit.js
> @@ -160,7 +160,7 @@ Ext.define('PVE.storage.NFSInputPanel', {
>   });
>   
>   Ext.define('PVE.storage.NFSEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       initComponent : function() {
>   	var me = this;
> diff --git a/www/manager6/storage/RBDEdit.js b/www/manager6/storage/RBDEdit.js
> index 9baf402a..aff23dde 100644
> --- a/www/manager6/storage/RBDEdit.js
> +++ b/www/manager6/storage/RBDEdit.js
> @@ -117,7 +117,7 @@ Ext.define('PVE.storage.RBDInputPanel', {
>   });
>   
>   Ext.define('PVE.storage.RBDEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       initComponent : function() {
>   	var me = this;
> diff --git a/www/manager6/storage/SheepdogEdit.js b/www/manager6/storage/SheepdogEdit.js
> index 5e830d46..d8e3674d 100644
> --- a/www/manager6/storage/SheepdogEdit.js
> +++ b/www/manager6/storage/SheepdogEdit.js
> @@ -67,7 +67,7 @@ Ext.define('PVE.storage.SheepdogInputPanel', {
>   });
>   
>   Ext.define('PVE.storage.SheepdogEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       initComponent : function() {
>   	var me = this;
> diff --git a/www/manager6/storage/ZFSEdit.js b/www/manager6/storage/ZFSEdit.js
> index 631eadc0..c37a7335 100644
> --- a/www/manager6/storage/ZFSEdit.js
> +++ b/www/manager6/storage/ZFSEdit.js
> @@ -124,7 +124,7 @@ Ext.define('PVE.storage.ZFSInputPanel', {
>   });
>   
>   Ext.define('PVE.storage.ZFSEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       initComponent : function() {
>   	var me = this;
> diff --git a/www/manager6/storage/ZFSPoolEdit.js b/www/manager6/storage/ZFSPoolEdit.js
> index 32231b9c..bbc478ba 100644
> --- a/www/manager6/storage/ZFSPoolEdit.js
> +++ b/www/manager6/storage/ZFSPoolEdit.js
> @@ -135,7 +135,7 @@ Ext.define('PVE.storage.ZFSPoolInputPanel', {
>   });
>   
>   Ext.define('PVE.storage.ZFSPoolEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       initComponent : function() {
>   	var me = this;
> diff --git a/www/manager6/window/Edit.js b/www/manager6/window/Edit.js
> deleted file mode 100644
> index b840dbaa..00000000
> --- a/www/manager6/window/Edit.js
> +++ /dev/null
> @@ -1,308 +0,0 @@
> -Ext.define('PVE.window.Edit', {
> -    extend: 'Ext.window.Window',
> -    alias: 'widget.pveWindowEdit',
> -
> -    resizable: false,
> -
> -    // use this tio atimatically generate a title like
> -    // Create: <subject>
> -    subject: undefined,
> -
> -    // set isCreate to true if you want a Create button (instead of
> -    // OK and RESET)
> -    isCreate: false,
> -
> -    // set to true if you want an Add button (instead of Create)
> -    isAdd: false,
> -
> -    // set to true if you want an Remove button (instead of Create)
> -    isRemove: false,
> -
> -    backgroundDelay: 0,
> -
> -    // needed for finding the reference to submitbutton
> -    // because we do not have a controller
> -    referenceHolder: true,
> -    defaultButton: 'submitbutton',
> -
> -    // finds the first form field
> -    defaultFocus: 'field',
> -
> -    showProgress: false,
> -
> -    // assign a reference from pve-docs, to add a help button docked to the
> -    // bottom of the window. If undefined we magically fall back to the
> -    // onlineHelp of our first item, if set.
> -    onlineHelp: undefined,
> -
> -    isValid: function() {
> -	var me = this;
> -
> -	var form = me.formPanel.getForm();
> -	return form.isValid();
> -    },
> -
> -    getValues: function(dirtyOnly) {
> -	var me = this;
> -
> -        var values = {};
> -
> -	var form = me.formPanel.getForm();
> -
> -        form.getFields().each(function(field) {
> -            if (!field.up('inputpanel') && (!dirtyOnly || field.isDirty())) {
> -                PVE.Utils.assemble_field_data(values, field.getSubmitData());
> -            }
> -        });
> -
> -	Ext.Array.each(me.query('inputpanel'), function(panel) {
> -	    PVE.Utils.assemble_field_data(values, panel.getValues(dirtyOnly));
> -	});
> -
> -        return values;
> -    },
> -
> -    setValues: function(values) {
> -	var me = this;
> -
> -	var form = me.formPanel.getForm();
> -
> -	Ext.iterate(values, function(fieldId, val) {
> -	    var field = form.findField(fieldId);
> -	    if (field && !field.up('inputpanel')) {
> -               field.setValue(val);
> -                if (form.trackResetOnLoad) {
> -                    field.resetOriginalValue();
> -                }
> -            }
> -	});
> -
> -	Ext.Array.each(me.query('inputpanel'), function(panel) {
> -	    panel.setValues(values);
> -	});
> -    },
> -
> -    submit: function() {
> -	var me = this;
> -
> -	var form = me.formPanel.getForm();
> -
> -	var values = me.getValues();
> -	Ext.Object.each(values, function(name, val) {
> -	    if (values.hasOwnProperty(name)) {
> -                if (Ext.isArray(val) && !val.length) {
> -		    values[name] = '';
> -		}
> -	    }
> -	});
> -
> -	if (me.digest) {
> -	    values.digest = me.digest;
> -	}
> -
> -	if (me.backgroundDelay) {
> -	    values.background_delay = me.backgroundDelay;
> -	}
> -
> -	var url =  me.url;
> -	if (me.method === 'DELETE') {
> -	    url = url + "?" + Ext.Object.toQueryString(values);
> -	    values = undefined;
> -	}
> -
> -	PVE.Utils.API2Request({
> -	    url: url,
> -	    waitMsgTarget: me,
> -	    method: me.method || (me.backgroundDelay ? 'POST' : 'PUT'),
> -	    params: values,
> -	    failure: function(response, options) {
> -		if (response.result && response.result.errors) {
> -		    form.markInvalid(response.result.errors);
> -		}
> -		Ext.Msg.alert(gettext('Error'), response.htmlStatus);
> -	    },
> -	    success: function(response, options) {
> -		var hasProgressBar = (me.backgroundDelay || me.showProgress) &&
> -		    response.result.data ? true : false;
> -
> -		if (hasProgressBar) {
> -		    // stay around so we can trigger our close events
> -		    // when background action is completed
> -		    me.hide();
> -
> -		    var upid = response.result.data;
> -		    var win = Ext.create('PVE.window.TaskProgress', {
> -			upid: upid,
> -			listeners: {
> -			    destroy: function () {
> -				me.close();
> -			    }
> -			}
> -		    });
> -		    win.show();
> -		} else {
> -		    me.close();
> -		}
> -	    }
> -	});
> -    },
> -
> -    load: function(options) {
> -	var me = this;
> -
> -	var form = me.formPanel.getForm();
> -
> -	options = options || {};
> -
> -	var newopts = Ext.apply({
> -	    waitMsgTarget: me
> -	}, options);
> -
> -	var createWrapper = function(successFn) {
> -	    Ext.apply(newopts, {
> -		url: me.url,
> -		method: 'GET',
> -		success: function(response, opts) {
> -		    form.clearInvalid();
> -		    me.digest = response.result.data.digest;
> -		    if (successFn) {
> -			successFn(response, opts);
> -		    } else {
> -			me.setValues(response.result.data);
> -		    }
> -		    // hack: fix ExtJS bug
> -		    Ext.Array.each(me.query('radiofield'), function(f) {
> -			f.resetOriginalValue();
> -		    });
> -		},
> -		failure: function(response, opts) {
> -		    Ext.Msg.alert(gettext('Error'), response.htmlStatus, function() {
> -			me.close();
> -		    });
> -		}
> -	    });
> -	};
> -
> -	createWrapper(options.success);
> -
> -	PVE.Utils.API2Request(newopts);
> -    },
> -
> -    initComponent : function() {
> -	var me = this;
> -
> -	if (!me.url) {
> -	    throw "no url specified";
> -	}
> -
> -	if (me.create) {throw "deprecated parameter, use isCreate";}
> -
> -	var items = Ext.isArray(me.items) ? me.items : [ me.items ];
> -
> -	me.items = undefined;
> -
> -	me.formPanel = Ext.create('Ext.form.Panel', {
> -	    url: me.url,
> -	    method: me.method || 'PUT',
> -	    trackResetOnLoad: true,
> -	    bodyPadding: 10,
> -	    border: false,
> -	    defaults: Ext.apply({}, me.defaults, {
> -		border: false
> -	    }),

this is missing in the widget toolkit (needed for a ceph gui part)

> -	    fieldDefaults: Ext.apply({}, me.fieldDefaults, {
> -		labelWidth: 100,
> -		anchor: '100%'
> -            }),
> -	    items: items
> -	});
> -
> -	var form = me.formPanel.getForm();
> -
> -	var submitText;
> -	if (me.isCreate) {
> -	    if (me.isAdd) {
> -		submitText = gettext('Add');
> -	    } else if (me.isRemove) {
> -		submitText = gettext('Remove');
> -	    } else {
> -		submitText = gettext('Create');
> -	    }
> -	} else {
> -	    submitText = gettext('OK');
> -	}
> -
> -	var submitBtn = Ext.create('Ext.Button', {
> -	    reference: 'submitbutton',
> -	    text: submitText,
> -	    disabled: !me.isCreate,
> -	    handler: function() {
> -		me.submit();
> -	    }
> -	});
> -
> -	var resetBtn = Ext.create('Ext.Button', {
> -	    text: 'Reset',
> -	    disabled: true,
> -	    handler: function(){
> -		form.reset();
> -	    }
> -	});
> -
> -	var set_button_status = function() {
> -	    var valid = form.isValid();
> -	    var dirty = form.isDirty();
> -	    submitBtn.setDisabled(!valid || !(dirty || me.isCreate));
> -	    resetBtn.setDisabled(!dirty);
> -	};
> -
> -	form.on('dirtychange', set_button_status);
> -	form.on('validitychange', set_button_status);
> -
> -	var colwidth = 300;
> -	if (me.fieldDefaults && me.fieldDefaults.labelWidth) {
> -	    colwidth += me.fieldDefaults.labelWidth - 100;
> -	}
> -	
> -
> -	var twoColumn = items[0].column1 || items[0].column2;
> -
> -	if (me.subject && !me.title) {
> -	    me.title = PVE.Utils.dialog_title(me.subject, me.isCreate, me.isAdd);
> -	}
> -
> -	if (me.isCreate) {
> -		me.buttons = [ submitBtn ] ;
> -	} else {
> -		me.buttons = [ submitBtn, resetBtn ];
> -	}
> -
> -	var onlineHelp = me.onlineHelp || items[0].onlineHelp;
> -	if (onlineHelp) {
> -	    var helpButton = Ext.create('PVE.button.Help');
> -	    me.buttons.unshift(helpButton, '->');
> -	    Ext.GlobalEvents.fireEvent('pveShowHelp', onlineHelp);
> -	}
> -
> -	Ext.applyIf(me, {
> -	    modal: true,
> -	    width: twoColumn ? colwidth*2 : colwidth,
> -	    border: false,
> -	    items: [ me.formPanel ]
> -	});
> -
> -	me.callParent();
> -
> -	// always mark invalid fields
> -	me.on('afterlayout', function() {
> -	    // on touch devices, the isValid function
> -	    // triggers a layout, which triggers an isValid
> -	    // and so on
> -	    // to prevent this we disable the layouting here
> -	    // and enable it afterwards
> -	    me.suspendLayout = true;
> -	    me.isValid();
> -	    me.suspendLayout = false;
> -	});
> -    }
> -});
> diff --git a/www/manager6/window/NotesEdit.js b/www/manager6/window/NotesEdit.js
> index cf984004..71c2dafb 100644
> --- a/www/manager6/window/NotesEdit.js
> +++ b/www/manager6/window/NotesEdit.js
> @@ -1,5 +1,5 @@
>   Ext.define('PVE.window.NotesEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>   
>       initComponent : function() {
>   	var me = this;
> diff --git a/www/manager6/window/Restore.js b/www/manager6/window/Restore.js
> index e68122ab..5a3f628f 100644
> --- a/www/manager6/window/Restore.js
> +++ b/www/manager6/window/Restore.js
> @@ -1,5 +1,5 @@
>   Ext.define('PVE.window.Restore', {
> -    extend: 'Ext.window.Window', // fixme: PVE.window.Edit?
> +    extend: 'Ext.window.Window', // fixme: Proxmox.window.Edit?
>   
>       resizable: false,
>   
> diff --git a/www/manager6/window/StartupEdit.js b/www/manager6/window/StartupEdit.js
> index 75bb272c..dd3ab253 100644
> --- a/www/manager6/window/StartupEdit.js
> +++ b/www/manager6/window/StartupEdit.js
> @@ -55,7 +55,7 @@ Ext.define('PVE.panel.StartupInputPanel', {
>   });
>   
>   Ext.define('PVE.window.StartupEdit', {
> -    extend: 'PVE.window.Edit',
> +    extend: 'Proxmox.window.Edit',
>       alias: 'widget.pveWindowStartupEdit',
>       onlineHelp: undefined,
>   
> 





More information about the pve-devel mailing list