From 0ed5c4294cfe35102159eff45c992af70a9545ec Mon Sep 17 00:00:00 2001 From: Janusz Kaczmarek Date: Tue, 17 Feb 2026 10:53:37 +0000 Subject: [PATCH] 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 --- Koha/SearchEngine/Elasticsearch/Search.pm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Koha/SearchEngine/Elasticsearch/Search.pm b/Koha/SearchEngine/Elasticsearch/Search.pm index ccf502c96c..23ba2eb711 100644 --- a/Koha/SearchEngine/Elasticsearch/Search.pm +++ b/Koha/SearchEngine/Elasticsearch/Search.pm @@ -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; } -- 2.39.5