From 595d0457d09910f142e2a543d6bac0d690bd3eb1 Mon Sep 17 00:00:00 2001 From: Dominik Csapak Date: Fri, 3 May 2019 14:06:13 +0200 Subject: [PATCH] fix #2183: fix blinking subscription and show unknown status we skip offline nodes, check for nodes without subscription, and finally check for different levels if for some reason we do not get any subscription status (should not happen) we show 'unknown' Signed-off-by: Dominik Csapak --- www/manager6/dc/Summary.js | 38 +++++++++++++++++++++++++++++--------- 1 file changed, 29 insertions(+), 9 deletions(-) diff --git a/www/manager6/dc/Summary.js b/www/manager6/dc/Summary.js index 091ece76..c7bfe07a 100644 --- a/www/manager6/dc/Summary.js +++ b/www/manager6/dc/Summary.js @@ -236,40 +236,60 @@ Ext.define('PVE.dc.Summary', { if (records[i].get('type') !== 'node') { continue; } + var node = records[i]; + if (node.get('status') === 'offline') { + continue; + } - curlevel = records[i].get('level'); - if (level === undefined || !curlevel) { + curlevel = node.get('level'); + + // no subscription, set and break + if (curlevel === '') { + level = ''; + break; + } + + // save level + if (level === undefined) { level = curlevel; continue; } + // detect different levels if (level !== curlevel) { break; } } + var data = { + title: Proxmox.Utils.unknownText, + text: Proxmox.Utils.unknownText, + iconCls: PVE.Utils.get_health_icon(undefined, true) + }; if (level === '') { - subs.setData({ + data = { title: gettext('No Subscription'), iconCls: PVE.Utils.get_health_icon('critical', true), text: gettext('You have at least one node without subscription.') - }); + }; subs.setUserCls('pointer'); } else if (level !== curlevel) { - subs.setData({ + data = { title: gettext('Mixed Subscriptions'), iconCls: PVE.Utils.get_health_icon('warning', true), text: gettext('Warning: Your subscription levels are not the same.') - }); + }; subs.setUserCls('pointer'); - } else { - subs.setData({ + } else if (level) { + data = { title: PVE.Utils.render_support_level(level), iconCls: PVE.Utils.get_health_icon('good', true), text: gettext('Your subscription status is valid.') - }); + }; subs.setUserCls(''); } + + subs.setData(data); }); me.on('destroy', function(){