After upgrading to 24.05, the default Elasticsearch-Koha installation has facets for "Holding libraries" and "homelibrary" (see screenshot). Bug 35138 introduced a search_field atomicupdate that changed holdingbranch and homebranch labels based on DisplayLibraryFacets system preference the following way: "holdinglibrary" => "Holding libraries" "homelibrary" => "Home libraries" If DisplayLibraryFacets was set to "both", both labels would be updated. If not, only one of them is changed. DisplayLibraryFacets defaults to "holding" meaning a default Koha setup would only update "Holding libraries" and leave "homelibrary" as it is. https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=165813&action=diff#a/installer/data/mysql/atomicupdate/bug_35138.pl_sec1 This creates an unfriendly facet label "homelibrary".
Created attachment 169451 [details] Unfriendly facet label "homelibrary"
I'm trying to understand why the atomicupdate is updating either both of the labels or just one of them, based on DisplayLibraryFacets setting? What is the case where the other label should be left unchanged?
I don't know enough about what is happening (labels for the OPAC were fixed in bug 36750, but your screenshot looks like it is from the staff interface). My understanding is that DisplayLibraryFacets is Zebra only now, so not sure why it would affect Elasticsearch, even if there was a database update for it. In current main using koha-testing-docker and ES8, both of the labels display correctly for me.
Created attachment 170855 [details] [review] Bug 37446: Fix search facets for holding and home libraries This bug ensures that the facet labels for holdingbranch and homebranch are updated, regardless of how the DisplayLibraryFacets system preference is set. To test: 1. Check out an earlier version of Koha, for example `git checkout v23.11.08-1` 2. Spin up your development environment with elasticsearch, for example `ktd --es7 up` 3. Once it's ready, go to the staff interface and search for the DisplayLibraryFacets system preference in Koha administration. Set to 'holding library' if not already. 4. Do a catalogue search, notice the facets on the side. "Holding libraries" should show as normal. There should be no facet for home libraries. 5. In your terminal, check out 24.05.x, for example `git checkout v24.05.03` 6. Run database updates to upgrade Koha, for example `sudo koha-upgrade-schema kohadev`, and restart services `restart_all` 7. Repeat step 4. Notice the error in the facets "homelibrary" 8. Apply patch from Bug 37446 9. Repeat step 6 10. Repeat step 4. This time the facet should read "Home libraries" Sponsored-by: Toi Ohomai Institute of Technology
Created attachment 171238 [details] [review] Bug 37446: Fix search facets for holding and home libraries This bug ensures that the facet labels for holdingbranch and homebranch are updated, regardless of how the DisplayLibraryFacets system preference is set. To test: 1. Check out an earlier version of Koha, for example `git checkout v23.11.08-1` 2. Spin up your development environment with elasticsearch, for example `ktd --es7 up` 3. Once it's ready, go to the staff interface and search for the DisplayLibraryFacets system preference in Koha administration. Set to 'holding library' if not already. 4. Do a catalogue search, notice the facets on the side. "Holding libraries" should show as normal. There should be no facet for home libraries. 5. In your terminal, check out 24.05.x, for example `git checkout v24.05.03` 6. Run database updates to upgrade Koha, for example `sudo koha-upgrade-schema kohadev`, and restart services `restart_all` 7. Repeat step 4. Notice the error in the facets "homelibrary" 8. Apply patch from Bug 37446 9. Repeat step 6 10. Repeat step 4. This time the facet should read "Home libraries" Sponsored-by: Toi Ohomai Institute of Technology Signed-off-by: David Nind <david@davidnind.com>
Yes there is something wrong. The label should be adjusted for both, but we needed to take into account DisplayLibraryFacets to set facet_order to NUL if we didn't want to display it. Is that correct?
(In reply to Jonathan Druart from comment #6) > Yes there is something wrong. The label should be adjusted for both, but we > needed to take into account DisplayLibraryFacets to set facet_order to NUL > if we didn't want to display it. > > Is that correct? The previous update doesn't seem to have touched facet_order: vim installer/data/mysql/db_revs/231200036.pl If I understand, the changes in 35138 moved the control from the syspref to the mappings - but existing mapping weren't touched, so libraries will now ignore the syspref and display noth until mappings are altered. In either case, I think the only place the labels are used are int he facets - so updating the labels to be correct no matter what shows does seem the right thing to do
Created attachment 171576 [details] [review] Bug 37446: Fix search facets for holding and home libraries This bug ensures that the facet labels for holdingbranch and homebranch are updated, regardless of how the DisplayLibraryFacets system preference is set. To test: 1. Check out an earlier version of Koha, for example `git checkout v23.11.08-1` 2. Spin up your development environment with elasticsearch, for example `ktd --es7 up` 3. Once it's ready, go to the staff interface and search for the DisplayLibraryFacets system preference in Koha administration. Set to 'holding library' if not already. 4. Do a catalogue search, notice the facets on the side. "Holding libraries" should show as normal. There should be no facet for home libraries. 5. In your terminal, check out 24.05.x, for example `git checkout v24.05.03` 6. Run database updates to upgrade Koha, for example `sudo koha-upgrade-schema kohadev`, and restart services `restart_all` 7. Repeat step 4. Notice the error in the facets "homelibrary" 8. Apply patch from Bug 37446 9. Repeat step 6 10. Repeat step 4. This time the facet should read "Home libraries" Sponsored-by: Toi Ohomai Institute of Technology Signed-off-by: David Nind <david@davidnind.com> Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(In reply to Nick Clemens (kidclamp) from comment #7) > (In reply to Jonathan Druart from comment #6) > > Yes there is something wrong. The label should be adjusted for both, but we > > needed to take into account DisplayLibraryFacets to set facet_order to NUL > > if we didn't want to display it. > > > > Is that correct? > > The previous update doesn't seem to have touched facet_order: > vim installer/data/mysql/db_revs/231200036.pl > > If I understand, the changes in 35138 moved the control from the syspref to > the mappings - but existing mapping weren't touched, so libraries will now > ignore the syspref and display noth until mappings are altered. > > In either case, I think the only place the labels are used are int he facets > - so updating the labels to be correct no matter what shows does seem the > right thing to do Before bug 35138: DisplayLibraryFacets had priority over the settings in the mappings page. If you had DisplayLibraryFacets set to "holding library" (only) then only the holding library facet was displayed. In db_revs/231200036.pl we do not reorder the facet, and remove the facet_order for holding/homebranch when necessary. Not saying this patch is wrong, but there is still something wrong. Opened 37953, please test ASAP.
Thanks for all the hard work! Pushed to main for the next 24.11.00 release as RM Assistant
Backported to 24.05.x for upcoming 24.05.06