pve-manager/www/manager/qemu/Smbios1Edit.js
2014-07-14 08:19:50 +02:00

116 lines
2.0 KiB
JavaScript

Ext.define('PVE.qemu.Smbios1InputPanel', {
extend: 'PVE.panel.InputPanel',
alias: 'widget.PVE.qemu.Smbios1InputPanel',
insideWizard: false,
smbios1: {},
onGetValues: function(values) {
var me = this;
var params = {
smbios1: PVE.Parser.printQemuSmbios1(values)
};
return params;
},
setSmbios1: function(data) {
var me = this;
me.smbios1 = data;
me.setValues(me.smbios1);
},
initComponent : function() {
var me = this;
me.items = [
{
xtype: 'textfield',
fieldLabel: 'UUID',
regex: /^[a-fA-F0-9]{8}(?:-[a-fA-F0-9]{4}){3}-[a-fA-F0-9]{12}$/,
name: 'uuid',
},
{
xtype: 'textfield',
fieldLabel: gettext('Manufacturer'),
regex: /^\S+$/,
name: 'manufacturer',
},
{
xtype: 'textfield',
fieldLabel: gettext('Product'),
regex: /^\S+$/,
name: 'product',
},
{
xtype: 'textfield',
fieldLabel: gettext('Version'),
regex: /^\S+$/,
name: 'version',
},
{
xtype: 'textfield',
fieldLabel: gettext('Serial'),
regex: /^\S+$/,
name: 'serial',
},
{
xtype: 'textfield',
fieldLabel: gettext('SKU'),
regex: /^\S+$/,
name: 'sku',
},
{
xtype: 'textfield',
fieldLabel: gettext('Family'),
regex: /^\S+$/,
name: 'family',
}
];
me.callParent();
}
});
Ext.define('PVE.qemu.Smbios1Edit', {
extend: 'PVE.window.Edit',
initComponent : function() {
/*jslint confusion: true */
var me = this;
var ipanel = Ext.create('PVE.qemu.Smbios1InputPanel', {});
Ext.applyIf(me, {
subject: gettext('SMBIOS settings (type1)'),
width: 450,
items: ipanel
});
me.callParent();
me.load({
success: function(response, options) {
var i, confid;
me.vmconfig = response.result.data;
var value = me.vmconfig.smbios1;
if (value) {
var data = PVE.Parser.parseQemuSmbios1(value);
if (!data) {
Ext.Msg.alert(gettext('Error'), gettext('Unable to parse smbios options'));
me.close();
return;
}
ipanel.setSmbios1(data);
}
}
});
}
});