diff --git a/module/finc/src/finc/RecordDriver/FincMissing.php b/module/finc/src/finc/RecordDriver/FincMissing.php index 495b45d7907819e39180c6aa33617154b850299d..425ff41ef7a38d0bd3bbc41462db105f2583388b 100644 --- a/module/finc/src/finc/RecordDriver/FincMissing.php +++ b/module/finc/src/finc/RecordDriver/FincMissing.php @@ -72,17 +72,21 @@ class FincMissing extends \VuFind\RecordDriver\Missing */ public function setRawData($data) { - $table = $this->getDbTable('resource'); - // sets create to FALSE so Resource does not try to generate a DB row on fail - $resource = $table->findResource($data['id'], 'solr', FALSE); - if ($resource instanceof Resource) { - if (empty($resource->extra_metadata ?? '')) { - parent::setRawData($data); + if (isset($data['id']) && !empty($data['id'])) { + $table = $this->getDbTable('resource'); + // sets create to FALSE so Resource does not try to generate a DB row on fail + $resource = $table->findResource($data['id'], 'solr', FALSE); + if ($resource instanceof Resource) { + if (empty($resource->extra_metadata ?? '')) { + parent::setRawData($data); + } else { + $this->deserializeFromResourceTable($resource); + } } else { - $this->deserializeFromResourceTable($resource); + $this->fields['id'] = $data['id']; } - } elseif (isset($data['id'])) { - $this->fields['id'] = $data['id']; + } else { + $this->fields['id'] = ''; } } diff --git a/module/finc/src/finc/View/Helper/Root/RecordLink.php b/module/finc/src/finc/View/Helper/Root/RecordLink.php index 402b732b9ad00dd63ae44d9f53f008257303a3c2..12e27d4066fc9d9758aaf9db0483ef1545e3031c 100644 --- a/module/finc/src/finc/View/Helper/Root/RecordLink.php +++ b/module/finc/src/finc/View/Helper/Root/RecordLink.php @@ -154,9 +154,10 @@ class RecordLink extends \VuFind\View\Helper\Root\RecordLink { try { return $this->getTabUrl($driver); + } catch (RecordMissingException $exception) { + // return default result on Missing Record + // throw all other Exceptions } - catch (RecordMissingException $exception) { - return ""; - } + return ""; } } diff --git a/themes/finc/templates/search/advanced/ranges.phtml b/themes/finc/templates/search/advanced/ranges.phtml index d0fc25eb2eda414af9dcf93b0e7364338b2c195e..3c41b51dda92daf80d898a75add153796865aa68 100644 --- a/themes/finc/templates/search/advanced/ranges.phtml +++ b/themes/finc/templates/search/advanced/ranges.phtml @@ -3,7 +3,8 @@ <?php $params = $this->searchParams($this->searchClassId); $params->activateAllFacets(); ?> <?php foreach ($this->ranges as $current): $escField = $this->escapeHtmlAttr($current['field']); ?> <?php $extraInputAttribs = ($current['type'] == 'date') ? 'maxlength="4" ' : ''; ?> - <fieldset class="range"> + <?php /* #18306: alignment left to result - GG */ ?> + <fieldset class="range left"> <legend><?=$this->transEsc($params->getFacetLabel($current['field']))?></legend> <input type="hidden" name="<?=$this->escapeHtmlAttr($current['type'])?>range[]" value="<?=$escField?>"/> <div class="date-fields">