public inbox for pve-devel@lists.proxmox.com
 help / color / mirror / Atom feed
From: Dominik Csapak <d.csapak@proxmox.com>
To: pve-devel@lists.proxmox.com
Subject: [pve-devel] [PATCH manager 4/4] ui: panel/StatusView: use from widget-toolkit instead
Date: Mon, 19 Apr 2021 13:00:48 +0200	[thread overview]
Message-ID: <20210419110048.20791-9-d.csapak@proxmox.com> (raw)
In-Reply-To: <20210419110048.20791-1-d.csapak@proxmox.com>

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
---
 www/manager6/Makefile                    |   1 -
 www/manager6/node/StatusView.js          |   2 +-
 www/manager6/panel/GuestStatusView.js    |   2 +-
 www/manager6/panel/StatusView.js         | 126 -----------------------
 www/manager6/panel/TemplateStatusView.js |   2 +-
 www/manager6/storage/StatusView.js       |   2 +-
 6 files changed, 4 insertions(+), 131 deletions(-)
 delete mode 100644 www/manager6/panel/StatusView.js

diff --git a/www/manager6/Makefile b/www/manager6/Makefile
index a2f7be6d..928d8b15 100644
--- a/www/manager6/Makefile
+++ b/www/manager6/Makefile
@@ -81,7 +81,6 @@ JSSRC= 							\
 	panel/NotesView.js				\
 	panel/RunningChart.js				\
 	panel/StatusPanel.js				\
-	panel/StatusView.js				\
 	panel/GuestStatusView.js			\
 	panel/GuestSummary.js				\
 	panel/TemplateStatusView.js			\
diff --git a/www/manager6/node/StatusView.js b/www/manager6/node/StatusView.js
index 573fbfae..afbc57e8 100644
--- a/www/manager6/node/StatusView.js
+++ b/www/manager6/node/StatusView.js
@@ -1,5 +1,5 @@
 Ext.define('PVE.node.StatusView', {
-    extend: 'PVE.panel.StatusView',
+    extend: 'Proxmox.panel.StatusView',
     alias: 'widget.pveNodeStatus',
 
     height: 300,
diff --git a/www/manager6/panel/GuestStatusView.js b/www/manager6/panel/GuestStatusView.js
index d8439e5d..8d16827e 100644
--- a/www/manager6/panel/GuestStatusView.js
+++ b/www/manager6/panel/GuestStatusView.js
@@ -1,5 +1,5 @@
 Ext.define('PVE.panel.GuestStatusView', {
-    extend: 'PVE.panel.StatusView',
+    extend: 'Proxmox.panel.StatusView',
     alias: 'widget.pveGuestStatusView',
     mixins: ['Proxmox.Mixin.CBind'],
 
diff --git a/www/manager6/panel/StatusView.js b/www/manager6/panel/StatusView.js
deleted file mode 100644
index a8f01ce8..00000000
--- a/www/manager6/panel/StatusView.js
+++ /dev/null
@@ -1,126 +0,0 @@
-Ext.define('PVE.panel.StatusView', {
-    extend: 'Ext.panel.Panel',
-    alias: 'widget.pveStatusView',
-
-    layout: {
-	type: 'column',
-    },
-
-    title: gettext('Status'),
-
-    getRecordValue: function(key, store) {
-	if (!key) {
-	    throw "no key given";
-	}
-	var me = this;
-
-	if (store === undefined) {
-	    store = me.getStore();
-	}
-
-	var rec = store.getById(key);
-	if (rec) {
-	    return rec.data.value;
-	}
-
-	return '';
-    },
-
-    fieldRenderer: function(val, max) {
-	if (max === undefined) {
-	    return val;
-	}
-
-	if (!Ext.isNumeric(max) || max === 1) {
-	    return Proxmox.Utils.render_usage(val);
-	}
-	return Proxmox.Utils.render_size_usage(val, max);
-    },
-
-    fieldCalculator: function(used, max) {
-	if (!Ext.isNumeric(max) && Ext.isNumeric(used)) {
-	    return used;
-	} else if (!Ext.isNumeric(used)) {
-	    /* we come here if the field is from a node
-	     * where the records are not mem and maxmem
-	     * but mem.used and mem.total
-	     */
-	    if (used.used !== undefined &&
-		used.total !== undefined) {
-		return used.used/used.total;
-	    }
-	}
-
-	return used/max;
-    },
-
-    updateField: function(field) {
-	var me = this;
-	var text = '';
-	var renderer = me.fieldRenderer;
-	if (Ext.isFunction(field.renderer)) {
-	    renderer = field.renderer;
-	}
-	if (field.multiField === true) {
-	    field.updateValue(renderer.call(field, me.getStore().getRecord()));
-	} else if (field.textField !== undefined) {
-	    field.updateValue(renderer.call(field, me.getRecordValue(field.textField)));
-	} else if (field.valueField !== undefined) {
-	    var used = me.getRecordValue(field.valueField);
-	    /* string and int */
-	    var max = field.maxField !== undefined ? me.getRecordValue(field.maxField) : 1;
-
-	    var calculate = me.fieldCalculator;
-
-	    if (Ext.isFunction(field.calculate)) {
-		calculate = field.calculate;
-	    }
-	    field.updateValue(renderer.call(field, used, max), calculate(used, max));
-	}
-    },
-
-    getStore: function() {
-	var me = this;
-	if (!me.rstore) {
-	    throw "there is no rstore";
-	}
-
-	return me.rstore;
-    },
-
-    updateTitle: function() {
-	var me = this;
-	me.setTitle(me.getRecordValue('name'));
-    },
-
-    updateValues: function(store, records, success) {
-	if (!success) {
-	    return; // do not update if store load was not successful
-	}
-	var me = this;
-	var itemsToUpdate = me.query('pveInfoWidget');
-
-	itemsToUpdate.forEach(me.updateField, me);
-
-	me.updateTitle(store);
-    },
-
-    initComponent: function() {
-	var me = this;
-
-	if (!me.rstore) {
-	    throw "no rstore given";
-	}
-
-	if (!me.title) {
-	    throw "no title given";
-	}
-
-	Proxmox.Utils.monStoreErrors(me, me.rstore);
-
-	me.callParent();
-
-	me.mon(me.rstore, 'load', 'updateValues');
-    },
-
-});
diff --git a/www/manager6/panel/TemplateStatusView.js b/www/manager6/panel/TemplateStatusView.js
index b8e01d43..44d983b3 100644
--- a/www/manager6/panel/TemplateStatusView.js
+++ b/www/manager6/panel/TemplateStatusView.js
@@ -1,5 +1,5 @@
 Ext.define('PVE.panel.TemplateStatusView', {
-    extend: 'PVE.panel.StatusView',
+    extend: 'Proxmox.panel.StatusView',
     alias: 'widget.pveTemplateStatusView',
 
     layout: {
diff --git a/www/manager6/storage/StatusView.js b/www/manager6/storage/StatusView.js
index e42e8a7d..923d73f2 100644
--- a/www/manager6/storage/StatusView.js
+++ b/www/manager6/storage/StatusView.js
@@ -1,5 +1,5 @@
 Ext.define('PVE.storage.StatusView', {
-    extend: 'PVE.panel.StatusView',
+    extend: 'Proxmox.panel.StatusView',
     alias: 'widget.pveStorageStatusView',
 
     height: 230,
-- 
2.20.1





  parent reply	other threads:[~2021-04-19 11:01 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-04-19 11:00 [pve-devel] [PATCH widget-toolkit/pve-manager] move some code to widget-toolkit Dominik Csapak
2021-04-19 11:00 ` [pve-devel] [PATCH widget-toolkit 1/4] Utils: add several render functions from PVE Dominik Csapak
2021-04-19 11:00 ` [pve-devel] [PATCH widget-toolkit 2/4] bring over some icons " Dominik Csapak
2021-04-19 11:00 ` [pve-devel] [PATCH widget-toolkit 3/4] Utils: refactor updateColumns from pve-manager Dominik Csapak
2021-04-19 11:00 ` [pve-devel] [PATCH widget-toolkit 4/4] panel: add StatusView from PVE Dominik Csapak
2021-04-22 18:38   ` [pve-devel] applied: " Thomas Lamprecht
2021-04-19 11:00 ` [pve-devel] [PATCH manager 1/4] ui: Utils: use render functions from widget-toolkit Dominik Csapak
2021-04-19 11:00 ` [pve-devel] [PATCH manager 2/4] ui: use some icons " Dominik Csapak
2021-04-19 11:00 ` [pve-devel] [PATCH manager 3/4] ui: Utils: use updateColumns " Dominik Csapak
2021-04-19 11:00 ` Dominik Csapak [this message]
2021-04-22 18:41 ` [pve-devel] applied: [PATCH widget-toolkit/pve-manager] move some code to widget-toolkit Thomas Lamprecht

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210419110048.20791-9-d.csapak@proxmox.com \
    --to=d.csapak@proxmox.com \
    --cc=pve-devel@lists.proxmox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal