<div class="row mx-0">
<cd-card title="Details"
i18n-title
- class="col-sm-3 px-3">
+ class="col-sm-3 px-3"
+ [ngClass]="{'d-flex': flexHeight}">
<dl class="ms-4 me-4">
<dt>FSID</dt>
<dd>{{ detailsCardData.fsid }}</dd>
- <dt>Orchestror</dt>
- <dd>{{ detailsCardData.orchestrator }}</dd>
+ <dt>Orchestrator</dt>
+ <dd i18n>{{ detailsCardData.orchestrator || 'Orchestrator is not available' }}</dd>
<dt>Ceph version</dt>
<dd>{{ detailsCardData.cephVersion }}</dd>
</dl>
<cd-card title="Status"
i18n-title
- class="col-sm-6 px-3">
- <div class="d-flex ms-4 me-4 mb-5">
+ class="col-sm-6 px-3 d-flex">
+ <div class="d-flex ms-4 me-4 mb-5 center-content">
<i *ngIf="healthData.health?.status"
- [ngClass]="[healthData.health.status | healthIcon, icons.large]"
+ [ngClass]="[healthData.health.status | healthIcon, icons.large2x]"
[ngStyle]="healthData.health.status | healthColor"
[title]="healthData.health.status"></i>
- <span class="ms-2 mt-n1"
+ <span class="ms-2 mt-n1 lead"
i18n>Cluster</span>
</div>
<section class="border-top mt-5"
data-toggle="collapse"
aria-label="toggle alert window"
[attr.aria-expanded]="showAlerts"
- (click)="toggleAlertsWindow('danger')"></button>
+ (click)="toggleAlertsWindow('danger', 'true')"></button>
</div>
</div>
<cd-card title="Capacity"
i18n-title
- class="col-sm-3 px-3">
+ class="col-sm-3 px-3"
+ [ngClass]="{'d-flex': flexHeight}">
<ng-container class="ms-4 me-4"
*ngIf="capacity && osdSettings">
<cd-dashboard-pie [data]="{max: capacity.total_bytes, current: capacity.total_used_raw_bytes}"
</ng-container>
</cd-card>
</div>
- <!-- Inventory Card -->
+ <!-- Second row -->
<div class="row mx-0">
+ <!-- Inventory Card -->
<cd-card title="Inventory"
i18n-title
- class="col-sm-3 px-3">
+ class="col-sm-3 px-3 d-flex">
<!-- Hosts -->
<li class="border-top list-group-item">
<cd-card-row [data]="healthData.hosts"
link="/rgw/daemon"
title="Object Gateway"
summaryType="simplified"
- *ngIf="healthData.rgw"></cd-card-row>
+ *ngIf="healthData.rgw || healthData.rgw === 0 "></cd-card-row>
</li>
<!-- Metadata Servers -->
<cd-card title="Cluster utilization"
i18n-title
- class="col-sm-6 px-3">
- <div class="ms-4 me-4">
+ class="col-sm-9 px-3 d-flex">
+ <div class="ms-4 me-4 mt-0">
<cd-dashboard-time-selector (selectedTime)="getPrometheusData($event)">
</cd-dashboard-time-selector>
<ng-container *ngIf="capacity">
dataUnits="none"
label="IPS"
label2="OPS"
- [data]="queriesResults.IPS"
- [data2]="queriesResults.OPS">
+ [data]="queriesResults.OPS"
+ [data2]="queriesResults.IPS">
</cd-dashboard-area-chart>
<cd-dashboard-area-chart chartTitle="Latency"
dataUnits="ms"
</cd-dashboard-area-chart>
</div>
</cd-card>
-
- <cd-card title="Events"
- i18n-title
- class="col-sm-3 px-3">
- <div class="ms-4 me-4">
- Text
- </div>
- </cd-card>
</div>
</div>
isAlertmanagerConfigured = false;
icons = Icons;
showAlerts = false;
+ flexHeight = true;
simplebar = {
autoHide: false
};
});
}
- toggleAlertsWindow(type: string) {
+ toggleAlertsWindow(type: string, isToggleButton: boolean = false) {
+ if (isToggleButton) {
+ this.showAlerts = !this.showAlerts;
+ this.flexHeight = !this.flexHeight;
+ } else if (
+ !this.showAlerts ||
+ (this.alertType === type && type !== 'danger') ||
+ (this.alertType !== 'warning' && type === 'danger')
+ ) {
+ this.showAlerts = !this.showAlerts;
+ this.flexHeight = !this.flexHeight;
+ }
+
type === 'danger' ? (this.alertType = 'critical') : (this.alertType = type);
this.textClass = `text-${type}`;
this.borderClass = `border-${type}`;
- this.showAlerts = !this.showAlerts;
}
getDetailsCardData() {