From d4e99fe7d9073bb3fc9ddc092781db2aef98a686 Mon Sep 17 00:00:00 2001
From: Rasmus Fuhse <fuhse@data-quest.de>
Date: Mon, 27 Nov 2023 09:46:35 +0000
Subject: [PATCH] Resolve "Informationen der Bibliotheksdateien LibraryFile
 nicht sichtbar"

Closes #3504

Merge request studip/studip!2396
---
 templates/library/library_document_info.php | 112 +++++++++++++++++++-
 1 file changed, 110 insertions(+), 2 deletions(-)

diff --git a/templates/library/library_document_info.php b/templates/library/library_document_info.php
index 80bff26d389..12471238394 100644
--- a/templates/library/library_document_info.php
+++ b/templates/library/library_document_info.php
@@ -22,7 +22,7 @@ $is_search = !$document->csl_data;
             <dd><?= htmlReady($document->getTitle()) ?></dd>
             <dt><?= _('Typ') ?></dt>
             <dd><?= htmlReady($document->getType('display_name')) ?></dd>
-            <? if ($document->csl_data['issued'] || $document->csl_data['publisher']) : ?>
+            <? if (!empty($document->csl_data['issued']) || !empty($document->csl_data['publisher'])) : ?>
                 <dt><?= _('Veröffentlicht') ?></dt>
                 <dd><?= htmlReady($document->csl_data['publisher'] . ' ' . $document->getIssueDate(true)) ?></dd>
             <? endif ?>
@@ -30,10 +30,118 @@ $is_search = !$document->csl_data;
                 <dt><?= _('Medium') ?></dt>
                 <dd><?= htmlReady($document->csl_data['medium']) ?></dd>
             <? endif ?>
-            <? if ($document->csl_data['author']) : ?>
+            <? if (!empty($document->csl_data['author'])) : ?>
                 <dt><?= _('Erstellt von') ?></dt>
                 <dd><?= htmlReady($document->getAuthorNames()) ?></dd>
             <? endif ?>
+            <? if (!empty($document->csl_data['URL'])) : ?>
+                <dt><?= _('URL') ?></dt>
+                <dd><a href="<?= htmlReady($document->csl_data['URL']) ?>" target="_blank"><?= htmlReady($document->csl_data['URL']) ?></a></dd>
+            <? endif ?>
+            <? if (!empty($document->csl_data['translator'][0]['family'])) : ?>
+                <dt><?= _('Ãœbersetzer*in') ?></dt>
+                <dd>
+                <? foreach ($document->csl_data['translator'] as $index => $translator) : ?>
+                    <?= $index > 0 ? ', ' : '' ?>
+                    <?= htmlReady($translator['suffix'].' '.$translator['given'].' '.$translator['family']) ?>
+                <? endforeach ?>
+                </dd>
+            <? endif ?>
+            <? if (!empty($document->csl_data['title-short'])) : ?>
+                <dt><?= _('Kurztitel') ?></dt>
+                <dd><?= htmlReady($document->csl_data['title-short']) ?></dd>
+            <? endif ?>
+            <? if (!empty($document->csl_data['source'])) : ?>
+                <dt><?= _('Quelle') ?></dt>
+                <dd><?= htmlReady($document->csl_data['source']) ?></dd>
+            <? endif ?>
+            <? if (!empty($document->csl_data['publisher-place'])) : ?>
+                <dt><?= _('Verlagsort') ?></dt>
+                <dd><?= htmlReady($document->csl_data['publisher-place']) ?></dd>
+            <? endif ?>
+            <? if (!empty($document->csl_data['number-of-volumes'])) : ?>
+                <dt><?= _('Bandanzahl') ?></dt>
+                <dd><?= htmlReady($document->csl_data['number-of-volumes']) ?></dd>
+            <? endif ?>
+            <? if (!empty($document->csl_data['number-of-pages'])) : ?>
+                <dt><?= _('Seitenanzahl') ?></dt>
+                <dd><?= htmlReady($document->csl_data['number-of-pages']) ?></dd>
+            <? endif ?>
+            <? if (!empty($document->csl_data['note'])) : ?>
+                <dt><?= _('Zusätzliche Information') ?></dt>
+                <dd><?= htmlReady($document->csl_data['note']) ?></dd>
+            <? endif ?>
+            <? if (!empty($document->csl_data['language'])) : ?>
+                <dt><?= _('Sprache') ?></dt>
+                <dd><?= htmlReady($document->csl_data['language']) ?></dd>
+            <? endif ?>
+            <? if (!empty($document->csl_data['issued'][0][0])) : ?>
+                <dt><?= _('Datum der Veröffentlichung der Ausgabe') ?></dt>
+                <dd><?= htmlReady((!empty($document->csl_data['issued'][0][2]) ? $document->csl_data['issued'][0][2].'.' : '')
+                        .(!empty($document->csl_data['issued'][0][1]) ? $document->csl_data['issued'][0][1].'.' : '')
+                        .$document->csl_data['issued'][0][0]) ?></dd>
+            <? endif ?>
+            <? if (!empty($document->csl_data['ISBN'])) : ?>
+                <dt><?= _('ISBN') ?></dt>
+                <dd><?= htmlReady($document->csl_data['ISBN']) ?></dd>
+            <? endif ?>
+            <? if (!empty($document->csl_data['event-place'])) : ?>
+                <dt><?= _('Veranstaltungsort') ?></dt>
+                <dd><?= htmlReady($document->csl_data['event-place']) ?></dd>
+            <? endif ?>
+            <? if (!empty($document->csl_data['editor'][0]['family'])) : ?>
+                <dt><?= _('Verfasser*in') ?></dt>
+                <dd>
+                    <? foreach ($document->csl_data['editor'] as $index => $editor) : ?>
+                        <?= $index > 0 ? ', ' : '' ?>
+                        <?= htmlReady($editor['suffix'].' '.$editor['given'].' '.$editor['family']) ?>
+                    <? endforeach ?>
+                </dd>
+            <? endif ?>
+            <? if (!empty($document->csl_data['edition'])) : ?>
+                <dt><?= _('Auflagen') ?></dt>
+                <dd><?= htmlReady($document->csl_data['edition']) ?></dd>
+            <? endif ?>
+            <? if (!empty($document->csl_data['collection-title'])) : ?>
+                <dt><?= _('Sammlungstitel') ?></dt>
+                <dd><?= htmlReady($document->csl_data['collection-title']) ?></dd>
+            <? endif ?>
+            <? if (!empty($document->csl_data['collection-number'])) : ?>
+                <dt><?= _('Sammlungsnummer') ?></dt>
+                <dd><?= htmlReady($document->csl_data['collection-number']) ?></dd>
+            <? endif ?>
+            <? if (!empty($document->csl_data['collection-editor'][0]['family'])) : ?>
+                <dt><?= _('Sammlungseditor') ?></dt>
+                <dd>
+                    <? foreach ($document->csl_data['collection-editor'] as $index => $editor) : ?>
+                        <?= $index > 0 ? ', ' : '' ?>
+                        <?= htmlReady($editor['suffix'].' '.$editor['given'].' '.$editor['family']) ?>
+                    <? endforeach ?>
+                </dd>
+            <? endif ?>
+            <? if (!empty($document->csl_data['call-number'])) : ?>
+                <dt><?= _('Signatur') ?></dt>
+                <dd><?= htmlReady($document->csl_data['call-number']) ?></dd>
+            <? endif ?>
+            <? if (!empty($document->csl_data['archive_location'])) : ?>
+                <dt><?= _('Speicherort im Archiv') ?></dt>
+                <dd><?= htmlReady($document->csl_data['archive_location']) ?></dd>
+            <? endif ?>
+            <? if (!empty($document->csl_data['archive'])) : ?>
+                <dt><?= _('Archiv') ?></dt>
+                <dd><?= htmlReady($document->csl_data['archive']) ?></dd>
+            <? endif ?>
+            <? if (!empty($document->csl_data['accessed'][0][0])) : ?>
+                <dt><?= _('Zugriffsdatum') ?></dt>
+                <dd><?= htmlReady((!empty($document->csl_data['accessed'][0][2]) ? $document->csl_data['accessed'][0][2].'.' : '')
+                        .(!empty($document->csl_data['accessed'][0][1]) ? $document->csl_data['accessed'][0][1].'.' : '')
+                        .$document->csl_data['accessed'][0][0]) ?></dd>
+            <? endif ?>
+            <? if (!empty($document->csl_data['abstract'])) : ?>
+                <dt><?= _('Inhaltsangabe') ?></dt>
+                <dd><?= htmlReady($document->csl_data['abstract']) ?></dd>
+            <? endif ?>
+
             <? if ($document->catalog) : ?>
                 <dt><?= _('Katalog') ?></dt>
                 <? if ($document->opac_link) : ?>
-- 
GitLab