]> git.proxmox.com Git - pve-manager.git/blob - www/manager6/dc/PoolView.js
ui: fix align mode of two column container
[pve-manager.git] / www / manager6 / dc / PoolView.js
1 Ext.define('PVE.dc.PoolView', {
2 extend: 'Ext.grid.GridPanel',
3
4 alias: ['widget.pvePoolView'],
5
6 onlineHelp: 'pveum_pools',
7
8 stateful: true,
9 stateId: 'grid-pools',
10
11 initComponent: function() {
12 var me = this;
13
14 var store = new Ext.data.Store({
15 model: 'pve-pools',
16 sorters: {
17 property: 'poolid',
18 direction: 'ASC',
19 },
20 });
21
22 var reload = function() {
23 store.load();
24 };
25
26 var sm = Ext.create('Ext.selection.RowModel', {});
27
28 var remove_btn = Ext.create('Proxmox.button.StdRemoveButton', {
29 selModel: sm,
30 baseurl: '/pools/',
31 callback: function() {
32 reload();
33 },
34 getUrl: function(rec) {
35 return '/pools/?poolid=' + rec.getId();
36 },
37 });
38
39 var run_editor = function() {
40 var rec = sm.getSelection()[0];
41 if (!rec) {
42 return;
43 }
44
45 var win = Ext.create('PVE.dc.PoolEdit', {
46 poolid: rec.data.poolid,
47 });
48 win.on('destroy', reload);
49 win.show();
50 };
51
52 var edit_btn = new Proxmox.button.Button({
53 text: gettext('Edit'),
54 disabled: true,
55 selModel: sm,
56 handler: run_editor,
57 });
58
59 var tbar = [
60 {
61 text: gettext('Create'),
62 handler: function() {
63 var win = Ext.create('PVE.dc.PoolEdit', {});
64 win.on('destroy', reload);
65 win.show();
66 },
67 },
68 edit_btn, remove_btn,
69 ];
70
71 Proxmox.Utils.monStoreErrors(me, store);
72
73 Ext.apply(me, {
74 store: store,
75 selModel: sm,
76 tbar: tbar,
77 viewConfig: {
78 trackOver: false,
79 },
80 columns: [
81 {
82 header: gettext('Name'),
83 width: 200,
84 sortable: true,
85 dataIndex: 'poolid',
86 },
87 {
88 header: gettext('Comment'),
89 sortable: false,
90 renderer: Ext.String.htmlEncode,
91 dataIndex: 'comment',
92 flex: 1,
93 },
94 ],
95 listeners: {
96 activate: reload,
97 itemdblclick: run_editor,
98 },
99 });
100
101 me.callParent();
102 },
103 });