1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
<?php
namespace Icinga\Module\Map\ProvidedHook\Icingadb;
use Icinga\Module\Icingadb\Hook\ServiceActionsHook;
use Icinga\Module\Icingadb\Model\Service;
use ipl\Web\Widget\Icon;
use ipl\Web\Widget\Link;
class ServiceActions extends ServiceActionsHook
{
public function getActionsForObject(Service $service): array
{
if (! isset($service->vars['geolocation'])) {
return [];
}
$label = mt('map', 'Show on map');
return [
new Link(
[new Icon('globe'), $label],
'map?showHost=' . rawurlencode($service->host->name . '!' . $service->name)
)
];
}
}
|