diff --git a/library/Businessprocess/BpNode.php b/library/Businessprocess/BpNode.php index ab76e3e7..7dfbcf94 100644 --- a/library/Businessprocess/BpNode.php +++ b/library/Businessprocess/BpNode.php @@ -105,7 +105,7 @@ public function hasProblems() return true; } - $okStates = array('OK', 'UP', 'PENDING', 'MISSING'); + $okStates = ['OK', 'UP', 'PENDING', 'MISSING', 'CRITICAL-HANDLED', 'WARNING-HANDLED', 'UNKNOWN-HANDLED']; foreach ($this->getStateSummary() as $state => $cnt) { if ($cnt !== 0 && ! in_array($state, $okStates)) { diff --git a/library/Businessprocess/Node.php b/library/Businessprocess/Node.php index a0c07d26..3573d3f2 100644 --- a/library/Businessprocess/Node.php +++ b/library/Businessprocess/Node.php @@ -163,7 +163,7 @@ public function setMissing($missing = true) public function isProblem() { - return $this->getState() > 0; + return $this->getState() > 0 && ! $this->isHandled(); } public function hasBeenChanged() diff --git a/library/Businessprocess/Web/Component/BpDashboardTile.php b/library/Businessprocess/Web/Component/BpDashboardTile.php index 9a4a0f64..6a1e9884 100644 --- a/library/Businessprocess/Web/Component/BpDashboardTile.php +++ b/library/Businessprocess/Web/Component/BpDashboardTile.php @@ -30,6 +30,9 @@ public function __construct(BpConfig $bp, $title, $description, $icon, $url, $ur foreach ($bp->getChildren() as $node) { $state = strtolower($node->getStateName()); + if ($node->isHandled()) { + $state .= ' handled'; + } $tiles->add(Html::tag( 'a',