From 9f091f6781db9a7897e818ade310a1be1dd4b9a5 Mon Sep 17 00:00:00 2001
From: Dorian Merz <merz@ub.uni-leipzig.de>
Date: Wed, 28 Jul 2021 15:43:34 +0200
Subject: [PATCH] refs #16883 [finc] show hierarchy tree tab only if there
 actually is a hierarchy tree to show

* do not show tab for single-element trees
---
 .../finc/src/finc/RecordTab/HierarchyTree.php | 25 +++++++++++--------
 1 file changed, 14 insertions(+), 11 deletions(-)

diff --git a/module/finc/src/finc/RecordTab/HierarchyTree.php b/module/finc/src/finc/RecordTab/HierarchyTree.php
index cfc6a02c43c..315b773894f 100644
--- a/module/finc/src/finc/RecordTab/HierarchyTree.php
+++ b/module/finc/src/finc/RecordTab/HierarchyTree.php
@@ -51,17 +51,20 @@ class HierarchyTree extends \VuFind\RecordTab\HierarchyTree
         else return 'hierarchy_tree';
     }
 
-    /**
-     * {@inheritdoc}
-     * Returns different descriptions according to record type
-     * @return string
-     */
-/*    public function isActive()
+    public function isActive()
     {
-        return (
-            $this->getRecordDriver()->tryMethod('isSingleElementHierarchyRecord')
-                ? false : parent::isActive()
-        );
+        $trees = $this->getTreeList();
+        if (empty($trees)) {
+            return false;
+        }
+        foreach ($trees as $key => $value) {
+            if ($key !== $this->driver->getUniqueID()) {
+                return true;
+            }
+        }
+        if ($this->driver->getChildRecordCount() > 0) {
+            return true;
+        }
+        return false;
     }
-*/
 }
-- 
GitLab