73 lines
3.6 KiB
PHTML
73 lines
3.6 KiB
PHTML
<?php
|
|
use Icinga\Module\Monitoring\Object\Host;
|
|
use Icinga\Module\Monitoring\Object\Service;
|
|
use Icinga\Web\Url;
|
|
|
|
/** @var \Icinga\Module\Monitoring\Object\MonitoredObject $object */
|
|
|
|
$url = Url::fromRequest();
|
|
$linkServiceName = ! ($url->getPath() === 'monitoring/service/show' && $url->getParam('service') === $object->service_description);
|
|
?>
|
|
<table class="state-table service-detail-state">
|
|
<tr>
|
|
<td class="state-col state-<?= Host::getStateText($object->host_state) ?><?= $object->host_handled ? ' handled' : '' ?>">
|
|
<div class="state-label"><?= Host::getStateText($object->host_state, true) ?></div>
|
|
<div class="state-meta">
|
|
<?= $this->timeSince($object->host_last_state_change) ?>
|
|
<?php if ((int) $object->host_state > 0 && (int) $object->host_state_type === 0): ?>
|
|
<div><?= $this->translate('Soft', 'Soft state') ?> <?= $object->host_attempt ?></div>
|
|
<?php endif ?>
|
|
</div>
|
|
</td>
|
|
<td>
|
|
<?= $this->iconImage()->host($object) ?>
|
|
<a href="<?= Url::fromPath('monitoring/host/show', array('host' => $object->host_name)) ?>">
|
|
<span class="selectable"><?= $this->escape($object->host_display_name) ?></span>
|
|
<?php if ($object->host_display_name !== $object->host_name): ?>
|
|
<span class="selectable host-meta">(<?= $this->escape($object->host_name) ?>)</span>
|
|
<?php endif ?>
|
|
</a>
|
|
<?= $this->hostFlags($object) ?>
|
|
<?php if ($object->host_address6 && $object->host_address6 !== $object->host_name): ?>
|
|
<div class="selectable host-meta" title="<?= $this->translate('IPv6 address') ?>"><?= $this->escape($object->host_address6) ?></div>
|
|
<?php endif ?>
|
|
<?php if ($object->host_address && $object->host_address !== $object->host_name): ?>
|
|
<div class="selectable host-meta" title="<?= $this->translate('IPv4 address') ?>"><?= $this->escape($object->host_address) ?></div>
|
|
<?php endif ?>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="state-col state-<?= Service::getStateText($object->service_state) ?><?= $object->service_handled ? ' handled' : '' ?>">
|
|
<div class="state-label"><?= Service::getStateText($object->service_state, true) ?></div>
|
|
<div class="state-meta">
|
|
<?= $this->timeSince($object->service_last_state_change) ?>
|
|
<?php if ((int) $object->service_state > 0 && (int) $object->service_state_type === 0): ?>
|
|
<div><?= $this->translate('Soft', 'Soft state') ?> <?= $object->service_attempt ?></div>
|
|
<?php endif ?>
|
|
</div>
|
|
</td>
|
|
<td>
|
|
<?= $this->iconImage()->service($object) ?>
|
|
<?= $this->translate('Service') ?>:
|
|
<?php
|
|
if ($linkServiceName) {
|
|
echo '<a href="' . Url::fromPath('monitoring/service/show', array(
|
|
'host' => $object->host_name,
|
|
'service' => $object->service_description
|
|
)) . '">';
|
|
}
|
|
?>
|
|
<span class="selectable"><?= $this->escape($object->service_display_name) ?></span>
|
|
<?php if ($object->service_display_name !== $object->service_description): ?>
|
|
<span class="selectable service-meta">(<?= $this->escape($object->service_description) ?>)</span>
|
|
<?php endif ?>
|
|
<?php
|
|
if ($linkServiceName) {
|
|
echo '</a>';
|
|
}
|
|
?>
|
|
<?= $this->serviceFlags($object) ?>
|
|
</td>
|
|
</tr>
|
|
</table>
|