Bug 41863: Facets generated from Authorized values sometimes show empty labels

With facets generated from Authorized values, it may happen that the
list of authorized values lacks an entry for a code used in
a record. In this case, an empty entry will appear in the
facet list, with the number of uses but without any label.

It would be desirable to show at least the raw code, rather
than an empty label. This makes it easier to see which code has no
entry in the respective AV and to either add it or correct an
erroneous code.

Test plan:
==========

1. Have a standard KTD installation with Elasticsearch.
2. Add AV COUNTRY_CODES category and add two pairs (Authorized
   value, Description):
   * enk - England
   * xxu - United States

3. In the admin/searchengine/elasticsearch/mappings.yaml file,
   correct the definition of the pl search field as follows:

   pl:
-    label: pl
+    facet_order: 24
+    label: Publication place
     mandatory: ~
+    authorised_value_category: COUNTRY_CODES
     mappings:
-    - facet: ''
+    - facet: 1
       marc_field: 008_/15-17
       marc_type: marc21
       sort: 1

4. Reindex ES with:
   koha-elasticsearch --rebuild -r -d -b kohadev

5. Set the displayFacetCount systempreference to 'Show'
6. Perform a general search in the OPAC or staff interface: *
   View the 'Publication place' facet and notice a dozen empty
   entries, with only the number of occurrences.
7. Apply the patch ; restart_all
8. Repeat p. 6. You will see country codes that you can now add to AV
   or correct.

BTW, note that the tiny correction to Search.pm is analogous to
setting the label for 'special' types (i.e. itype, location, ccode,
holdingbranch, homebranch) two lines above.

Sponsored-by: Ignatianum University in Cracow
Signed-off-by: Roman Dolny <roman.dolny@jezuici.pl>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
This commit is contained in:
Janusz Kaczmarek 2026-02-17 10:53:37 +00:00 committed by Lucas Gass
parent e83f14c5fe
commit 00c4c9a599
No known key found for this signature in database
GPG Key ID: 60B447398B0D36CA
1 changed files with 1 additions and 1 deletions

View File

@ -557,7 +557,7 @@ sub _convert_facets {
if ( exists( $special{$type} ) ) {
$label = $special{$type}->{$t} // $t;
} elsif ( $type_to_label{$type}{av_cat} ) {
$label = $authorised_values{$t};
$label = $authorised_values{$t} // $t;
} else {
$label = $t;
}