]>
git.proxmox.com Git - pve-manager.git/blob - www/manager6/panel/NotesView.js
1 Ext
.define('PVE.panel.NotesView', {
2 extend
: 'Ext.panel.Panel',
5 title
: gettext("Notes"),
6 bodyStyle
: 'white-space:pre',
16 text
: gettext('Edit'),
18 var me
= this.up('panel');
25 run_editor: function() {
27 var win
= Ext
.create('PVE.window.NotesEdit', {
28 pveSelNode
: me
.pveSelNode
,
32 win
.on('destroy', me
.load
, me
);
38 Proxmox
.Utils
.API2Request({
41 failure: function(response
, opts
) {
42 me
.update(gettext('Error') + " " + response
.htmlStatus
);
43 me
.setCollapsed(false);
45 success: function(response
, opts
) {
46 var data
= response
.result
.data
.description
|| '';
47 me
.update(Ext
.htmlEncode(data
));
49 if (me
.collapsible
&& me
.collapseMode
=== 'auto') {
50 me
.setCollapsed(data
=== '');
59 me
.getEl().on('dblclick', me
.run_editor
, me
);
61 afterlayout: function() {
63 if (me
.collapsible
&& !me
.getCollapsed() && me
.collapseMode
=== 'always') {
64 me
.setCollapsed(true);
65 me
.collapseMode
= ''; // only once, on initial load!
73 var me
= this.up('panel');
78 initComponent : function() {
81 var nodename
= me
.pveSelNode
.data
.node
;
83 throw "no node name specified";
86 var type
= me
.pveSelNode
.data
.type
;
87 if (!Ext
.Array
.contains(['node', 'qemu', 'lxc'], type
)) {
88 throw 'invalid type specified';
91 var vmid
= me
.pveSelNode
.data
.vmid
;
92 if (!vmid
&& type
!== 'node') {
93 throw "no VM ID specified";
96 me
.url
= '/api2/extjs/nodes/' + nodename
+ '/';
98 // add the type specific path if qemu/lxc
99 if (type
=== 'qemu' || type
=== 'lxc') {
100 me
.url
+= type
+ '/' + vmid
+ '/';
106 if (type
=== 'node') {
107 me
.down('#tbar').setVisible(true);
108 } else if (me
.pveSelNode
.data
.template
!== 1) {
109 me
.setCollapsible(true);
110 me
.collapseDirection
= 'right';
112 let sp
= Ext
.state
.Manager
.getProvider();
113 me
.collapseMode
= sp
.get('guest-notes-collapse', 'never');
115 if (me
.collapseMode
=== 'auto') {
116 me
.setCollapsed(true);