[pve-devel] [PATCH widget-toolkit v6 3/3] add task log download button in TaskViewer
Daniel Tschlatscher
d.tschlatscher at proxmox.com
Wed Jan 4 13:56:35 CET 2023
Adds a download button in the TaskViewer. Uses the newly created
downloadAsFile() method in the Utils class.
Signed-off-by: Daniel Tschlatscher <d.tschlatscher at proxmox.com>
---
Changes from v5
* Last version erroneously used "limit=0" instead of the download
parameter in the download URL
src/window/TaskViewer.js | 17 +++++++++++++++--
1 file changed, 15 insertions(+), 2 deletions(-)
diff --git a/src/window/TaskViewer.js b/src/window/TaskViewer.js
index 5d8bb84..3d8ea00 100644
--- a/src/window/TaskViewer.js
+++ b/src/window/TaskViewer.js
@@ -230,11 +230,23 @@ Ext.define('Proxmox.window.TaskViewer', {
border: false,
});
+ let downloadBtn = new Ext.Button({
+ text: gettext('Download'),
+ iconCls: 'fa fa-download',
+ handler: function() {
+ let url = '/api2/extjs/nodes/' +
+ `${task.node}/tasks/${encodeURIComponent(me.upid)}/log?download=1`;
+
+ Proxmox.Utils.downloadAsFile(url);
+ },
+ });
+
+
let logView = Ext.create('Proxmox.panel.LogView', {
title: gettext('Output'),
- tbar: [stop_btn2],
+ tbar: [stop_btn2, '->', downloadBtn],
border: false,
- url: "/api2/extjs/nodes/" + task.node + "/tasks/" + encodeURIComponent(me.upid) + "/log",
+ url: `/api2/extjs/nodes/${task.node}/tasks/${encodeURIComponent(me.upid)}/log`,
});
me.mon(statstore, 'load', function() {
@@ -249,6 +261,7 @@ Ext.define('Proxmox.window.TaskViewer', {
stop_btn1.setDisabled(status !== 'running');
stop_btn2.setDisabled(status !== 'running');
+ downloadBtn.setDisabled(status === 'running');
});
statstore.startUpdate();
--
2.30.2
More information about the pve-devel
mailing list