]>
Commit | Line | Data |
---|---|---|
f1e32362 | 1 | Ext.define('PMG.RuleConfiguration', { |
13fe6e87 | 2 | extend: 'Ext.panel.Panel', |
f1e32362 DM |
3 | alias: 'widget.pmgRuleConfiguration', |
4 | ||
13fe6e87 | 5 | title: gettext('Rules'), |
f1e32362 | 6 | |
13fe6e87 DM |
7 | layout: { type: 'hbox', align: 'stretch' }, |
8 | border: false, | |
66636ecf | 9 | |
13fe6e87 | 10 | initComponent : function() { |
66636ecf DM |
11 | var me = this; |
12 | ||
13fe6e87 DM |
13 | var left = Ext.create('PMG.RuleList', { |
14 | width: 300, | |
15 | subject: me.title, | |
16 | border: false | |
17 | }); | |
f1e32362 | 18 | |
ad834b6f | 19 | var right = Ext.create('PMG.RuleInfo', { |
13fe6e87 DM |
20 | border: false, |
21 | flex: 1, | |
22 | listeners: { | |
ad834b6f | 23 | dblclickRuleInfo: function(w, e, t, ruledata) { |
13fe6e87 DM |
24 | // test if the correct groups is selected (just to be sure) |
25 | var rec = left.selModel.getSelection()[0]; | |
ad834b6f | 26 | if (rec && rec.data && rec.data.id === ruledata.id) { |
13fe6e87 DM |
27 | left.run_editor(); |
28 | return; | |
66636ecf | 29 | } |
13fe6e87 | 30 | } |
66636ecf DM |
31 | } |
32 | }); | |
33 | ||
ad834b6f DM |
34 | me.mon(left.store, "refresh", function() { |
35 | right.reload(); | |
36 | }); | |
37 | ||
13fe6e87 DM |
38 | me.mon(left.selModel, "selectionchange", function() { |
39 | var rec = left.selModel.getSelection()[0]; | |
40 | if (!(rec && rec.data && rec.data.id)) { | |
ad834b6f | 41 | right.setBaseUrl(undefined); |
13fe6e87 DM |
42 | return; |
43 | } | |
13fe6e87 DM |
44 | var baseurl = '/config/ruledb/rules/' + rec.data.id; |
45 | right.setBaseUrl(baseurl); | |
46 | }); | |
66636ecf | 47 | |
13fe6e87 | 48 | me.items = [ left, { xtype: 'splitter' }, right ]; |
66636ecf DM |
49 | |
50 | me.callParent(); | |
66636ecf DM |
51 | } |
52 | }); |