schemaOrg()->getAttributes(['vocab' => 'http://schema.org/', 'resource' => '#record', 'typeof' => $this->schemaOrg()->getRecordTypes($this->driver)])?>>
@@ -77,10 +79,38 @@
=$this->transEsc('Bibliographic Details')?>
$item): ?>
-
- =empty($item['Label']) ? '' : $this->transEsc($item['Label']) . ':'?> |
- =$this->driver->linkUrls($item['Data'])?> |
-
+
+
+ =empty($item['Label']) ? '' : $this->transEsc($item['Label']) . ':'?> |
+ getPrimaryAuthorsWithHighlighting();
+ $authorCount = count($authors);
+ $authorNameLimit = $edsConfig->AuthorDisplay->ShortAuthorLimit ?? 3;
+ ?>
+ 1): ?>
+
+ $author): ?>
+ =$this->highlight($author)?>= $authorNameLimit) {
+ echo ' ' . $this->transEsc('more_authors_abbrev');
+ break;
+ }
+ ?>
+ |
+
+ =$this->driver->linkUrls($item['Data'])?>
+
+
+
+
+
+
+ =empty($item['Label']) ? '' : $this->transEsc($item['Label']) . ':'?> |
+ =$this->driver->linkUrls($item['Data'])?> |
+
+
diff --git a/themes/bootstrap3/templates/RecordDriver/EDS/result-list.phtml b/themes/bootstrap3/templates/RecordDriver/EDS/result-list.phtml
index 4eaa2909662..7ce40b04427 100644
--- a/themes/bootstrap3/templates/RecordDriver/EDS/result-list.phtml
+++ b/themes/bootstrap3/templates/RecordDriver/EDS/result-list.phtml
@@ -3,7 +3,9 @@
$accessLevel = $this->driver->getAccessLevel();
$restrictedView = empty($accessLevel) ? false : true;
$recordLinker = $this->recordLinker($this->results);
- $coverDetails = $this->record($this->driver)->getCoverDetails('result-list', 'medium', $recordLinker->getUrl($this->driver));
+ $largeImage = $this->record($this->driver)->getThumbnail('large');
+ $linkAttributes = $largeImage ? ['href' => $largeImage, 'data-lightbox-image' => 'true'] : [];
+ $coverDetails = $this->record($this->driver)->getCoverDetails('result-list', 'medium', $linkAttributes);
$cover = $coverDetails['html'];
$edsConfig = $this->config()->get('EDS');
?>
diff --git a/themes/bootstrap3/templates/RecordDriver/Pazpar2/result-list.phtml b/themes/bootstrap3/templates/RecordDriver/Pazpar2/result-list.phtml
index a7f130bbe5b..bdb9763813a 100644
--- a/themes/bootstrap3/templates/RecordDriver/Pazpar2/result-list.phtml
+++ b/themes/bootstrap3/templates/RecordDriver/Pazpar2/result-list.phtml
@@ -1,5 +1,7 @@
record($this->driver)->getCoverDetails('result-list', 'medium', $this->recordLinker($this->results)->getUrl($this->driver));
+ $largeImage = $this->record($this->driver)->getThumbnail('large');
+ $linkAttributes = $largeImage ? ['href' => $largeImage, 'data-lightbox-image' => 'true'] : [];
+ $coverDetails = $this->record($this->driver)->getCoverDetails('result-list', 'medium', $linkAttributes);
$cover = $coverDetails['html'];
$thumbnail = false;
$thumbnailAlignment = $this->record($this->driver)->getThumbnailAlignment('result');
diff --git a/themes/bootstrap3/templates/RecordDriver/SolrAuthDefault/result-list.phtml b/themes/bootstrap3/templates/RecordDriver/SolrAuthDefault/result-list.phtml
index 6325a3020d4..1fc7abbc3a4 100644
--- a/themes/bootstrap3/templates/RecordDriver/SolrAuthDefault/result-list.phtml
+++ b/themes/bootstrap3/templates/RecordDriver/SolrAuthDefault/result-list.phtml
@@ -7,7 +7,9 @@
$useFor = $this->driver->getUseFor();
$recordLinker = $this->recordLinker($this->results);
$thumbnailAlignment = $this->record($this->driver)->getThumbnailAlignment('result');
- $coverDetails = $this->record($this->driver)->getCoverDetails('result-list', 'medium', $recordLinker->getUrl($this->driver));
+ $largeImage = $this->record($this->driver)->getThumbnail('large');
+ $linkAttributes = $largeImage ? ['href' => $largeImage, 'data-lightbox-image' => 'true'] : [];
+ $coverDetails = $this->record($this->driver)->getCoverDetails('result-list', 'medium', $linkAttributes);
$cover = $coverDetails['html'];
?>
diff --git a/themes/bootstrap3/templates/RecordDriver/SolrOverdrive/result-list.phtml b/themes/bootstrap3/templates/RecordDriver/SolrOverdrive/result-list.phtml
old mode 100755
new mode 100644
index ac92c64bc14..a6313ecc50c
--- a/themes/bootstrap3/templates/RecordDriver/SolrOverdrive/result-list.phtml
+++ b/themes/bootstrap3/templates/RecordDriver/SolrOverdrive/result-list.phtml
@@ -1,6 +1,8 @@
recordLinker($this->results);
- $coverDetails = $this->record($this->driver)->getCoverDetails('result-list', 'medium', $recordLinker->getUrl($this->driver));
+ $largeImage = $this->record($this->driver)->getThumbnail('large');
+ $linkAttributes = $largeImage ? ['href' => $largeImage, 'data-lightbox-image' => 'true'] : [];
+ $coverDetails = $this->record($this->driver)->getCoverDetails('result-list', 'medium', $linkAttributes);
$cover = $coverDetails['html'];
$thumbnail = false;
$thumbnailAlignment = $this->record($this->driver)->getThumbnailAlignment('result');
@@ -173,6 +175,12 @@
=$this->render('record/cart-buttons.phtml', ['id' => $this->driver->getUniqueId(), 'source' => $this->driver->getSourceIdentifier()]); ?>
+
+
+ =$this->icon('link', 'icon-link__icon') ?>
+ =$this->transEsc('standalone_record_link')?>
+
+
userlist()->getMode() !== 'disabled'): ?>
permission()->allowDisplay('feature.Favorites')): ?>
diff --git a/themes/bootstrap3/templates/RecordTab/holdingsils.phtml b/themes/bootstrap3/templates/RecordTab/holdingsils.phtml
index be3d17b308c..ee921d4a037 100644
--- a/themes/bootstrap3/templates/RecordTab/holdingsils.phtml
+++ b/themes/bootstrap3/templates/RecordTab/holdingsils.phtml
@@ -41,7 +41,7 @@
- cat_username): ?>
+ getCatUsername()): ?>
related->getResults(); ?>
+
+
=$this->transEsc('more_by_author', ['%%name%%' => $this->related->getName()])?>
+
+
+ - =$this->render('Related/Similar/item.phtml', compact('data'))?>
+
+
+
diff --git a/themes/bootstrap3/templates/Related/Similar.phtml b/themes/bootstrap3/templates/Related/Similar.phtml
index a30d6354628..7d1773ccb7d 100644
--- a/themes/bootstrap3/templates/Related/Similar.phtml
+++ b/themes/bootstrap3/templates/Related/Similar.phtml
@@ -3,33 +3,7 @@
- -
- 'related__icon'];
-
- $formats = $data->getFormats();
- $format = $formats[0] ?? null;
- $icon = $format
- ? preg_replace('/[^a-z0-9]/', '', strtolower($format))
- : 'default';
-
- if ($format) {
- $attrs['title'] = $format;
- }
- ?>
-
- =$this->icon('format-' . $icon, $attrs) ?>
- =$this->escapeHtml($data->getTitle())?>
-
- getPrimaryAuthors(); ?>
-
-
=$this->transEsc('by')?>: =$this->escapeHtml($authors[0]);?> 1): ?>, =$this->transEsc('more_authors_abbrev')?>
-
- getPublicationDates(); ?>
-
-
=$this->transEsc('Published')?>: (=$this->escapeHtml($pubDates[0])?>)
-
-
+ - =$this->render('Related/Similar/item.phtml', compact('data'))?>
diff --git a/themes/bootstrap3/templates/Related/Similar/item.phtml b/themes/bootstrap3/templates/Related/Similar/item.phtml
new file mode 100644
index 00000000000..9bc365e6585
--- /dev/null
+++ b/themes/bootstrap3/templates/Related/Similar/item.phtml
@@ -0,0 +1,25 @@
+ 'related__icon'];
+
+ $formats = $data->getFormats();
+ $format = $formats[0] ?? null;
+ $icon = $format
+ ? preg_replace('/[^a-z0-9]/', '', strtolower($format))
+ : 'default';
+
+ if ($format) {
+ $attrs['title'] = $format;
+ }
+?>
+
+ =$this->icon('format-' . $icon, $attrs) ?>
+ =$this->escapeHtml($data->getTitle())?>
+
+getPrimaryAuthors(); ?>
+
+
=$this->transEsc('by')?>: =$this->escapeHtml($authors[0]);?> 1): ?>, =$this->transEsc('more_authors_abbrev')?>
+
+getPublicationDates(); ?>
+
+
=$this->transEsc('Published')?>: (=$this->escapeHtml($pubDates[0])?>)
+
diff --git a/themes/bootstrap3/templates/admin/feedback/home.phtml b/themes/bootstrap3/templates/admin/feedback/home.phtml
index 543b664bac2..3ed2ae7c7e9 100644
--- a/themes/bootstrap3/templates/admin/feedback/home.phtml
+++ b/themes/bootstrap3/templates/admin/feedback/home.phtml
@@ -110,11 +110,11 @@ $this->headTitle($this->translate('VuFind Administration - Feedback Management')
=$this->escapeHtml($key)?>: =$this->escapeHtml($value)?>
=$this->transEsc('Created')?>:
- =$this->escapeHtml($this->dateTime()->convertToDisplayDateAndTime('Y-m-d H:i:s', $feedbackEntity->getCreated()->format('Y-m-d H:i:s')))?>
+ =$this->escapeHtml($feedbackEntity->getCreated()->format($this->config()->dateTimeFormat()))?>
=$feedbackItem['user_name'] ? (' ' . $this->transEsc('by') . ' ' . $this->escapeHtml($feedbackItem['user_name']) . ' (' . $feedbackEntity->getUser()->getId() . ')') : ''?>
=$this->transEsc('Updated')?>:
- =$this->escapeHtml($this->dateTime()->convertToDisplayDateAndTime('Y-m-d H:i:s', $feedbackEntity->getUpdated()->format('Y-m-d H:i:s')))?>
+ =$this->escapeHtml($feedbackEntity->getUpdated()->format($this->config()->dateTimeFormat()))?>
=$feedbackItem['manager_name'] ? (' ' . $this->transEsc('by') . ' ' . $this->escapeHtml($feedbackItem['manager_name']) . ' (' . $feedbackEntity->getUpdatedBy() . ')') : ''?>
diff --git a/themes/bootstrap3/templates/cart/cart.phtml b/themes/bootstrap3/templates/cart/cart.phtml
index 508b67b160f..e085ecb4c20 100644
--- a/themes/bootstrap3/templates/cart/cart.phtml
+++ b/themes/bootstrap3/templates/cart/cart.phtml
@@ -24,23 +24,25 @@
$this->bulkAction()->button(
'saveCart',
'user-list-add',
- 'Save',
+ 'bulk_save_button',
[
'title' => $this->translate('bulk_save_cart'),
]
)
?>
- =
- $this->bulkAction()->button(
- 'email',
- 'send-email',
- 'Email',
- [
- 'title' => $this->translate('bulk_email_cart'),
- ]
- )
- ?>
+ accountCapabilities()->isEmailActionAvailable()): ?>
+ =
+ $this->bulkAction()->button(
+ 'email',
+ 'send-email',
+ 'Email',
+ [
+ 'title' => $this->translate('bulk_email_cart'),
+ ]
+ )
+ ?>
+
export()->getActiveFormats('bulk'); ?>
0): ?>
=
diff --git a/themes/bootstrap3/templates/devtools/deminify.phtml b/themes/bootstrap3/templates/devtools/deminify.phtml
index cb73fe5ee6a..34cd74a1cca 100644
--- a/themes/bootstrap3/templates/devtools/deminify.phtml
+++ b/themes/bootstrap3/templates/devtools/deminify.phtml
@@ -1,8 +1,10 @@
headTitle('Deminifier');
+ $this->layout()->breadcrumbs = '