fix(ui): site-status modal API, honest agent version fallback, Directory default org name
Fresh-install bug report fixes:
- 'Master Site' button error 'app.modal.show is not a function': the
multi-site status modal used the legacy app.modal.show() signature; the app
exposes app.modal.open({title, bodyHtml, size}). The site-status request
itself worked -- only the rendering call was wrong.
- Agents with no discovery yet showed a fake 'v2.0.0' (three hardcoded
fallbacks). Now 'unknown', so a host whose agent never connected isn't
presented as an old version.
- The default org name (browser tab title) is set by theta-suite's setup.sh;
that default is fixed separately there (CFG_ORG -> Theta Directory).
This commit is contained in:
@@ -42,7 +42,7 @@ class ThetaAgentDriver extends BaseDriver {
|
||||
status: 'online',
|
||||
driver: this.name,
|
||||
agentId: agent.id,
|
||||
agentVersion: agent.version || (telemetry && telemetry.version) || 'v2.0.0',
|
||||
agentVersion: agent.version || (telemetry && telemetry.version) || 'unknown',
|
||||
lastSeen: agent.lastSeen,
|
||||
system: {
|
||||
cpu: telemetry.cpu || null,
|
||||
|
||||
@@ -100,7 +100,7 @@ class Agent extends Model {
|
||||
delete data.tokenHash;
|
||||
return {
|
||||
...data,
|
||||
version: data.version || (data.lastDiscovery && data.lastDiscovery.version) || (data.lastTelemetry && data.lastTelemetry.version) || 'v2.0.0',
|
||||
version: data.version || (data.lastDiscovery && data.lastDiscovery.version) || (data.lastTelemetry && data.lastTelemetry.version) || 'unknown',
|
||||
lastSeen: data.last_seen ? new Date(data.last_seen * 1000).toISOString() : null,
|
||||
connected: !!(liveState && liveState.connected),
|
||||
// "Online" is a live-connection fact, not a stored one. A row with a
|
||||
|
||||
@@ -118,7 +118,7 @@ class AgentManager {
|
||||
|
||||
async handleDiscovery(agent, payload) {
|
||||
const discovery = {
|
||||
version: payload.version || payload.agent_version || 'v2.0.0',
|
||||
version: payload.version || payload.agent_version || 'unknown',
|
||||
hostname: payload.hostname || '',
|
||||
ip_addresses: Array.isArray(payload.ip_addresses) ? payload.ip_addresses : [],
|
||||
public_ip: payload.public_ip || '',
|
||||
|
||||
@@ -3360,7 +3360,7 @@
|
||||
|
||||
html += '</div>';
|
||||
|
||||
app.modal.show('Multi-Site & Network Gateway Status', html, [], 'modal-lg');
|
||||
app.modal.open({ title: 'Multi-Site & Network Gateway Status', bodyHtml: html, size: 'lg' });
|
||||
} catch (e) {
|
||||
app.messages.toast('Error fetching site status: ' + e.message, 'danger');
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user