diff --git a/module/VuFind/src/VuFind/RecordDriver/SolrDefault.php b/module/VuFind/src/VuFind/RecordDriver/SolrDefault.php index c910f4f42670be26eb7db966d0ed087f0fe032d4..f216d78193e996f88a2e334df99065a90e8aeb93 100644 --- a/module/VuFind/src/VuFind/RecordDriver/SolrDefault.php +++ b/module/VuFind/src/VuFind/RecordDriver/SolrDefault.php @@ -296,6 +296,19 @@ class SolrDefault extends AbstractBase return isset($this->fields['callnumber-raw']) ? $this->fields['callnumber-raw'] : []; } + + /** + * Return the first valid DOI found in the record (false if none). + * + * @return mixed + */ + public function getCleanDOI() + { + $field = 'doi_str_mv'; + return (isset($this->fields[$field][0]) && !empty($this->fields[$field][0])) + ? $this->fields[$field][0] : false; + } + /** * Return the first valid ISBN found in the record (favoring ISBN-10 over * ISBN-13 when possible).