[pve-devel] [PATCH manager 2/2] remove unnecessary information from lxc templates

Dominik Csapak d.csapak at proxmox.com
Thu Jun 16 10:14:04 CEST 2016


as with vm templates, restyle the summary panel
for lxc templates

Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
---
 www/manager6/lxc/StatusView.js |  41 +++++++-----
 www/manager6/lxc/Summary.js    | 140 +++++++++++++++++++++++++----------------
 2 files changed, 112 insertions(+), 69 deletions(-)

diff --git a/www/manager6/lxc/StatusView.js b/www/manager6/lxc/StatusView.js
index 46aed9e..426b4cc 100644
--- a/www/manager6/lxc/StatusView.js
+++ b/www/manager6/lxc/StatusView.js
@@ -15,6 +15,8 @@ Ext.define('PVE.lxc.StatusView', {
 	    throw "no VM ID specified";
 	}
 
+	var template = !!me.pveSelNode.data.template;
+
 	var render_cpu = function(value, metaData, record, rowIndex, colIndex, store) {
 	    if (!me.getObjectValue('uptime')) {
 		return '-';
@@ -55,21 +57,32 @@ Ext.define('PVE.lxc.StatusView', {
 	    return value;
 	};
 
-	var rows = {
-	    name: { header: gettext('Name'), defaultValue: 'no name specified' },
-	    status: { header: gettext('Status'), defaultValue: 'unknown', renderer: render_status },
-	    failcnt: { visible: false },
-	    cpu: { header: gettext('CPU usage'), required: true,  renderer: render_cpu },
-	    cpus: { visible: false },
-	    mem: { header: gettext('Memory usage'), required: true,  renderer: render_mem },
-	    maxmem: { visible: false },
-	    swap: { header: gettext('VSwap usage'), required: true,  renderer: render_swap },
-	    maxswap: { visible: false },
-	    maxdisk: { header: gettext('Bootdisk size'), renderer: PVE.Utils.render_size, required: true},
-	    uptime: { header: gettext('Uptime'), required: true, renderer: PVE.Utils.render_uptime },
-	    ha: { header: gettext('Managed by HA'), required: true, renderer: PVE.Utils.format_ha }
-	};
+	var rows = {};
 
+	if (template) {
+	    rows = {
+		name: { header: gettext('Name'), defaultValue: 'no name specified' },
+		cpus: { header: gettext('CPU limit'), required: true},
+		maxmem: { header: gettext('Memory'), required: true,  renderer: PVE.Utils.render_size },
+		maxswap: { header: gettext('VSwap'), required: true,  renderer: PVE.Utils.render_size },
+		maxdisk: { header: gettext('Bootdisk size'), renderer: PVE.Utils.render_size, required: true}
+	    };
+	} else {
+	    rows = {
+		name: { header: gettext('Name'), defaultValue: 'no name specified' },
+		status: { header: gettext('Status'), defaultValue: 'unknown', renderer: render_status },
+		failcnt: { visible: false },
+		cpu: { header: gettext('CPU usage'), required: true,  renderer: render_cpu },
+		cpus: { visible: false },
+		mem: { header: gettext('Memory usage'), required: true,  renderer: render_mem },
+		maxmem: { visible: false },
+		swap: { header: gettext('VSwap usage'), required: true,  renderer: render_swap },
+		maxswap: { visible: false },
+		maxdisk: { header: gettext('Bootdisk size'), renderer: PVE.Utils.render_size, required: true},
+		uptime: { header: gettext('Uptime'), required: true, renderer: PVE.Utils.render_uptime },
+		ha: { header: gettext('Managed by HA'), required: true, renderer: PVE.Utils.format_ha }
+	    };
+	}
 	Ext.applyIf(me, {
 	    cwidth1: 150,
 	    rows: rows
diff --git a/www/manager6/lxc/Summary.js b/www/manager6/lxc/Summary.js
index b675956..bf491ff 100644
--- a/www/manager6/lxc/Summary.js
+++ b/www/manager6/lxc/Summary.js
@@ -2,7 +2,6 @@ Ext.define('PVE.lxc.Summary', {
     extend: 'Ext.panel.Panel',
     alias: 'widget.pveLxcSummary',
 
-    tbar: [ '->' , { xtype: 'pveRRDTypeSelector' } ],
     scrollable: true,
     bodyPadding: 10,
 
@@ -27,30 +26,27 @@ Ext.define('PVE.lxc.Summary', {
 	    throw "no status storage specified";
 	}
 
+	var template = !!me.pveSelNode.data.template;
 	var rstore = me.statusStore;
 
 	var statusview = Ext.create('PVE.lxc.StatusView', {
 	    title: gettext('Status'),
 	    pveSelNode: me.pveSelNode,
-	    width: 400,
+	    width: template ? 800 : 400,
 	    rstore: rstore
 	});
 
 	var notesview = Ext.create('PVE.panel.NotesView', {
 	    pveSelNode: me.pveSelNode,
-	    padding: '0 0 0 10',
+	    padding: template ? '10 0 0 0' : '0 0 0 10',
 	    flex: 1
 	});
 
-	var rrdstore = Ext.create('PVE.data.RRDStore', {
-	    rrdurl: "/api2/json/nodes/" + nodename + "/lxc/" + vmid + "/rrddata"
-	});
-
-	Ext.apply(me, {
-	    plugins: {
-		ptype: 'lazyitems',
-		items: [
-		    {
+	if (template) {
+	    Ext.apply(me, {
+		plugins: {
+		    ptype: 'lazyitems',
+		    items: [{
 			xtype: 'container',
 			layout: {
 			    type: 'column'
@@ -58,57 +54,91 @@ Ext.define('PVE.lxc.Summary', {
 			defaults: {
 			    padding: '0 10 10 0'
 			},
-			items: [
-			    {
+			items: [{
 				width: 800,
-				height: 300,
 				layout: {
-				    type: 'hbox',
+				    type: 'vbox',
 				    align: 'stretch'
 				},
 				border: false,
 				items: [ statusview, notesview ]
+			}]
+		    }]
+		},
+		listeners: {
+		    activate: function() { notesview.load(); }
+		}
+	    });
+	} else {
+	    var rrdstore = Ext.create('PVE.data.RRDStore', {
+		rrdurl: "/api2/json/nodes/" + nodename + "/lxc/" + vmid + "/rrddata"
+	    });
+
+	    Ext.apply(me, {
+		tbar: [ '->' , { xtype: 'pveRRDTypeSelector' } ],
+		plugins: {
+		    ptype: 'lazyitems',
+		    items: [
+			{
+			    xtype: 'container',
+			    layout: {
+				type: 'column'
 			    },
-			    {
-				xtype: 'pveRRDChart',
-				title: gettext('CPU usage'),
-				pveSelNode: me.pveSelNode,
-				fields: ['cpu'],
-				fieldTitles: [gettext('CPU usage')],
-				store: rrdstore
-			    },
-			    {
-				xtype: 'pveRRDChart',
-				title: gettext('Memory usage'),
-				pveSelNode: me.pveSelNode,
-				fields: ['maxmem', 'mem'],
-				fieldTitles: [gettext('Total'), gettext('RAM usage')],
-				store: rrdstore
-			    },
-			    {
-				xtype: 'pveRRDChart',
-				title: gettext('Network traffic'),
-				pveSelNode: me.pveSelNode,
-				fields: ['netin','netout'],
-				store: rrdstore
+			    defaults: {
+				padding: '0 10 10 0'
 			    },
-			    {
-				xtype: 'pveRRDChart',
-				title: gettext('Disk IO'),
-				pveSelNode: me.pveSelNode,
-				fields: ['diskread','diskwrite'],
-				store: rrdstore
-			    }
-			]
-		    }
-		]
-	    },
-	    listeners: {
-		activate: function() { notesview.load(); rrdstore.startUpdate(); },
-		hide: rrdstore.stopUpdate,
-		destroy: rrdstore.stopUpdate
-	    }
-	});
+			    items: [
+				{
+				    width: 800,
+				    height: 300,
+				    layout: {
+					type: 'hbox',
+					align: 'stretch'
+				    },
+				    border: false,
+				    items: [ statusview, notesview ]
+				},
+				{
+				    xtype: 'pveRRDChart',
+				    title: gettext('CPU usage'),
+				    pveSelNode: me.pveSelNode,
+				    fields: ['cpu'],
+				    fieldTitles: [gettext('CPU usage')],
+				    store: rrdstore
+				},
+				{
+				    xtype: 'pveRRDChart',
+				    title: gettext('Memory usage'),
+				    pveSelNode: me.pveSelNode,
+				    fields: ['maxmem', 'mem'],
+				    fieldTitles: [gettext('Total'), gettext('RAM usage')],
+				    store: rrdstore
+				},
+				{
+				    xtype: 'pveRRDChart',
+				    title: gettext('Network traffic'),
+				    pveSelNode: me.pveSelNode,
+				    fields: ['netin','netout'],
+				    store: rrdstore
+				},
+				{
+				    xtype: 'pveRRDChart',
+				    title: gettext('Disk IO'),
+				    pveSelNode: me.pveSelNode,
+				    fields: ['diskread','diskwrite'],
+				    store: rrdstore
+				}
+			    ]
+			}
+		    ]
+		},
+		listeners: {
+		    activate: function() { notesview.load(); rrdstore.startUpdate(); },
+		    hide: rrdstore.stopUpdate,
+		    destroy: rrdstore.stopUpdate
+		}
+	    });
+	}
 
 	me.callParent();
     }
-- 
2.1.4





More information about the pve-devel mailing list