From 57edc9a635450c772baba97793b9fdde26c31940 Mon Sep 17 00:00:00 2001 From: Robert Lange <robert.lange@uni-leipzig.de> Date: Mon, 11 Oct 2021 13:14:33 +0200 Subject: [PATCH] refs #19208_merge [fid_adlr] map icons by config * move logic from templates to record view helper * keep special case for source id 56 * combine key by Format and Access and concatenate facet values * map icons in separate config file iconMapping.ini --- fid_adlr/config/vufind/iconMapping.ini | 57 +++++++++++++ .../DefaultRecord/record-icon-class.phtml | 84 ------------------- .../DefaultRecord/record-icon.phtml | 9 -- 3 files changed, 57 insertions(+), 93 deletions(-) create mode 100644 fid_adlr/config/vufind/iconMapping.ini delete mode 100644 themes/fid_adlr/templates/RecordDriver/DefaultRecord/record-icon-class.phtml diff --git a/fid_adlr/config/vufind/iconMapping.ini b/fid_adlr/config/vufind/iconMapping.ini new file mode 100644 index 00000000000..78bc61c0b1d --- /dev/null +++ b/fid_adlr/config/vufind/iconMapping.ini @@ -0,0 +1,57 @@ +;#################################################################### +;##################### DO NOT DELETE THIS HEADER #################### +;################### Leipzig University Library © 2021 ############## +; +; This is the SIGEL-instance-specific default INI-file and inherits +; all the settings from the INI-file defined in [Parent_Config] which +; points to the default INI-file located in the folder vufind2/local +; + +[Parent_Config] +relative_path = ../../../fid/config/vufind/iconMapping.ini + +[StyleBasedIcons] +; combine format facet and facet avail to one string +type = "Formats_FacetAvail" +concatenateKeys = true +Formats[default] = "" +Formats[unknown] = "" +Formats_FacetAvail[articleearticlelocal] = "iconcategory-article-offline" +Formats_FacetAvail[articleearticleonline] = "iconcategory-article-online" +Formats_FacetAvail[articleearticleonlinefree] = "iconcategory-article-online" +Formats_FacetAvail[audiolocal] = "iconcategory-audio-offline" +Formats_FacetAvail[audioonline] = "iconcategory-audio-online" +Formats_FacetAvail[bookebooklocal] = "iconcategory-book-offline" +Formats_FacetAvail[bookebookonline] = "iconcategory-book-online" +Formats_FacetAvail[bookebookonlinefree] = "iconcategory-book-online" +Formats_FacetAvail[bookebookvideolocal] = "iconcategory-book-offline" +Formats_FacetAvail[bookebookvideoonline] = "iconcategory-book-online" +Formats_FacetAvail[default] = "iconcategory-generic" +Formats_FacetAvail[journalejournallocal] = "iconcategory-journal-offline" +Formats_FacetAvail[journalejournalonline] = "iconcategory-journal-online" +Formats_FacetAvail[journalejournalonlinefree] = "iconcategory-journal-online" +Formats_FacetAvail[microformlocal] = "iconcategory-microfilm" +Formats_FacetAvail[microformonline] = "iconcategory-microfilm" +Formats_FacetAvail[musicalscorelocal] = "iconcategory-notes-offline" +Formats_FacetAvail[musicalscoreonline] = "iconcategory-notes-online" +Formats_FacetAvail[notatedmusiclocal] = "iconcategory-notes-offline" +Formats_FacetAvail[notatedmusiconline] = "iconcategory-notes-online" +Formats_FacetAvail[softwarelocal] = "iconcategory-software" +Formats_FacetAvail[softwareonline] = "iconcategory-software" +Formats_FacetAvail[thesisbookebooklocal] = "iconcategory-thesis-offline" +Formats_FacetAvail[thesislocal] = "iconcategory-thesis-offline" +Formats_FacetAvail[thesisbookebookonlinefree] = "iconcategory-thesis-online" +Formats_FacetAvail[thesisonline] = "iconcategory-thesis-online" +Formats_FacetAvail[thesisonlinefree] = "iconcategory-thesis-online" +Formats_FacetAvail[videolocal] = "iconcategory-video-offline" +Formats_FacetAvail[videoonline] = "iconcategory-video-online" +Formats_FacetAvail[videoonlinefree] = "iconcategory-video-online" +Formats_FacetAvail[videovideolocal] = "iconcategory-video-offline" +Formats_FacetAvail[videovideoonline] = "iconcategory-video-online" +Formats_FacetAvail[visualmedialocal] = "iconcategory-image-offline" +Formats_FacetAvail[visualmediaonline] = "iconcategory-image-online" +Formats_FacetAvail[visualmediaonlinefree] = "iconcategory-image-online" +Formats_FacetAvail[website] = "iconcategory-website" +Formats_FacetAvail[websitelocal] = "iconcategory-website" +Formats_FacetAvail[websiteonline] = "iconcategory-website" +Formats_FacetAvail[unknown] = "iconcategory-generic" diff --git a/themes/fid_adlr/templates/RecordDriver/DefaultRecord/record-icon-class.phtml b/themes/fid_adlr/templates/RecordDriver/DefaultRecord/record-icon-class.phtml deleted file mode 100644 index 2abdf79c988..00000000000 --- a/themes/fid_adlr/templates/RecordDriver/DefaultRecord/record-icon-class.phtml +++ /dev/null @@ -1,84 +0,0 @@ -<? -$normalizedValue = preg_replace('/[^a-z0-9]/', '', strtolower($this->value)); - -// Convert normalizedValue to styles -// finc: same list of states for icons like in de_15 #13704 - VE -switch ($normalizedValue) { - case 'articleearticlelocal': - echo 'iconcategory-article-offline'; - break; - case 'articleearticleonline': - case 'articleearticleonlinefree': - echo 'iconcategory-article-online'; - break; - case 'bookebooklocal': - case 'bookebookvideolocal': - echo 'iconcategory-book-offline'; - break; - case 'bookebookonline': - case 'bookebookonlinefree': - case 'bookebookvideoonline': - echo 'iconcategory-book-online'; - break; - case 'audiolocal': - echo 'iconcategory-audio-offline'; - break; - case 'audioonline': - echo 'iconcategory-audio-online'; - break; - case 'journalejournallocal': - echo 'iconcategory-journal-offline'; - break; - case 'journalejournalonline': - case 'journalejournalonlinefree': - echo 'iconcategory-journal-online'; - break; - case 'videolocal': - case 'videovideolocal': - echo 'iconcategory-video-offline'; - break; - case 'videoonline': - case 'videoonlinefree': - case 'videovideoonline': - echo 'iconcategory-video-online'; - break; - case 'thesislocal': - echo 'iconcategory-thesis-offline'; - break; - case 'thesisonline': - case 'thesisonlinefree': - echo 'iconcategory-thesis-online'; - break; - case 'visualmedialocal': - echo 'iconcategory-image-offline'; - break; - case 'visualmediaonline': - case 'visualmediaonlinefree': - echo 'iconcategory-image-online'; - break; - case 'softwarelocal': - case 'softwareonline': - echo 'iconcategory-software'; - break; - case 'notatedmusiclocal': - case 'musicalscorelocal': - echo 'iconcategory-notes-offline'; - break; - case 'notatedmusiconline': - case 'musicalscoreonline': - echo 'iconcategory-notes-online'; - break; - case 'microformlocal': - case 'microformonline': - echo 'iconcategory-microfilm'; - break; - case 'website': - case 'websitelocal': - case 'websiteonline': - echo 'iconcategory-website'; - break; - default: - echo 'iconcategory-generic'; - break; -} -?> diff --git a/themes/fid_adlr/templates/RecordDriver/DefaultRecord/record-icon.phtml b/themes/fid_adlr/templates/RecordDriver/DefaultRecord/record-icon.phtml index e6b471fb660..852918bc2cc 100644 --- a/themes/fid_adlr/templates/RecordDriver/DefaultRecord/record-icon.phtml +++ b/themes/fid_adlr/templates/RecordDriver/DefaultRecord/record-icon.phtml @@ -4,15 +4,6 @@ $sid = $this->driver->getSourceID(); if ($sid == '51') { $iconClass = 'iconcategory-book-offline'; -} else { - /* finc: solr field facet_avail instead of access_facet (field deprecated) #15375 - GG */ - $format = $this->driver->getFormats(); - $format = count($format) > 1 ? $format[0] : $format; - $format = is_array($format) ? $format : [$format]; - $facetAvail = $this->driver->getFacetAvail(); - $iconValue = array_merge($format, $facetAvail); - $iconValue = implode('', $iconValue); - $iconClass = $this->record($this->driver)->getRecordIconClass($iconValue); } ?> <span class="access-icon hidden-print"> -- GitLab