Improve notifications view component for objects
The old view did not show a hyphen if the user lacked the permissions to send a notification and if viewing a host or service not currently in a problem state. Further the tooltip for send notification was bad English and the view generated a superfluous <br>.
This commit is contained in:
parent
5efc343f03
commit
df3caa61e9
|
@ -1,59 +1,66 @@
|
|||
<tr>
|
||||
<th><?= $this->translate('Notifications') ?></th>
|
||||
<td>
|
||||
<?php if ($this->hasPermission('monitoring/command/send-custom-notification')) {
|
||||
if ($object->getType() === $object::TYPE_HOST) {
|
||||
$ackLink = $this->href(
|
||||
'monitoring/host/send-custom-notification',
|
||||
array('host' => $object->getName())
|
||||
);
|
||||
} else {
|
||||
$ackLink = $this->href(
|
||||
'monitoring/service/send-custom-notification',
|
||||
array('host' => $object->getHost()->getName(), 'service' => $object->getName())
|
||||
);
|
||||
}
|
||||
?>
|
||||
<?= $this->qlink(
|
||||
$this->translate('Send notification'),
|
||||
$ackLink,
|
||||
null,
|
||||
array(
|
||||
'icon' => 'bell',
|
||||
'data-base-target' => '_self',
|
||||
'title' => $this->translate(
|
||||
'Send a custom notification, share information about the'
|
||||
. ' object to contacts.'
|
||||
)
|
||||
)
|
||||
) ?><br />
|
||||
<?php } ?>
|
||||
<?php
|
||||
// We are not interested in notifications for OK or pending objects
|
||||
if (! in_array((int) $object->state, array(0, 99))) {
|
||||
|
||||
if ($object->current_notification_number > 0) {
|
||||
if ((int) $object->current_notification_number === 1) {
|
||||
$msg = sprintf(
|
||||
$this->translate('A notification has been sent for this issue %s.'),
|
||||
$this->timeAgo($object->last_notification)
|
||||
);
|
||||
} else {
|
||||
$msg = sprintf(
|
||||
$this->translate('%d notifications have been sent for this issue.'),
|
||||
$object->current_notification_number
|
||||
) . '<br />' . sprintf(
|
||||
$this->translate('The last one was sent %s.'),
|
||||
$this->timeAgo($object->last_notification)
|
||||
);
|
||||
<th><?= $this->translate('Notifications') ?></th>
|
||||
<td>
|
||||
<?php
|
||||
/** @var \Icinga\Module\Monitoring\Object\MonitoredObject $object */
|
||||
if ($this->hasPermission('monitoring/command/send-custom-notification')) {
|
||||
if ($object->getType() === $object::TYPE_HOST) {
|
||||
/** @var \Icinga\Module\Monitoring\Object\Host $object */
|
||||
echo $this->qlink(
|
||||
$this->translate('Send notification'),
|
||||
'monitoring/host/send-custom-notification',
|
||||
array('host' => $object->getName()),
|
||||
array(
|
||||
'icon' => 'bell',
|
||||
'data-base-target' => '_self',
|
||||
'title' => $this->translate(
|
||||
'Send a custom notification to contacts responsible for this host'
|
||||
)
|
||||
)
|
||||
);
|
||||
} else {
|
||||
/** @var \Icinga\Module\Monitoring\Object\Service $object */
|
||||
echo $this->qlink(
|
||||
$this->translate('Send notification'),
|
||||
'monitoring/service/send-custom-notification',
|
||||
array('host' => $object->getHost()->getName(), 'service' => $object->getName()),
|
||||
array(
|
||||
'icon' => 'bell',
|
||||
'data-base-target' => '_self',
|
||||
'title' => $this->translate(
|
||||
'Send a custom notification to contacts responsible for this service'
|
||||
)
|
||||
)
|
||||
);
|
||||
}
|
||||
if (! in_array((int) $object->state, array(0, 99))) {
|
||||
echo '<br />';
|
||||
}
|
||||
} elseif (in_array((int) $object->state, array(0, 99))) {
|
||||
echo '-';
|
||||
}
|
||||
echo $msg;
|
||||
} else {
|
||||
echo '('
|
||||
. $this->translate('No notification has been sent for this issue.')
|
||||
. ')';
|
||||
}
|
||||
}
|
||||
?>
|
||||
</td>
|
||||
// We are not interested in notifications for OK or pending objects
|
||||
if (! in_array((int) $object->state, array(0, 99))) {
|
||||
if ($object->current_notification_number > 0) {
|
||||
if ((int) $object->current_notification_number === 1) {
|
||||
$msg = sprintf(
|
||||
$this->translate('A notification has been sent for this issue %s.'),
|
||||
$this->timeAgo($object->last_notification)
|
||||
);
|
||||
} else {
|
||||
$msg = sprintf(
|
||||
$this->translate('%d notifications have been sent for this issue.'),
|
||||
$object->current_notification_number
|
||||
) . '<br />' . sprintf(
|
||||
$this->translate('The last one was sent %s.'),
|
||||
$this->timeAgo($object->last_notification)
|
||||
);
|
||||
}
|
||||
} else {
|
||||
$msg = $this->translate('No notification has been sent for this issue.');
|
||||
}
|
||||
echo $msg;
|
||||
}
|
||||
?>
|
||||
</td>
|
||||
</tr>
|
||||
|
|
Loading…
Reference in New Issue