[pve-devel] [PATCH widget-toolkit v2 3/4] TaskViewer: show endtime and duration in status
Dominik Csapak
d.csapak at proxmox.com
Mon Jun 15 16:07:10 CEST 2020
but only when the caller gives us the endtime, since the status
api call does not give us the endtime
Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
---
changes from v1:
* always show duration and calculate the endtime from 'now'
src/node/Tasks.js | 1 +
src/window/TaskViewer.js | 25 +++++++++++++++++++++++++
2 files changed, 26 insertions(+)
diff --git a/src/node/Tasks.js b/src/node/Tasks.js
index 5aff06d..c41f0b5 100644
--- a/src/node/Tasks.js
+++ b/src/node/Tasks.js
@@ -60,6 +60,7 @@ Ext.define('Proxmox.node.Tasks', {
let win = Ext.create('Proxmox.window.TaskViewer', {
upid: rec.data.upid,
+ endtime: rec.data.endtime,
});
win.show();
};
diff --git a/src/window/TaskViewer.js b/src/window/TaskViewer.js
index 2f31023..51715f8 100644
--- a/src/window/TaskViewer.js
+++ b/src/window/TaskViewer.js
@@ -152,6 +152,31 @@ Ext.define('Proxmox.window.TaskViewer', {
},
};
+ if (me.endtime) {
+ if (typeof me.endtime === 'object') {
+ // convert to epoch
+ me.endtime = parseInt(me.endtime.getTime()/1000, 10);
+ }
+ rows.endtime = {
+ header: gettext('End Time'),
+ required: true,
+ renderer: function() {
+ return Proxmox.Utils.render_timestamp(me.endtime);
+ },
+ };
+ }
+
+ rows.duration = {
+ header: gettext('Duration'),
+ required: true,
+ renderer: function() {
+ let starttime = statgrid.getObjectValue('starttime');
+ let endtime = me.endtime || Date.now()/1000;
+ let duration = endtime - starttime;
+ return Proxmox.Utils.format_duration_human(duration);
+ },
+ };
+
let statstore = Ext.create('Proxmox.data.ObjectStore', {
url: "/api2/json/nodes/" + task.node + "/tasks/" + me.upid + "/status",
interval: 1000,
--
2.20.1
More information about the pve-devel
mailing list