]>
git.proxmox.com Git - pmg-gui.git/blob - js/dashboard/NodeInfo.js
1c3cfa344c54bb7ab25427909c3fe91f307498f7
1 Ext
.define('PMG.NodeInfoPanel', {
2 extend
: 'Proxmox.panel.StatusView',
3 alias
: 'widget.pmgNodeInfoPanel',
16 xtype
: 'pmxInfoWidget',
23 iconCls
: 'fa fa-fw pmx-itype-icon-processor pmx-icon',
24 title
: gettext('CPU usage'),
27 renderer
: Proxmox
.Utils
.render_node_cpu_usage
,
31 iconCls
: 'pmx-icon-size fa fa-fw fa-clock-o',
32 title
: gettext('IO delay'),
41 iconCls
: 'fa fa-fw pmx-itype-icon-memory pmx-icon',
43 title
: gettext('RAM usage'),
46 renderer
: Proxmox
.Utils
.render_node_size_usage
,
50 iconCls
: 'pmx-icon-size fa fa-fw fa-tasks',
51 title
: gettext('Load average'),
56 iconCls
: 'pmx-icon-size fa fa-fw fa-hdd-o',
58 title
: gettext('HD space') + ' (root)',
61 renderer
: ({ used
, total
}) => Proxmox
.Utils
.render_size_usage(used
, total
, true),
64 iconCls
: 'pmx-icon-size fa fa-fw fa-refresh',
67 title
: gettext('SWAP usage'),
70 renderer
: Proxmox
.Utils
.render_node_size_usage
,
81 title
: gettext('CPU(s)'),
83 renderer
: Proxmox
.Utils
.render_cpu_model
,
88 title
: gettext('Kernel Version'),
90 // TODO: remove with next major and only use newish current-kernel textfield
92 //textField: 'current-kernel',
93 renderer
: ({ data
}) => {
94 if (!data
['current-kernel']) {
97 let kernel
= data
['current-kernel'];
98 let buildDate
= kernel
.version
.match(/\((.+)\)\s*$/)?.[1] ?? 'unknown';
99 return `${kernel.sysname} ${kernel.release} (${buildDate})`;
104 xtype
: 'pmxNodeInfoRepoStatus',
105 itemId
: 'repositoryStatus',
106 product
: 'Proxmox Mail Gateway',
107 repoLink
: '#pmgServerAdministration:aptrepositories',
111 updateTitle: function() {
113 var uptime
= Proxmox
.Utils
.render_uptime(me
.getRecordValue('uptime'));
114 me
.setTitle(Proxmox
.NodeName
+ ' (' + gettext('Uptime') + ': ' + uptime
+ ')');
117 initComponent: function() {
120 me
.rstore
= Ext
.create('Proxmox.data.ObjectStore', {
122 url
: '/api2/json/nodes/localhost/status',
128 me
.on('destroy', function() { me
.rstore
.stopUpdate(); });