]> git.proxmox.com Git - pve-manager.git/blob - www/manager/qemu/Smbios1Edit.js
f0ff2920820d12c6fa4297b3bf3e0a06587cacc7
[pve-manager.git] / www / manager / qemu / Smbios1Edit.js
1 Ext.define('PVE.qemu.Smbios1InputPanel', {
2 extend: 'PVE.panel.InputPanel',
3 alias: 'widget.PVE.qemu.Smbios1InputPanel',
4
5 insideWizard: false,
6
7 smbios1: {},
8
9 onGetValues: function(values) {
10 var me = this;
11
12 var params = {
13 smbios1: PVE.Parser.printQemuSmbios1(values)
14 };
15
16 return params;
17 },
18
19 setSmbios1: function(data) {
20 var me = this;
21
22 me.smbios1 = data;
23
24 me.setValues(me.smbios1);
25 },
26
27 initComponent : function() {
28 var me = this;
29
30
31 me.items = [
32 {
33 xtype: 'textfield',
34 fieldLabel: 'UUID',
35 regex: /^[a-fA-F0-9]{8}(?:-[a-fA-F0-9]{4}){3}-[a-fA-F0-9]{12}$/,
36 name: 'uuid',
37 },
38 {
39 xtype: 'textfield',
40 fieldLabel: gettext('Manufacturer'),
41 regex: /^\S+$/,
42 name: 'manufacturer',
43 },
44 {
45 xtype: 'textfield',
46 fieldLabel: gettext('Product'),
47 regex: /^\S+$/,
48 name: 'product',
49 },
50 {
51 xtype: 'textfield',
52 fieldLabel: gettext('Version'),
53 regex: /^\S+$/,
54 name: 'version',
55 },
56 {
57 xtype: 'textfield',
58 fieldLabel: gettext('Serial'),
59 regex: /^\S+$/,
60 name: 'serial',
61 },
62 {
63 xtype: 'textfield',
64 fieldLabel: gettext('SKU'),
65 regex: /^\S+$/,
66 name: 'sku',
67 },
68 {
69 xtype: 'textfield',
70 fieldLabel: gettext('Family'),
71 regex: /^\S+$/,
72 name: 'family',
73 }
74 ];
75
76 me.callParent();
77 }
78 });
79
80 Ext.define('PVE.qemu.Smbios1Edit', {
81 extend: 'PVE.window.Edit',
82
83 initComponent : function() {
84 /*jslint confusion: true */
85
86 var me = this;
87
88 var ipanel = Ext.create('PVE.qemu.Smbios1InputPanel', {});
89
90 Ext.applyIf(me, {
91 subject: gettext('SMBIOS settings (type1)'),
92 width: 450,
93 items: ipanel
94 });
95
96 me.callParent();
97
98 me.load({
99 success: function(response, options) {
100 var i, confid;
101 me.vmconfig = response.result.data;
102 var value = me.vmconfig.smbios1;
103 if (value) {
104 var data = PVE.Parser.parseQemuSmbios1(value);
105 if (!data) {
106 Ext.Msg.alert(gettext('Error'), gettext('Unable to parse smbios options'));
107 me.close();
108 return;
109 }
110 ipanel.setSmbios1(data);
111 }
112 }
113 });
114 }
115 });