diff --git a/doc/02-Installation.md.d/From-Source.md b/doc/02-Installation.md.d/From-Source.md index 9e4f6ec..1979ffb 100644 --- a/doc/02-Installation.md.d/From-Source.md +++ b/doc/02-Installation.md.d/From-Source.md @@ -9,7 +9,7 @@ Make sure you use `businessprocess` as the module name. The following requiremen * PHP (≥7.2) * [Icinga Web](https://github.com/Icinga/icingaweb2) (≥2.9) * [Icinga DB Web](https://github.com/Icinga/icingadb-web) (≥1.0) -* [Icinga PHP Library (ipl)](https://github.com/Icinga/icinga-php-library) (≥0.13.0) +* [Icinga PHP Library (ipl)](https://github.com/Icinga/icinga-php-library) (≥0.15.0) * [Icinga PHP Thirdparty](https://github.com/Icinga/icinga-php-thirdparty) (≥0.12.0) diff --git a/library/Businessprocess/Renderer/TileRenderer/NodeTile.php b/library/Businessprocess/Renderer/TileRenderer/NodeTile.php index 1f32f54..b58a69d 100644 --- a/library/Businessprocess/Renderer/TileRenderer/NodeTile.php +++ b/library/Businessprocess/Renderer/TileRenderer/NodeTile.php @@ -88,16 +88,18 @@ class NodeTile extends BaseHtmlElement $link = $this->getMainNodeLink(); if ($renderer->isBreadcrumb()) { $state = strtolower($node->getStateName()); - if ($node->isHandled()) { - $state = $state . ' handled'; - } - $link->prepend((new StateBall($state, StateBall::SIZE_MEDIUM))->addAttributes([ - 'title' => sprintf( - '%s %s', - $state, - DateFormatter::timeSince($node->getLastStateChange()) - ) - ])); + $link->prependHtml( + (new StateBall($state, StateBall::SIZE_MEDIUM)) + ->setHandled($node->isHandled()) + ->addAttributes([ + 'title' => sprintf( + '%s%s %s', + $state, + $node->isHandled() ? ' (handled)' : '', + DateFormatter::timeSince($node->getLastStateChange()) + ) + ]) + ); } $this->add($link); diff --git a/library/Businessprocess/Renderer/TreeRenderer.php b/library/Businessprocess/Renderer/TreeRenderer.php index 097d148..6fa4c5c 100644 --- a/library/Businessprocess/Renderer/TreeRenderer.php +++ b/library/Businessprocess/Renderer/TreeRenderer.php @@ -125,16 +125,16 @@ class TreeRenderer extends Renderer $icons[] = $node->getIcon(); } $state = strtolower($node->getStateName($parent !== null ? $parent->getChildState($node) : null)); - if ($node->isHandled()) { - $state = $state . ' handled'; - } - $icons[] = (new StateBall($state, StateBall::SIZE_MEDIUM))->addAttributes([ - 'title' => sprintf( - '%s %s', - $state, - DateFormatter::timeSince($node->getLastStateChange()) - ) - ]); + $icons[] = (new StateBall($state, StateBall::SIZE_MEDIUM)) + ->setHandled($node->isHandled()) + ->addAttributes([ + 'title' => sprintf( + '%s%s %s', + $state, + $node->isHandled() ? ' (handled)' : '', + DateFormatter::timeSince($node->getLastStateChange()) + ) + ]); if ($node->isAcknowledged()) { $icons[] = new Icon('check'); diff --git a/module.info b/module.info index 056c669..07131ea 100644 --- a/module.info +++ b/module.info @@ -1,7 +1,7 @@ Name: Businessprocess Version: 2.5.1 Requires: - Libraries: icinga-php-library (>=0.13.0), icinga-php-thirdparty (>=0.12.0) + Libraries: icinga-php-library (>=0.15.0), icinga-php-thirdparty (>=0.12.0) Modules: monitoring (>=2.9.0), icingadb (>=1.1.0) Description: A Business Process viewer and modeler Provides a web-based process modeler for Icinga. It integrates as a module