mirror of
				https://git.proxmox.com/git/pve-manager
				synced 2025-11-04 08:57:09 +00:00 
			
		
		
		
	since most of the information on the summary page is irrelevant for templates (e.g. status,ha,using memory,graphs, etc), we only show just the information which is available and helpful since we then have the vertical space, we move the notes panel below the statuspanel, to allow visually more space for the description (which makes sense for a template) Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
		
			
				
	
	
		
			76 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			76 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
Ext.define('PVE.qemu.StatusView', {
 | 
						|
    extend: 'PVE.grid.ObjectGrid',
 | 
						|
    alias: ['widget.pveQemuStatusView'],
 | 
						|
    disabled: true,
 | 
						|
 | 
						|
    initComponent : function() {
 | 
						|
	var me = this;
 | 
						|
 | 
						|
	var nodename = me.pveSelNode.data.node;
 | 
						|
	if (!nodename) {
 | 
						|
	    throw "no node name specified";
 | 
						|
	}
 | 
						|
 | 
						|
	var vmid = me.pveSelNode.data.vmid;
 | 
						|
	if (!vmid) {
 | 
						|
	    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 '-';
 | 
						|
	    }
 | 
						|
 | 
						|
	    var maxcpu = me.getObjectValue('cpus', 1);
 | 
						|
 | 
						|
	    if (!(Ext.isNumeric(value) && Ext.isNumeric(maxcpu) && (maxcpu >= 1))) {
 | 
						|
		return '-';
 | 
						|
	    }
 | 
						|
 | 
						|
	    var per = (value * 100);
 | 
						|
 | 
						|
	    return per.toFixed(1) + '% of ' + maxcpu.toString() + (maxcpu > 1 ? 'CPUs' : 'CPU');
 | 
						|
	};
 | 
						|
 | 
						|
	var render_mem = function(value, metaData, record, rowIndex, colIndex, store) {
 | 
						|
	    var maxmem = me.getObjectValue('maxmem', 0);
 | 
						|
	    var per = (value / maxmem)*100;
 | 
						|
	    var text = "<div>" + PVE.Utils.totalText + ": " + PVE.Utils.format_size(maxmem) + "</div>" + 
 | 
						|
		"<div>" + PVE.Utils.usedText + ": " + PVE.Utils.format_size(value) + "</div>";
 | 
						|
	    return text;
 | 
						|
	};
 | 
						|
 | 
						|
	var rows = {};
 | 
						|
 | 
						|
	if (template) {
 | 
						|
	    rows = {
 | 
						|
		name: { header: gettext('Name'), defaultValue: 'no name specified' },
 | 
						|
		cpus: { header: gettext('Processors'), required: true},
 | 
						|
		maxmem: { header: gettext('Memory'), renderer: PVE.Utils.render_size, required: true},
 | 
						|
		maxdisk: { header: gettext('Bootdisk size'), renderer: PVE.Utils.render_size, required: true}
 | 
						|
	    };
 | 
						|
	} else {
 | 
						|
	    rows = {
 | 
						|
		name: { header: gettext('Name'), defaultValue: 'no name specified' },
 | 
						|
		qmpstatus: { header: gettext('Status'), defaultValue: 'unknown' },
 | 
						|
		cpu: { iconCls: 'fa fa-up', 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 },
 | 
						|
		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
 | 
						|
	});
 | 
						|
 | 
						|
	me.callParent();
 | 
						|
    }
 | 
						|
});
 |