Skip to content

Commit 7cf46fd

Browse files
committed
Split state badges in two rows
1 parent 9d8f55a commit 7cf46fd

File tree

4 files changed

+41
-5
lines changed

4 files changed

+41
-5
lines changed

library/Cube/CubeRenderer/HostStatusCubeRenderer.php

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,20 @@ protected function createIcingaDbCubeBadges(object $parts, object $facts): HtmlD
9090
$filter = $this->getBadgeFilter($facts);
9191
$mainBadge = $this->getMainBadge($parts);
9292

93+
$partsBottom = new stdClass();
94+
$bottomKeys = [
95+
'hosts_unreachable_unhandled',
96+
'hosts_unreachable_handled',
97+
'hosts_pending'
98+
];
99+
100+
foreach ($bottomKeys as $key) {
101+
if (property_exists($parts, $key)) {
102+
$partsBottom->$key = $parts->$key;
103+
unset($parts->$key);
104+
}
105+
}
106+
93107
$main = (new HostStateBadges($mainBadge))
94108
->setBaseFilter($filter)
95109
->addAttributes(new Attributes(['data-base-target' => '_next']));
@@ -98,6 +112,9 @@ protected function createIcingaDbCubeBadges(object $parts, object $facts): HtmlD
98112
'span',
99113
new Attributes(['class' => 'others']),
100114
(new HostStateBadges($parts))
115+
->setBaseFilter($filter)
116+
->addAttributes(new Attributes(['data-base-target' => '_next'])),
117+
(new HostStateBadges($partsBottom))
101118
->setBaseFilter($filter)
102119
->addAttributes(new Attributes(['data-base-target' => '_next']))
103120
);

library/Cube/CubeRenderer/ServiceStatusCubeRenderer.php

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,20 @@ protected function createIcingaDbCubeBadges(object $parts, object $facts): HtmlD
102102
$filter = $this->getBadgeFilter($facts);
103103
$mainBadge = $this->getMainBadge($parts);
104104

105+
$partsBottom = new stdClass();
106+
$bottomKeys = [
107+
'services_unknown_unhandled',
108+
'services_unknown_handled',
109+
'services_pending'
110+
];
111+
112+
foreach ($bottomKeys as $key) {
113+
if (property_exists($parts, $key)) {
114+
$partsBottom->$key = $parts->$key;
115+
unset($parts->$key);
116+
}
117+
}
118+
105119
$main = (new ServiceStateBadges($mainBadge))
106120
->setBaseFilter($filter)
107121
->addAttributes(new Attributes(['data-base-target' => '_next']));
@@ -110,6 +124,9 @@ protected function createIcingaDbCubeBadges(object $parts, object $facts): HtmlD
110124
'span',
111125
new Attributes(['class' => 'others']),
112126
(new ServiceStateBadges($parts))
127+
->setBaseFilter($filter)
128+
->addAttributes(new Attributes(['data-base-target' => '_next'])),
129+
(new ServiceStateBadges($partsBottom))
113130
->setBaseFilter($filter)
114131
->addAttributes(new Attributes(['data-base-target' => '_next']))
115132
);

public/css/module.less

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,7 @@ div.cube {
164164
display: flex;
165165
text-align: center;
166166
color: @text-color-on-icinga-blue;
167-
margin-bottom: 1em;
167+
margin-bottom: 0.5em;
168168

169169
> a:first-child {
170170
flex: 1;
@@ -283,7 +283,7 @@ div.cube {
283283
}
284284

285285
.state-badge {
286-
font-size: 2em;
286+
font-size: 1.6em;
287287

288288
&.handled {
289289
&.state-down {
@@ -307,10 +307,11 @@ div.cube {
307307
.others {
308308
display: flex;
309309
justify-content: center;
310+
align-items: center;
311+
flex-direction: column;
310312

311313
span {
312-
margin-top: 0.8em;
313-
font-size: 1em;
314+
font-size: 0.9em;
314315
& :not(.state-badge) {
315316
margin-left: 0.2em;
316317
}

public/css/state-badges.less

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
.state-badges {
22
padding: 0;
3-
margin: 0;
3+
margin: 0.1em 0;
4+
min-height: 2em;
45

56
ul {
67
padding: 0;

0 commit comments

Comments
 (0)