]>
git.proxmox.com Git - proxmox-backup.git/blob - www/DataStoreNotes.js
1 Ext
.define('PBS.DataStoreNotes', {
2 extend
: 'Ext.panel.Panel',
3 xtype
: 'pbsDataStoreNotes',
4 mixins
: ['Proxmox.Mixin.CBind'],
6 title
: gettext("Comment"),
7 bodyStyle
: 'white-space:pre',
12 cbindData: function(initalConfig
) {
14 me
.url
= `/api2/extjs/config/datastore/${me.datastore}`;
18 run_editor: function() {
20 let win
= Ext
.create('Proxmox.window.Edit', {
21 title
: gettext('Comment'),
25 defaultButton
: undefined,
42 setNotes: function(value
) {
44 var data
= value
|| '';
45 me
.update(Ext
.htmlEncode(data
));
47 if (me
.collapsible
&& me
.collapseMode
=== 'auto') {
48 me
.setCollapsed(data
=== '');
55 Proxmox
.Utils
.API2Request({
58 failure: function(response
, opts
) {
59 me
.update(gettext('Error') + " " + response
.htmlStatus
);
60 me
.setCollapsed(false);
62 success: function(response
, opts
) {
63 me
.setNotes(response
.result
.data
.comment
);
71 me
.getEl().on('dblclick', me
.run_editor
, me
);
73 afterlayout: function() {
75 if (me
.collapsible
&& !me
.getCollapsed() && me
.collapseMode
=== 'always') {
76 me
.setCollapsed(true);
77 me
.collapseMode
= ''; // only once, on initial load!
85 this.up('panel').run_editor();
90 collapseDirection
: 'right',
92 initComponent: function() {
97 let sp
= Ext
.state
.Manager
.getProvider();
98 me
.collapseMode
= sp
.get('notes-collapse', 'never');
100 if (me
.collapseMode
=== 'auto') {
101 me
.setCollapsed(true);