]>
git.proxmox.com Git - pve-manager.git/blob - www/manager6/qemu/NetworkEdit.js
dd950d2bb461009bb421c10443adc612469e718a
1 Ext
.define('PVE.qemu.NetworkInputPanel', {
2 extend
: 'Proxmox.panel.InputPanel',
3 alias
: 'widget.pveQemuNetworkInputPanel',
4 onlineHelp
: 'qm_network_device',
8 onGetValues: function(values
) {
11 me
.network
.model
= values
.model
;
12 if (values
.nonetwork
) {
15 me
.network
.bridge
= values
.bridge
;
16 me
.network
.tag
= values
.tag
;
17 me
.network
.firewall
= values
.firewall
;
19 me
.network
.macaddr
= values
.macaddr
;
20 me
.network
.disconnect
= values
.disconnect
;
21 me
.network
.queues
= values
.queues
;
24 me
.network
.rate
= values
.rate
;
26 delete me
.network
.rate
;
31 params
[me
.confid
] = PVE
.Parser
.printQemuNetwork(me
.network
);
36 setNetwork: function(confid
, data
) {
42 data
.networkmode
= data
.bridge
? 'bridge' : 'nat';
45 data
.networkmode
= 'bridge';
49 me
.setValues(me
.network
);
52 setNodename: function(nodename
) {
55 me
.bridgesel
.setNodename(nodename
);
58 initComponent : function() {
67 me
.bridgesel
= Ext
.create('PVE.form.BridgeSelector', {
69 fieldLabel
: gettext('Bridge'),
70 nodename
: me
.nodename
,
78 xtype
: 'pveVlanField',
83 xtype
: 'proxmoxcheckbox',
84 fieldLabel
: gettext('Firewall'),
89 me
.advancedColumn1
= [
91 xtype
: 'proxmoxcheckbox',
92 fieldLabel
: gettext('Disconnect'),
97 if (me
.insideWizard
) {
102 boxLabel
: gettext('No network device'),
104 change: function(cb
, value
) {
115 fields
.forEach(function(fieldname
) {
116 me
.down('field[name='+fieldname
+']').setDisabled(value
);
118 me
.down('field[name=bridge]').validate();
123 xtype
: 'displayfield'
129 xtype
: 'pveNetworkCardSelector',
131 fieldLabel
: gettext('Model'),
132 value
: PVE
.qemu
.OSDefaults
.generic
.networkCard
,
138 fieldLabel
: gettext('MAC address'),
143 me
.advancedColumn2
= [
145 xtype
: 'numberfield',
147 fieldLabel
: gettext('Rate limit') + ' (MB/s)',
151 emptyText
: 'unlimited',
155 xtype
: 'proxmoxintegerfield',
157 fieldLabel
: 'Multiqueue',
169 Ext
.define('PVE.qemu.NetworkEdit', {
170 extend
: 'Proxmox.window.Edit',
174 initComponent : function() {
175 /*jslint confusion: true */
179 var nodename
= me
.pveSelNode
.data
.node
;
181 throw "no node name specified";
184 me
.isCreate
= me
.confid
? false : true;
186 var ipanel
= Ext
.create('PVE.qemu.NetworkInputPanel', {
192 subject
: gettext('Network Device'),
199 success: function(response
, options
) {
201 me
.vmconfig
= response
.result
.data
;
203 var value
= me
.vmconfig
[me
.confid
];
204 var network
= PVE
.Parser
.parseQemuNetwork(me
.confid
, value
);
206 Ext
.Msg
.alert(gettext('Error'), 'Unable to parse network options');
210 ipanel
.setNetwork(me
.confid
, network
);
212 for (i
= 0; i
< 100; i
++) {
213 confid
= 'net' + i
.toString();
214 if (!Ext
.isDefined(me
.vmconfig
[confid
])) {
219 ipanel
.setNetwork(me
.confid
);