diff options
Diffstat (limited to 'modules/monitoring/application/views/scripts/show/components/acknowledgement.phtml')
-rw-r--r-- | modules/monitoring/application/views/scripts/show/components/acknowledgement.phtml | 94 |
1 files changed, 94 insertions, 0 deletions
diff --git a/modules/monitoring/application/views/scripts/show/components/acknowledgement.phtml b/modules/monitoring/application/views/scripts/show/components/acknowledgement.phtml new file mode 100644 index 0000000..fd7f6bb --- /dev/null +++ b/modules/monitoring/application/views/scripts/show/components/acknowledgement.phtml @@ -0,0 +1,94 @@ +<?php + +/** @var \Icinga\Module\Monitoring\Object\MonitoredObject $object */ + +if (in_array((int) $object->state, array(0, 99))) { + // Ignore this markup if the object is in a non-problem state or pending + return; +} + +if ($object->acknowledged): +$acknowledgement = $object->acknowledgement; +/** @var \Icinga\Module\Monitoring\Object\Acknowledgement $acknowledgement */ +?> +<tr> + <th><?= $this->translate('Acknowledged') ?></th> + <td data-base-target="_self"> + <?php if ($acknowledgement): ?> + <dl class="comment-list"> + <dt> + <?= $this->escape($acknowledgement->getAuthor()) ?> + <span class="comment-time"> + <?= $this->translate('acknowledged') ?> + <?= $this->timeAgo($acknowledgement->getEntryTime()) ?> + <?php if ($acknowledgement->expires()): ?> + <span aria-hidden="true">ǀ</span> + <?= sprintf( + $this->translate('Expires %s'), + $this->timeUntil($acknowledgement->getExpirationTime()) + ) ?> + <?php endif ?> + </span> + <?php if ($acknowledgement->getSticky()): ?> + <?= $this->icon('pin', sprintf( + $this->translate( + 'Acknowledgement remains until the %1$s recovers even if the %1$s changes state' + ), + $object->getType(true) + )) ?> + <?php endif ?> + <?php if (isset($removeAckForm)) { + // Form is unset if the current user lacks the respective permission + $removeAckForm->setAttrib('class', $removeAckForm->getAttrib('class') . ' remove-action'); + echo $removeAckForm; + } ?> + </dt> + <dd> + <?= $this->nl2br($this->createTicketLinks($this->markdown($acknowledgement->getComment()))) ?> + </dd> + </dl> + <?php elseif (isset($removeAckForm)): ?> + <?= $removeAckForm ?> + <?php endif ?> + </td> +</tr> +<?php else: ?> +<tr> + <th><?= $this->translate('Not acknowledged') ?></th> + <td> + <?php if ($this->hasPermission('monitoring/command/acknowledge-problem')) { + if ($object->getType() === $object::TYPE_HOST) { + $ackLink = $this->href( + 'monitoring/host/acknowledge-problem', + array('host' => $object->getName()), + null, + array('class' => 'action-link') + ); + } else { + $ackLink = $this->href( + 'monitoring/service/acknowledge-problem', + array('host' => $object->getHost()->getName(), 'service' => $object->getName()), + null, + array('class' => 'action-link') + ); + } + ?> + <?= $this->qlink( + $this->translate('Acknowledge'), + $ackLink, + null, + array( + 'class' => 'action-link', + 'data-base-target' => '_self', + 'icon' => 'edit', + 'title' => $this->translate( + 'Acknowledge this problem, suppress all future notifications for it and tag it as being handled' + ) + ) + ) ?> + <?php } else { + echo '-'; + } // endif ?> + </td> +</tr> +<?php endif ?> |