for better re-use between pbs and pve move the markdown notes panel
and editor window to the widget kit and unify them there.

Signed-off-by: Stefan Sterz <s.st...@proxmox.com>
---
 www/Makefile               |   1 -
 www/NodeNotes.js           |   2 +-
 www/panel/MarkdownNotes.js | 130 -------------------------------------
 3 files changed, 1 insertion(+), 132 deletions(-)
 delete mode 100644 www/panel/MarkdownNotes.js

diff --git a/www/Makefile b/www/Makefile
index aff0c901..922d8de9 100644
--- a/www/Makefile
+++ b/www/Makefile
@@ -81,7 +81,6 @@ JSSRC=                                                        
\
        panel/StorageAndDisks.js                        \
        panel/UsageChart.js                             \
        panel/NodeInfo.js                               \
-       panel/MarkdownNotes.js                          \
        ZFSList.js                                      \
        DirectoryList.js                                \
        LoginView.js                                    \
diff --git a/www/NodeNotes.js b/www/NodeNotes.js
index 7fa3f2e6..f237f556 100644
--- a/www/NodeNotes.js
+++ b/www/NodeNotes.js
@@ -11,7 +11,7 @@ Ext.define('PBS.NodeNotes', {
            xtype: 'container',
            layout: 'fit',
            items: [{
-               xtype: 'pbsMarkdownNotes',
+               xtype: 'pmxNotesView',
                tools: false,
                border: false,
                node: 'localhost',
diff --git a/www/panel/MarkdownNotes.js b/www/panel/MarkdownNotes.js
deleted file mode 100644
index 6d601401..00000000
--- a/www/panel/MarkdownNotes.js
+++ /dev/null
@@ -1,130 +0,0 @@
-Ext.define('PBS.panel.MarkdownNotes', {
-    extend: 'Ext.panel.Panel',
-    xtype: 'pbsMarkdownNotes',
-    mixins: ['Proxmox.Mixin.CBind'],
-
-    title: gettext("Notes"),
-    bodyPadding: 10,
-    scrollable: true,
-    animCollapse: false,
-    maxLength: 64*1022,
-
-    cbindData: function(initalConfig) {
-       let me = this;
-
-       if (!me.node) {
-           throw 'no node provided, cannot construct url';
-       }
-
-       me.url = `/api2/extjs/nodes/${me.node}/config`;
-       return {};
-    },
-
-    run_editor: function() {
-       let me = this;
-       Ext.create('Proxmox.window.Edit', {
-           title: gettext('Notes'),
-           onlineHelp: 'markdown_basics',
-           width: 800,
-           height: 600,
-           resizable: true,
-           layout: 'fit',
-           defaultButton: undefined,
-           items: {
-               xtype: 'textarea',
-               maxLength: me.maxLength,
-               name: 'description',
-               height: '100%',
-               value: '',
-               hideLabel: true,
-               emptyText: gettext('You can use Markdown for rich text 
formatting.'),
-               fieldStyle: {
-                   'white-space': 'pre-wrap',
-                   'font-family': 'monospace',
-               },
-           },
-           url: me.url,
-           listeners: {
-               destroy: function() {
-                   me.load();
-               },
-           },
-           autoShow: true,
-           autoLoad: true,
-       });
-    },
-
-    setNotes: function(value) {
-       let me = this;
-       var data = value || '';
-
-       let mdHtml = Proxmox.Markdown.parse(data);
-       me.update(mdHtml);
-
-       if (me.collapsible && me.collapseMode === 'auto') {
-           me.setCollapsed(data === '');
-       }
-    },
-
-    load: function() {
-       var me = this;
-
-       Proxmox.Utils.API2Request({
-           url: me.url,
-           waitMsgTarget: me,
-           failure: function(response, opts) {
-               Ext.Msg.alert(gettext('Error'), response.htmlStatus);
-               me.setCollapsed(false);
-           },
-           success: function(response, opts) {
-               me.setNotes(response.result.data.description);
-           },
-       });
-    },
-
-    listeners: {
-       render: function(c) {
-           var me = this;
-           me.getEl().on('dblclick', me.run_editor, me);
-       },
-       afterlayout: function() {
-           let me = this;
-           if (me.collapsible && !me.getCollapsed() && me.collapseMode === 
'always') {
-               me.setCollapsed(true);
-               me.collapseMode = ''; // only once, on initial load!
-           }
-       },
-    },
-
-    tools: [{
-       type: 'gear',
-       handler: function() {
-           this.up('panel').run_editor();
-       },
-    }],
-
-    tbar: {
-       itemId: 'tbar',
-       hidden: true,
-       items: [
-           {
-               text: gettext('Edit'),
-               handler: function() {
-                   this.up('panel').run_editor();
-               },
-           },
-       ],
-    },
-
-    initComponent: function() {
-       var me = this;
-
-       me.callParent();
-
-       if (me.enableTbar === true) {
-           me.down('#tbar').setVisible(true);
-       }
-
-       me.load();
-    },
-});
-- 
2.30.2



_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

Reply via email to