From b0fb4ed2d5de887a8c4676e8750fe17260335197 Mon Sep 17 00:00:00 2001 From: Dorian Merz <merz@ub.uni-leipzig.de> Date: Fri, 31 Aug 2018 15:40:24 +0200 Subject: [PATCH] refs #13830 * inherits getTitleUniform in SolrMarcFincTrait * renders search link of Original Title without language tag * modifies getTitleUniform() to display 240 only if IND 1 == 1 * now encloses lang-tag in ⟨ ⟩ --- .../finc/RecordDriver/SolrMarcFincTrait.php | 25 +++++++++++++++++++ .../SolrDefault/data-titleUniform.phtml | 6 ++++- 2 files changed, 30 insertions(+), 1 deletion(-) diff --git a/module/finc/src/finc/RecordDriver/SolrMarcFincTrait.php b/module/finc/src/finc/RecordDriver/SolrMarcFincTrait.php index e6b24812471..222b3dd5039 100644 --- a/module/finc/src/finc/RecordDriver/SolrMarcFincTrait.php +++ b/module/finc/src/finc/RecordDriver/SolrMarcFincTrait.php @@ -2216,4 +2216,29 @@ trait SolrMarcFincTrait } } } + + public function getTitleUniform() { + + $retval = []; + foreach (array('130','240') as $pos => $field_name) { + if ($field = $this->getMarcRecord()->getField($field_name)) { + if ($field_name === '240') { + if ($field->getIndicator('1') === '0') { + //"Not printed or displayed" + continue; + } + } + foreach (array( + 'title' => 'a', + 'lang' => 'g' + ) as $key => $sub_name) { + if ($line = $field->getSubfield($sub_name)) { + $retval[$key] = $line->getData(); + } + } + return $retval; + } + } + return $retval; + } } diff --git a/themes/finc/templates/RecordDriver/SolrDefault/data-titleUniform.phtml b/themes/finc/templates/RecordDriver/SolrDefault/data-titleUniform.phtml index b3e65ec2148..d546e1146d1 100644 --- a/themes/finc/templates/RecordDriver/SolrDefault/data-titleUniform.phtml +++ b/themes/finc/templates/RecordDriver/SolrDefault/data-titleUniform.phtml @@ -7,7 +7,11 @@ : $this->transEsc('non_rda_original_title')?>: </th> <td property="title"> - <a href="<?=$this->record($this->driver)->getLink('title', $data)?>"><?=$this->escapeHtml($data)?></a> + <?if (is_array($data)): ?> + <a href="<?=$this->record($this->driver)->getLink('title', $data['title'])?>"><?=$this->escapeHtml($data['title'])?></a> ⟨<?=$this->escapeHtml($data['lang'])?>⟩ + <? else: ?> + <a href="<?=$this->record($this->driver)->getLink('title', $data)?>"><?=$this->escapeHtml($data)?></a> + <? endif; ?> </td> </tr> <? endif; ?> -- GitLab