]>
Commit | Line | Data |
---|---|---|
b49fb084 DM |
1 | Ext.define('PVE.panel.NotesView', { |
2 | extend: 'Ext.panel.Panel', | |
ade55c15 | 3 | xtype: 'pveNotesView', |
b49fb084 | 4 | |
6f68dcbe | 5 | title: gettext("Notes"), |
6f68dcbe EK |
6 | bodyStyle: 'white-space:pre', |
7 | bodyPadding: 10, | |
8 | scrollable: true, | |
9 | ||
b49fb084 DM |
10 | load: function() { |
11 | var me = this; | |
12 | ||
e7ade592 | 13 | Proxmox.Utils.API2Request({ |
b49fb084 DM |
14 | url: me.url, |
15 | waitMsgTarget: me, | |
16 | failure: function(response, opts) { | |
17 | me.update(gettext('Error') + " " + response.htmlStatus); | |
18 | }, | |
19 | success: function(response, opts) { | |
20 | var data = response.result.data.description || ''; | |
21 | me.update(Ext.htmlEncode(data)); | |
22 | } | |
23 | }); | |
24 | }, | |
25 | ||
26 | initComponent : function() { | |
27 | var me = this; | |
28 | ||
29 | var nodename = me.pveSelNode.data.node; | |
30 | if (!nodename) { | |
31 | throw "no node name specified"; | |
32 | } | |
33 | ||
34 | var vmid = me.pveSelNode.data.vmid; | |
35 | if (!vmid) { | |
36 | throw "no VM ID specified"; | |
37 | } | |
38 | ||
39 | var vmtype = me.pveSelNode.data.type; | |
40 | var url; | |
41 | ||
42 | if (vmtype === 'qemu') { | |
43 | me.url = '/api2/extjs/nodes/' + nodename + '/qemu/' + vmid + '/config'; | |
44 | } else if (vmtype === 'lxc') { | |
45 | me.url = '/api2/extjs/nodes/' + nodename + '/lxc/' + vmid + '/config'; | |
46 | } else { | |
47 | throw "unknown vm type '" + vmtype + "'"; | |
48 | } | |
49 | ||
50 | Ext.apply(me, { | |
b49fb084 DM |
51 | listeners: { |
52 | render: function(c) { | |
53 | c.el.on('dblclick', function() { | |
54 | var win = Ext.create('PVE.window.NotesEdit', { | |
55 | pveSelNode: me.pveSelNode, | |
56 | url: me.url | |
57 | }); | |
58 | win.show(); | |
59 | win.on('destroy', me.load, me); | |
60 | }); | |
61 | } | |
5240a1a3 DC |
62 | }, |
63 | tools: [{ | |
64 | type: 'gear', | |
65 | handler: function() { | |
66 | var win = Ext.create('PVE.window.NotesEdit', { | |
67 | pveSelNode: me.pveSelNode, | |
68 | url: me.url | |
69 | }); | |
70 | win.show(); | |
71 | win.on('destroy', me.load, me); | |
72 | } | |
73 | }] | |
b49fb084 DM |
74 | }); |
75 | ||
76 | me.callParent(); | |
77 | } | |
78 | }); |