From c7943bf082f3031683f22d0bcf8b37d7577b78b2 Mon Sep 17 00:00:00 2001 From: Dorian Merz <merz@ub.uni-leipzig.de> Date: Mon, 2 Sep 2019 12:42:40 +0200 Subject: [PATCH] refs #15913 [fid_bbi] tab order in detail view * sets Description Tab as default * forces specific tab order via listener --- module/fid_bbi/Module.php | 22 ++++++++++++++++++++++ module/fid_bbi/config/module.config.php | 6 +++--- 2 files changed, 25 insertions(+), 3 deletions(-) diff --git a/module/fid_bbi/Module.php b/module/fid_bbi/Module.php index 32ed3793898..3945f73a448 100644 --- a/module/fid_bbi/Module.php +++ b/module/fid_bbi/Module.php @@ -28,6 +28,8 @@ namespace fid_bbi; use Zend\ModuleManager\ModuleManager, Zend\Mvc\MvcEvent; +use Zend\ModuleManager\ModuleEvent; +use finc\RecordDriver\SolrAI; /** * Template for ZF2 module for storing local overrides. @@ -76,6 +78,7 @@ class Module */ public function init(ModuleManager $m) { + $m->getEventManager()->attach(ModuleEvent::EVENT_MERGE_CONFIG,[$this,'onMergeConfig']); } /** @@ -89,4 +92,23 @@ class Module public function onBootstrap(MvcEvent $e) { } + + /** + * @param MvcEvent $event + */ + public function onMergeConfig(ModuleEvent $event) + { + $configListener = $event->getConfigListener(); + $config = $configListener->getMergedConfig(false); + $mergedTabOrder = &$config['vufind']['recorddriver_tabs'][SolrAI::class]['tabs'] ?? []; + + // Change tab order for SolrAI + if (!empty($mergedTabOrder)) { + $moduleTabOrder = $this->getConfig()['vufind']['recorddriver_tabs'][SolrAI::class]['tabs'] ?? []; + $mergedTabOrder = array_merge($moduleTabOrder,$mergedTabOrder); + } + + // Pass the changed configuration back to the listener: + $configListener->setMergedConfig($config); + } } diff --git a/module/fid_bbi/config/module.config.php b/module/fid_bbi/config/module.config.php index 414e9af2d87..c1459efb5ec 100644 --- a/module/fid_bbi/config/module.config.php +++ b/module/fid_bbi/config/module.config.php @@ -76,7 +76,7 @@ $config = [ 'Similar' => null, 'Details' => 'StaffViewArray', ], - 'defaultTab' => null, + 'defaultTab' => 'Description', ], 'finc\RecordDriver\SolrMarcFinc' => [ 'tabs' => [ @@ -92,7 +92,7 @@ $config = [ 'Similar' => null, 'Details' => 'StaffViewMARC', ], - 'defaultTab' => null, + 'defaultTab' => 'Description', ], 'finc\RecordDriver\SolrAI' => [ 'tabs' => [ @@ -108,7 +108,7 @@ $config = [ 'Similar' => null, 'Details' => 'StaffViewAI', ], - 'defaultTab' => null, + 'defaultTab' => 'Description', ], ], 'recorddriver_collection_tabs' => [ -- GitLab