From 5717933379e61a5d8e0b55022af89b36c1ec4787 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Lahmann?= <lahmann@ub.uni-leipzig.de> Date: Thu, 8 Sep 2016 15:21:46 +0200 Subject: [PATCH] refs #8675: * added missing customized hasOpenUrlReplaceSetting method in finc Record view helper to reflect multi resolver config --- .../src/finc/View/Helper/Root/Factory.php | 3 ++- .../finc/src/finc/View/Helper/Root/Record.php | 27 ++++++++++++++++--- 2 files changed, 26 insertions(+), 4 deletions(-) diff --git a/module/finc/src/finc/View/Helper/Root/Factory.php b/module/finc/src/finc/View/Helper/Root/Factory.php index df8b05202a8..900f998198b 100644 --- a/module/finc/src/finc/View/Helper/Root/Factory.php +++ b/module/finc/src/finc/View/Helper/Root/Factory.php @@ -69,7 +69,8 @@ class Factory $sm->getServiceLocator()->get('VuFind\Config')->get('config'), $sm->get('url'), $sm->getServiceLocator()->get('VuFind\AuthManager'), - $sm->getServiceLocator()->get('finc\Rewrite') + $sm->getServiceLocator()->get('finc\Rewrite'), + $sm->getServiceLocator()->get('VuFind\Config')->get('Resolver') ); } diff --git a/module/finc/src/finc/View/Helper/Root/Record.php b/module/finc/src/finc/View/Helper/Root/Record.php index 5c8bf04bf28..0ee9a8b1262 100644 --- a/module/finc/src/finc/View/Helper/Root/Record.php +++ b/module/finc/src/finc/View/Helper/Root/Record.php @@ -67,6 +67,13 @@ class Record extends \VuFind\View\Helper\Root\Record */ protected $rewrite; + /** + * Resolver configuration + * + * @var \Zend\Config\Config + */ + protected $resolverConfig; + /** * Constructor * @@ -76,12 +83,14 @@ class Record extends \VuFind\View\Helper\Root\Record public function __construct($config = null, \Zend\View\Helper\Url $helper, \VuFind\Auth\Manager $manager, - $rewrite) + $rewrite, + $resolverConfig) { parent::__construct($config); $this->url = $helper; $this->manager = $manager; $this->rewrite = $rewrite; + $this->resolverConfig = $resolverConfig; } /** @@ -281,6 +290,18 @@ class Record extends \VuFind\View\Helper\Root\Record return $url; } - - + /** + * Customized method for multi resolver support + * + * Get all the links associated with this record depending on the OpenURL setting + * replace_other_urls. Returns an array of associative arrays each containing + * 'desc' and 'url' keys. + * + * @return bool + */ + protected function hasOpenUrlReplaceSetting() + { + return isset($this->resolverConfig->General->replace_other_urls) + && $this->resolverConfig->General->replace_other_urls; + } } \ No newline at end of file -- GitLab