From ce95baabc8f739dc8ae5ebc41e769a24edabb22e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathias=20Maa=C3=9F?= <mathias.maass@uni-leipzig.de> Date: Mon, 12 Jun 2023 12:33:00 +0200 Subject: [PATCH] refs #24001 [finc] catch resolver networtk error in GetResolverLinks handler * fix showing 'no_resolver_links' message --- module/finc/src/finc/AjaxHandler/GetResolverLinks.php | 7 ++++++- themes/finc/templates/RecordTab/holdingsils.phtml | 2 +- themes/finc/templates/ajax/resolverLinks.phtml | 8 +++++++- 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/module/finc/src/finc/AjaxHandler/GetResolverLinks.php b/module/finc/src/finc/AjaxHandler/GetResolverLinks.php index d4aec391512..bd9534b19f3 100644 --- a/module/finc/src/finc/AjaxHandler/GetResolverLinks.php +++ b/module/finc/src/finc/AjaxHandler/GetResolverLinks.php @@ -128,7 +128,12 @@ class GetResolverLinks extends \VuFind\AjaxHandler\GetResolverLinks $this->resolverConfig->$resolver->resolver_cache ); } - $result = $resolverObject->fetchLinks($openUrl); + + try { + $result = $resolverObject->fetchLinks($openUrl); + } catch (\Exception $e) { + $result = []; + } // Sort the returned links into categories based on service type: $electronic = $print = $services = $unknown = []; diff --git a/themes/finc/templates/RecordTab/holdingsils.phtml b/themes/finc/templates/RecordTab/holdingsils.phtml index c18460def0f..d61bd33af00 100644 --- a/themes/finc/templates/RecordTab/holdingsils.phtml +++ b/themes/finc/templates/RecordTab/holdingsils.phtml @@ -89,7 +89,7 @@ if (!empty($holdingTitleHold)): ?> <?php /* Finc #24001 */ ?> <?php if ($openUrlActive && !empty($fallbackUrls)): ?> - <span id="urlsHideable" style="display: none"> + <span id="urlsHideable" class="hidden"> <?php foreach ($fallbackUrls as $current): ?> <?php /* finc: use external link view helper #19650 */ ?> <?= $this->externalLink($this->escapeHtmlAttr($this->proxyUrl($current['url'])), $current['desc'] ?? $current['url']) ?><br> diff --git a/themes/finc/templates/ajax/resolverLinks.phtml b/themes/finc/templates/ajax/resolverLinks.phtml index b9723e78459..7385f281a36 100644 --- a/themes/finc/templates/ajax/resolverLinks.phtml +++ b/themes/finc/templates/ajax/resolverLinks.phtml @@ -57,7 +57,13 @@ <?php /* finc-specific change #9274 - CK */ ?> <?php if ($noResolverContent): // no content to show, so tell the user?> <span id="noResolverContentMessage" class="hidden"><?=$this->resolver . ': ' . $this->translate('no_resolver_links')?></span> - <script>if ($('#urlsHideable').length) { $('#urlsHideable').show(); } else { $('#noResolverContentMessage').show(); }</script> + <script> + if ($('#urlsHideable').length > 0) { + $('#urlsHideable').removeClass('hidden').show(); + } else { + $('#noResolverContentMessage').removeClass('hidden').show(); + } + </script> <?php endif; ?> <?php /* finc-specific change #9274 - END */ ?> </div> -- GitLab