pmg-gui/js/ObjectGroupConfiguration.js
Thomas Lamprecht c87d46fbe8 tree wide: eslint --fix
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-10-23 13:17:15 +02:00

96 lines
2.2 KiB
JavaScript

Ext.define('PMG.ObjectGroupConfiguration', {
extend: 'Ext.panel.Panel',
ogclass: undefined, // who, when, what
otype_list: [],
layout: 'border',
border: false,
initComponent: function() {
var me = this;
if (me.ogclass === undefined) {
throw "undefined object group class";
}
if (!PMG.Utils.oclass_text[me.ogclass]) {
throw "unknown object group class";
}
var left = Ext.create('PMG.ObjectGroupList', {
width: 250,
ogclass: me.ogclass,
subject: PMG.Utils.oclass_text[me.ogclass],
title: PMG.Utils.oclass_text[me.ogclass],
border: false,
split: true,
region: 'west',
});
var right = Ext.create('PMG.ObjectGroup', {
otype_list: me.otype_list,
border: false,
region: 'center',
listeners: {
dblclickOGInfo: function(w, e, t, ogdata) {
// test if the correct groups is selected (just to be sure)
var rec = left.selModel.getSelection()[0];
if (rec && rec.data && rec.data.id === ogdata.id) {
left.run_editor();
}
},
},
});
me.mon(left.store, "refresh", function() {
var rec = left.selModel.getSelection()[0];
if (!(rec && rec.data && rec.data.id)) {
return;
}
right.setObjectInfo(rec.data);
});
me.mon(left.selModel, "selectionchange", function() {
var rec = left.selModel.getSelection()[0];
if (!(rec && rec.data && rec.data.id)) {
right.setObjectInfo(undefined);
right.setBaseUrl(undefined);
return;
}
right.setObjectInfo(rec.data);
var baseurl = '/config/ruledb/' + me.ogclass + '/' + rec.data.id;
right.setBaseUrl(baseurl);
});
me.items = [left, right];
me.callParent();
},
});
Ext.define('PMG.WhoConfiguration', {
extend: 'PMG.ObjectGroupConfiguration',
xtype: 'pmgWhoConfiguration',
ogclass: 'who',
otype_list: [1000, 1001, 1002, 1003, 1004, 1005, 1006],
});
Ext.define('PMG.WhenConfiguration', {
extend: 'PMG.ObjectGroupConfiguration',
xtype: 'pmgWhenConfiguration',
ogclass: 'when',
otype_list: [2000],
});
Ext.define('PMG.WhatConfiguration', {
extend: 'PMG.ObjectGroupConfiguration',
xtype: 'pmgWhatConfiguration',
ogclass: 'what',
otype_list: [3000, 3001, 3002, 3003, 3004, 3005, 3006],
});