commit 74d5af9b39ab1f6e66e9e94f6335e29f5ecc60a0 Author: Pedro Amorim Date: Thu Oct 23 10:14:01 2025 +0000 Bug 41001: (QA follow-up): Add 'Confirmation messages with inputs' specific tests cypress run --spec t/cypress/integration/ERM/Dialog_spec.ts Signed-off-by: Jonathan Druart Signed-off-by: Lucas Gass commit 9d6ad3bbc53d70bec0c2c7a28738d399dfee4d9a Author: Pedro Amorim Date: Mon Oct 13 13:31:23 2025 +0000 Bug 41001: Add cypress test Signed-off-by: Jonathan Druart Signed-off-by: Lucas Gass commit f403a49d4ea7cf392e1c7c869d8d91df70b2e91e Author: Pedro Amorim Date: Tue Sep 30 14:21:15 2025 +0000 Bug 41001: Remove messages when dialog closes, even if not through the close button This ensures that when the dialog is closed, even when clicked outside of it, the messages are correctly removed, same as if the 'close' button had been clicked. Test plan: - create a data ERM provider /cgi-bin/koha/erm/eusage/usage_data_providers/add - dummy data should be sufficient - then go to data providers list /cgi-bin/koha/erm/eusage/usage_data_provider - open web development tools console (F12 firefox) - click on "Run now" - dismiss dialog by clicking outside the modal! - click again on "Run now" - check the logs for errors - any other clicks to create a modal won't work now ("run now", "delete") Apply patch. run yarn js:watch or yarn js:build. Repeat. Signed-off-by: Jan Kissig Signed-off-by: Jonathan Druart Signed-off-by: Lucas Gass commit 07e379e74167df5990867ba1d14746dc232d9ac0 Author: Michael Hafen Date: Tue Jul 8 14:49:23 2025 -0600 Bug 40288: Apply overflow css to all of patronbriefinfo li's and patroninfo-section li's too. Signed-off-by: Owen Leonard Signed-off-by: Laura_Escamilla Signed-off-by: Lucas Gass commit c403c1fc200b3eb2b14f0eaf4c11a5faaa49fa1d Author: Michael Hafen Date: Tue Jul 1 18:17:31 2025 -0600 Bug 40288: constrain patron brief info in patron sidebar to parent width The patron info in the patron / circ-menu sidebar is not constrained to it's parent's width. I found this with a very long email address, where the ul grew to match the email address length, and the patron image container also grew. Both overflowed the sidebar. Test plan: 1. find or make a patron with a very long email address (more tha 50 characters). 2. open the patron details page for that patron. Observe the patron image and patron details overflows the patron sidebar (the email address will be hidden under the contact information panel. 3. Apply patch and rebuild css files. It may be necessary to clear the browser cache. 4. open the patron details page for that patron again. Observe the patron image and details does not overflow the patron sidebar. Signed-off-by: George Signed-off-by: Owen Leonard Signed-off-by: Laura_Escamilla Signed-off-by: Lucas Gass commit 5f8cc2de5d996f59273e63c89161c6ff51c68367 Author: Owen Leonard Date: Mon Jun 9 12:46:45 2025 +0000 Bug 40086: Table settings for Article Requests tables This patch adds table settings for the three tables on the article requests page in the staff interface: New, Pending, and Processing. The patch also disables sorting on the checkbox column and adds "anti-the" sorting to the title column. To test, apply the patch and restart services. - If necessary, enable article requests in at least one rule in Circulation and Fine Rules. - If there are no article requests in your system, log in to the OPAC as a user who can place article requests and submit multiple requests for various titles. - Go to Circulation -> Article requests - If there are no requests under the "Pending" and "Processing" tables, use the "Actions" menu to set some as pending and some as processing. - Test the "Columns" menu for each table, confirming that the correct columns are shown or hidden according to your selections. - Test sorting of the "Title" column to confirm that articles are ignored in sorting. - Go to Administration -> Table settings -> Circulation -> Article requests and try making various changes to the default configuration. - Return to the Article requests page to confirm that your selections are reflected there* * You may need to delete the table settings in local storage in order for the default table settings to be shown. In Firefox DevTools look under the "Storage" tab -> Local storage -> Delete all. Sponsored-by: Athens County Public Libraries Signed-off-by: David Nind Signed-off-by: Lucas Gass commit e23f51a01750a5a2eeb42cfd0cf84613252a7063 Author: Tomás Cohen Arazi Date: Thu Nov 6 09:06:29 2025 -0300 Bug 32581: (follow-up) Tidy files Signed-off-by: Tomás Cohen Arazi Signed-off-by: Lucas Gass commit 8e165a80c1af85db417e32df0d443789003c7ebf Author: Sam Lau Date: Thu Jul 11 16:03:26 2024 +0000 Bug 32581: Add confirmation modal This patch makes changing the expiration date optional, by providing a modal when switching a patron category. Confirming the modal will change the expiration date to the default and cancelling will keep the same expiration date. To test: 1) Same plan as before except now there is a modal when changing the patron category. - Attempt confirming the modal: expiration date should change to default. - Attempt canceling the modal: expiration date should stay the same Signed-off-by: Jan Kissig Signed-off-by: Tomás Cohen Arazi Signed-off-by: Lucas Gass commit 12f8488b1356c74a99a3095c1e46074d110e134d Author: Sam Lau Date: Wed Jul 3 20:09:37 2024 +0000 Bug 32581: Automatically update patron expiration date when changing their category To test: 1) In Administration-> Patron categories, set the enrollment period for the 'School' category to 12 months. 2) Find a patron that is from another category, edit their info and change their category from patron to school. 3) Note that the expiry date automatically changes to 12 months from today. 4) Save your changes and ensure on the patron's detail page that their expiration date was successfully changed. Signed-off-by: Roman Dolny Signed-off-by: Jan Kissig Signed-off-by: Tomás Cohen Arazi Signed-off-by: Lucas Gass commit c5cb44a8e41567700f2d66699eb22a695f47aff2 Author: Kyle M Hall Date: Mon Nov 3 14:38:27 2025 -0500 Bug 40890: Move fetching of batch size to within the instance loop Signed-off-by: Kyle M Hall Signed-off-by: Martin Renvoize Signed-off-by: Lucas Gass commit 03aec74eb6898b640bb76edbe04a3a29f760b97d Author: Tomás Cohen Arazi Date: Fri Sep 26 17:00:44 2025 -0300 Bug 40890: Make batch_size configurable for koha-es-indexer This patch adds a new configuration entry in `koha-conf.xml` for making it possible to set a different `batch_size` for `koha-es-indexer`. The current implementation has a default of *10* that can be overridden using the CLI parameter `--batch_size N`. Unfortunately, if you restart the server or the service without passing the parameter, it will be set back to 10. This patch solves that by adding a new config entry and making the script use it. The passed CLI parameter will keep overridding the configured value. To test: 1. Run: $ ktd --shell k$ koha-es-indexer --restart --batch_size 100 kohadev k$ ps -ef | grep elastic => SUCCESS: No errors. Notice '100' is passed to the called perl script 2. Run: k$ koha-es-indexer --restart kohadev k$ ps -ef | grep elastic => FAIL: Notice '10' is the new value 3. Apply this patch 4. Run: k$ reset_all 5. Repeat 1 and 2 => SUCCESS: '100' is kept. 6. Try standalone `--start` too 7. Sign off :-D Signed-off-by: Kyle M Hall Signed-off-by: Martin Renvoize Signed-off-by: Lucas Gass commit 33f4935bce675e03539412414a8cfe7807932f19 Author: sashaanastasi Date: Thu Jul 17 22:12:26 2025 +0000 Bug 39280: Remove misleading message text for ODUE notice This patch removes unnecessary and misleading wording from the overdue note as it depends on the library's circulation rules: "If an item becomes more than 30 days overdue, you will be unable to use your library card until the item is returned." Test plan: 1. Check the wording of the ODUE notice under Tools > Patrons and circulation > Notices and slips. 2. Note that it includes this wording, which may be unnecessary or misleading depending on the library's settings: "If an item becomes more than 30 days overdue, you will be unable to use your library card until the item is returned." 3. Apply the patch. 4. Check that the updated ODUE notice has removed the wording by either: 4.1 Resetting everything: reset_all 4.2 Viewing the default notice - click "View default" when viewing the email notice 5. Sign off. Signed-off-by: David Nind Signed-off-by: Lucas Gass commit ed56082a4c79d20fede33c6e2e197bf61d76636e Author: Pedro Amorim Date: Wed Nov 5 15:20:24 2025 +0000 Bug 40613: (QA follow-up): Add hold_group_id param This now passes: prove xt/api.t Signed-off-by: Lucas Gass commit de53593b49fed333d9bf67881885d18d2eb3f89f Author: Pedro Amorim Date: Thu Aug 7 15:36:10 2025 +0000 Bug 40613: Add 'ungroup holds' button Test plan, k-t-d, patches applied: 1) Search for 'test': http://localhost:8081/cgi-bin/koha/catalogue/search.pl?q=test 2) Click the 'Select all' link on the left of the search toolbar 3) Click the 'Place hold' button on the same toolbar 4) On the patron input, add 'koha' 5) You need to pick the 'Pickup location' specifically for each hold. Click 'Place holds' 6) Now visit the patron details page: http://localhost:8081/cgi-bin/koha/members/moremember.pl?borrowernumber=51 7) Click the 'Holds' tab. 8) Click the top most checkbox to select all holds. Click the 'group selected' button. Notice the holds are grouped and the 'group hold' column shows the hold group number accordingly. 9) Test that selecting the hold group number opens the hold group modal and a new 'ungroup holds' button exist. 10) Click that button, ensure it deletes the holde group. Test with more holds, more groups, etc. Signed-off-by: Anneli Österman Signed-off-by: Andrew Fuerste Henry Signed-off-by: Lucas Gass commit 8648c3982ca02df6d9f5731ee797f96fb036c413 Author: Pedro Amorim Date: Thu Aug 7 14:47:00 2025 +0000 Bug 40613: Add DELETE hold groups REST API endpoint prove t/db_dependent/api/v1/patrons_hold_groups.t Signed-off-by: Anneli Österman Signed-off-by: Andrew Fuerste Henry Signed-off-by: Lucas Gass commit 4fedfc5adbf4479f662e132c2d13f8894024024b Author: Janusz Kaczmarek Date: Sun Feb 2 15:17:35 2025 +0100 Bug 29733: MARC21: Link 7xx linking fields to marc21_linking_section.pl value builder When creating an analytical record from scratch and filling the 773 field with marc21_linking_section.pl plugin, the information put in field 773 is very basic, incomplete, sometimes buggy ($9, $0). Test plan ========= 1. Configure a MARC bibliographic framework: enable essential subfields in 773: 7, a, t, b, d, g, k, x, z, w (check the Editor checkbox), put them in this order, and chose plugin marc21_linking_section.pl for 773 $t. 2. Start creating a new record and go to 773 $t. Activate the plugin to find the a record to become the host record (perform a search for 'Linux kernel development'). Note the content of the 773 field. 3. Apply the patch, restart plack etc. 4. Repeat p. 2.-3. See that the generated 773 field contains now much more information, including 773 $7. Additionally, commented code has been removed and check/variable initialization added to get rid of warnings in log. Signed-off-by: Roman Dolny Signed-off-by: Lucas Gass commit 38b0e7ce61d23ade9a3486fe9687599c3e17a8cd Author: Janusz Kaczmarek Date: Fri May 23 10:48:07 2025 +0000 Bug 33296: Unit tests Unit tests for Bug 33296. Signed-off-by: Roman Dolny Signed-off-by: Lucas Gass commit 082de622525a9c45e84bfc63b53aef08065def0a Author: Janusz Kaczmarek Date: Sat Nov 23 15:42:15 2024 +0000 Bug 33296: Linker should search for authority records with an appropriate 008/14,15,16 value In an authority record, 008/14 = 'a' says it's appropriate for use as a main or added entry (1xx, 7xx), 008/15 = 'a' says it's appropriate for use as a subject entry, and 008/16 = 'a' says it's appropriate for use as a series entry. Test plan: ========== 1. Have a standard KTD environment. Have the patches from Bug 38494 applied. 2. Set AutoLinkBiblios system preference to 'Do', and ConsiderHeadingUse to 'Do'. 3. Open an existing bibliographic record and add a new field 650. In subfield $a enter 'Application software' (without quotes), and in $x 'Development.' (with final dot). 4. Save the record. In Normal view control that the entered subject heading entry has been linked with the existing authority record (note the magnifying glass icon). 5. Apply the patch ; restart all. 6. Repeat p. 3. Note that this time the newly entered subject heading entry has not been linked with the existing authority record. This is because the authority record has 008/15 = '|' while 'a' is required with ConsiderHeadingUse. 7. In Authorities, find the record for 'Application software--Development.' Modify it by changing 008/15 to 'a' (Heading use--subject added entry). 8. Return to the bibliographic record. Open it in the editor and save. The subject heading entry for 'Application software--Development.' should now be linked with the existing authority record. Signed-off-by: Roman Dolny Signed-off-by: Lucas Gass commit 27230e64ad8f7555023b2e9368a4baa4efba9329 Author: Fridolin Somers Date: Tue Oct 14 12:00:11 2025 +0200 Bug 29908: Remove warning when empty ClaimReturnedWarningThreshold in patron_messages.inc System preference ClaimReturnedWarningThreshold manages the display of a patron message in case of too many claims. But this preference may be empty. It is created empty in installer/data/mysql/mandatory/sysprefs.sql. This generates a warning : Argument "" isn't numeric in numeric gt (>) at /kohadevbox/koha/koha-tmpl/intranet-tmpl/prog/en/includes/patron_messages.inc line 128. Test plan : 1) Set systempreference 'ClaimReturnedWarningThreshold' empty 2) Go to a patron details page 3) Check there is no warning in logs 4) Go to a patron check-out page 5) Check there is no warning in logs 6) Set systempreference 'ClaimReturnedWarningThreshold' with an integer (ie 5) Repeat from 2) Signed-off-by: Kyle M Hall Signed-off-by: Marcel de Rooy Signed-off-by: Lucas Gass commit 1ba4ff89a75b39641a4d80000fc7da4bd1a17944 Author: Jonathan Druart Date: Thu Oct 23 15:57:55 2025 +0200 Bug 40964: Add long version of options to man Signed-off-by: Jonathan Druart Signed-off-by: Lucas Gass commit 41266e4e712366fde2732ee02717204f16a2cd56 Author: Thomas Klausner Date: Tue Oct 7 14:35:44 2025 +0000 Bug 40964: add --where to koha-elasticsearch wrapper scripts and document it Test Plan: * Start and enter ktd * run koha-elasticsearch with --where, which has no effect: debian/scripts/koha-elasticsearch --rebuild -b -v --where 'biblionumber > 427' kohadev * But you will see some warnings like: Unknown instance --where Unknown instance biblionumber > 427 * Final output is: Total 435 records indexed Apply the patch * run the same command again: debian/scripts/koha-elasticsearch --rebuild -b -v --where 'biblionumber > 427' kohadev * output should be Checking state of biblios index Indexing biblios Committing final records... Total 11 records indexed * Run `debian/scripts/koha-elasticsearch --help` * "-w|--where" should show up in the docs Sponsored-by: HKS3 Sponsored-by: Koha DACH Hackfest Signed-off-by: Anke Bruns Signed-off-by: Jonathan Druart Signed-off-by: Lucas Gass commit dbf341bfcbf10a8f646b7f6a7233203d418a2133 Author: Lucas Gass Date: Fri Nov 7 17:45:44 2025 +0000 Bug 40245: DBRev 25.06.00.034 Signed-off-by: Lucas Gass commit cf9c631c6b8739a7bf87dc95957109c18b8b93fb Author: CJ Lynce Date: Wed Oct 15 18:45:26 2025 +0000 Bug 40245: Update cypress test to handle ShowPatronFirstnameIfDifferentThanPreferredname Updates patron format cypress tests to allow for ShowPatronFirstnameIfDifferentThanPreferredname Test Plan: -Install Patch -On command line, in koha root directory, run `cypress run --spec t/cypress/integration/Patron/Format.ts` -Check to make all tests pass Signed-off-by: Andrew Fuerste Henry Signed-off-by: Nick Clemens Signed-off-by: Lucas Gass commit 3bb09367850cb095764b68020998f159e303909d Author: CJ Lynce Date: Mon Oct 13 22:20:35 2025 +0000 Bug 40245: Show firstname in patron search results when different than preferred_name This patch shows the patron's firstname in patron search results and autosuggestions when the patrons preferred_name is different than their first name. Requires that the ShowPatronFirstnameIfDifferentThanPreferredname system preference is enabled. Test plan: 0. Apply patches and login to the staff interface. 1. Edit a patron to give a different preferred name than firstname. 2. Return to home page and search for the patron in the quick-search bar. 3. Verify patron shows up in autosuggest list, showing preferred name only. 4. Verify patron shows up in regular list (member.pl) with preferred name showing only. 5. Change syspref ShowFirstIfDifferentThanPreferred to "Show" and save. 6. Return to home page and search for the patron in the quick-search bar. 7. Verify patron shows up in autosuggest list, showing preferred name, and firstname in brackets. 8. Verify patron shows up in regular list (member.pl) with preferred name, and firstname in brackets. Sponsored-by: Westlake Porter Public Library Signed-off-by: Andrew Fuerste Henry Signed-off-by: Nick Clemens Signed-off-by: Lucas Gass commit 1d6eb51d20cd77a1185c185e4b2c4949d70d0b2f Author: CJ Lynce Date: Mon Oct 13 21:51:06 2025 +0000 Bug 40245: Add new system preference ShowPatronFirstnameIfDifferentThanPreferredname Adds a new system preference ShowPatronFirstnameIfDifferentThanPreferredname to allow a patron's firstname to be shown in search results when different than their preferred name. Sponsored-by: Westlake Porter Public Library Signed-off-by: Andrew Fuerste Henry Signed-off-by: Nick Clemens Signed-off-by: Lucas Gass commit b0656241def6d0eda99d33594b2ca66f85b63ddf Author: Baptiste Wojtkowski Date: Thu Oct 30 15:18:55 2025 +0000 Bug 41119: Add missing function to acqui-home.tt TEST PLAN: DO NOT APPLY PATCH BEFORE TESTING 1 - Go to histsearch.pl, type "ko" in "Basket created by" -> autocompletion starts 2 - Go to acqui-home.pl, type "ko" in "Basket created by" -> autocompletion is ko 3 - Apply patch 4 - Go to histsearch.pl, type "ko" in "Basket created by" -> autocompletion starts 5 - Go to acqui-home.pl, type "ko" in "Basket created by" -> autocompletion starts Signed-off-by: Andrew Fuerste Henry Amended-by: Jonathan Druart Tidy Signed-off-by: Jonathan Druart Signed-off-by: Lucas Gass commit 19c7179a1364b34902ba32caa5f7009b4bdbee93 Author: Jonathan Druart Date: Mon Sep 15 16:30:49 2025 +0200 Bug 41153: Clean up catalogue/MARCdetail.pl Signed-off-by: Marcel de Rooy Signed-off-by: Lucas Gass commit 68451ad91849e412973e7f15779134202c77566f Author: Paul Derscheid Date: Mon Oct 6 14:23:11 2025 +0200 Bug 35451: (QA follow-up) Add newlines to updated DBIC files as per Bug 40541 Signed-off-by: Paul Derscheid Signed-off-by: Lucas Gass commit 99f5f3d145f3a797ed2a8b74d66659cc6978330c Author: Lucas Gass Date: Fri Nov 7 17:41:14 2025 +0000 Bug 35451: DBIC Signed-off-by: Lucas Gass commit c26e26a697f0205f860e6d5ecc600180a16dd1f0 Author: Lucas Gass Date: Fri Nov 7 17:38:57 2025 +0000 Bug 35451: DBRev 25.06.00.033 Signed-off-by: Lucas Gass commit 316304431ac7ee94189acd0a7aa99ed77358a6ac Author: Martin Renvoize Date: Tue May 13 20:14:35 2025 +0100 Bug 35451: (follow-up) Save join in C4::Serials::DelSubscription We can use the new record_table field to save ourselves a join in here too. Signed-off-by: Paul Derscheid Signed-off-by: Lucas Gass commit 0c7e44022efc7826ed771220a795abfe080bc520 Author: Martin Renvoize Date: Tue May 13 20:08:37 2025 +0100 Bug 35451: (follow-up) Fix C4::Acquisition::TransferOrder This patch adds table name to the additional fields clone found insdie TransferOrder. Signed-off-by: Paul Derscheid Signed-off-by: Lucas Gass commit 65b3aee93fdd97c64225397b733e683d5813b0f2 Author: Martin Renvoize Date: Thu Nov 30 12:10:30 2023 +0000 Bug 35451: Fix test data Signed-off-by: David Nind Signed-off-by: Paul Derscheid Signed-off-by: Lucas Gass commit 63d3b4d4ded7f5419771dc4dcbbe5a77c455a3a9 Author: Martin Renvoize Date: Thu Nov 30 11:48:41 2023 +0000 Bug 35451: Update relations Signed-off-by: David Nind Signed-off-by: Paul Derscheid Signed-off-by: Lucas Gass commit 48840e9d9510c3d42fc06f12139382b577b07270 Author: Martin Renvoize Date: Thu Nov 30 11:47:53 2023 +0000 Bug 35451: Record table in set_additional_fields Signed-off-by: David Nind Signed-off-by: Paul Derscheid Signed-off-by: Lucas Gass commit ddd8e697b4c273c1913fa3ef46e919adb25e349c Author: Martin Renvoize Date: Thu Nov 30 11:31:02 2023 +0000 Bug 35451: Add record_table to additional_field_values This patch updates the database to include a record_table field in the additional_field_values table and adds an index on that field. This should facilitate more performant joins. Signed-off-by: David Nind Signed-off-by: Paul Derscheid Signed-off-by: Lucas Gass commit 882247a4747774de80490509fcfd6fce7e322293 Author: Martin Renvoize Date: Fri Nov 7 09:22:47 2025 +0000 Bug 20253: (follow-up) Re-add missing is_boolean flag Signed-off-by: Lucas Gass commit ce474740a2bed2653c6558f31ca2b373829ddbf7 Author: Jonathan Druart Date: Thu Nov 6 09:33:48 2025 +0100 Bug 39860: Fix selenium/opac_holds.t # Failed test 'Correctly in search results page' # at t/db_dependent/selenium/opac_holds.t line 88. # 'Error: Can't use an undefined value as a HASH reference at /kohadevbox/koha/C4/XSLT.pm line 247' # doesn't match '(?^u:Results of search for 'opac holds test place hold button')' might be a conflict with bug 40943 Signed-off-by: Lucas Gass commit 2a3c21f0d543f3856fec0051db8da0a0c2b8e602 Author: Jonathan Druart Date: Thu Nov 6 08:57:59 2025 +0100 Bug 40943: Fix t/Koha/Script.t Failed with: Failed test 'Context userenv set correctly with no flags' at t/Koha/Script.t line 31. Structures begin differing at: $got->{session_id} = undef $expected->{session_id} = Does not exist session_id is now part of userenv Signed-off-by: Lucas Gass commit b385f7b4ec250d1acc058faf5fd9564c7b03ab37 Author: David Cook Date: Mon Oct 27 05:36:47 2025 +0000 Bug 18148: Add unit tests Signed-off-by: Owen Leonard Signed-off-by: Laura_Escamilla Signed-off-by: Lucas Gass commit 5908412f34c9811e9f5de7c9cbbd986da063fa07 Author: David Cook Date: Mon Oct 27 05:06:00 2025 +0000 Bug 18148: Make list of lists in OPAC sortable This patch adds sorting to lists of lists in the OPAC. The mechanism used here for op=list is similar to the one used in op=view, so it's stylistically and functionally consistent with the rest of the Lists module in the OPAC. Test plan: 0. Apply the patch and restart Plack (ie koha-plack --restart kohadev) 1. Create 20+ public lists and 20+ private lists for a particular user you control (try to use names that range throughout the alphabet) 2. Using SQL, update the Modification date for at least 1 public list and 1 private list 3. As an anonymous (ie not logged in user), go to /cgi-bin/koha/opac-shelves.pl?op=list&public=0 4. Note you cannot see any lists 5. Go to http://localhost:8080/cgi-bin/koha/opac-shelves.pl?op=list&public=1 6, Note you can see public lists with a toolbar with the button "Sort" below the alert "Log in to create a new list" 7. Using the "Sort" option, try out all the different sort options for default, "List name", and "Modification date" 8. After sorting, try paging through the list of lists. You should note that the sorting is retained through the paging. 9. prove t/db_dependent/Virtualshelves.t 10. Celebrate! Signed-off-by: Owen Leonard Signed-off-by: Laura_Escamilla Signed-off-by: Lucas Gass commit 4bb7582066a3741bc1095d3e12af671e9997a0b3 Author: David Cook Date: Wed Oct 29 05:24:12 2025 +0000 Bug 41128: Only use data rating if it's available This patch prevents span elements being filled with "undefined" which are then shown to screen readers and print output. Test plan: 0. Apply the patch 1. Enable the following system preference: OpacStarRatings (results, details, and patron). 2. Check out an item to a user you can log in as (e.g. koha user) 3. Go to /cgi-bin/koha/opac-user.pl in the OPAC 4. Click "Print" on the toolbar above the summary table 5. Note that 5 occurrences of "undefined" do not appear next to the title in the print output Signed-off-by: Owen Leonard Signed-off-by: Paul Derscheid Signed-off-by: Lucas Gass commit fbbf00c9047347fa5816b2eee3fafe34aedf5f97 Author: Tomás Cohen Arazi Date: Thu Aug 22 15:16:47 2024 -0300 Bug 37711: DBIC schema Signed-off-by: Martin Renvoize Signed-off-by: David Cook Signed-off-by: Lucas Gass commit b60b1903580c619b999d60d6f0050d529d2c0a8f Author: Lucas Gass Date: Wed Nov 5 13:21:35 2025 +0000 Bug 37711: DBRev 25.06.00.032 Signed-off-by: Lucas Gass commit 35fd016f884cc8d8f7bfa7ddb25159b758f48dd5 Author: Tomás Cohen Arazi Date: Mon Oct 13 11:23:04 2025 -0300 Bug 37711: (follow-up) Fix AuthClient plugin database upgrade handling The AuthClient template plugin was causing 500 errors during database upgrades when the identity_providers schema was out of sync. The plugin tried to query the new 'auto_register_opac' column before the database schema was updated, creating a chicken-egg problem. This patch wraps the database query in Try::Tiny to handle schema mismatches gracefully during upgrades, allowing the upgrade process to continue without crashing the authentication interface. Test plan: 1. On main, apply all bug 37711 patches BUT THIS ONE 2. Simulate an upgrade by: * Edit Koha.pm so it points to the next version * Move the atomicupdate file to the right number in db_revs 3. Restart everything: $ ktd --shell k$ restart_all 4. Access http://kohadev-intra.localhost => FAIL: You get a 500! With a stack trace! 5. Apply this patch 6. Repeat 3 and 4 => SUCCESS: No 500 error, redirects to installer 7. Proceed with the upgrade: => SUCCESS: It works as it should 8. Run tests: k$ prove -v t/db_dependent/Template/Plugin/AuthClient.t => SUCCESS: All tests pass 9. Sign off :-D Signed-off-by: Tomás Cohen Arazi Signed-off-by: David Cook Signed-off-by: Lucas Gass commit 6290b9ac7bb7877f975d6aedb15771a66c5baa12 Author: Tomás Cohen Arazi Date: Thu Aug 22 15:50:16 2024 -0300 Bug 37711: Domains CRUD update This patch adapts the `Identity provider domains` CRUD page to handle the new configuration options. To test: 1. Have an IdP with some domains set. Make sure there's at least one domain with auto-register enabled and one with it disabled. 2. Apply this patches 3. Run: $ ktd --shell k$ updatedatabase => SUCCESS: Updates successfully 4. Run: k$ yarn build 5. Refresh the IdP domains page => SUCCESS: The domains table shows both OPAC and staff auto-register options. => SUCCESS: The staff auto-register is disabled for both domains => SUCCESS: The OPAC auto-register matches what was set for each domain regarding auto-register (remember that before this patchset, auto-register only works for the OPAC). 6. Play with editing/adding/removing domain configurations => SUCCESS: Things work as expected, values are persisted on the DB correctly. 7. Sign off :-D Signed-off-by: Martin Renvoize Signed-off-by: David Cook Signed-off-by: Lucas Gass commit 3eb91ce9524bdcc3354ad4e44b7e79d3c22fd093 Author: Tomás Cohen Arazi Date: Fri Aug 23 11:17:14 2024 -0300 Bug 37711: Add support for staff interface auto-register on IdP Before this patches, only OPAC auto-registration at login using OAuth2/OIDC IdPs was allowed. This patch makes the staff interface to be able to auto-register new users. On doing it, I had to track down the possible values for the `interface` parameter in the case of the staff interface. Koha::Template::Plugin::AuthClient uses 'staff' internally so I sticked with it. The whole area needs more param validation and exceptions to avoid mistakes for not knowing the valid values. I added some safeguards on the Koha::REST::Plugin::Auth::IdP helpers. They get tested on the added tests. To test: 1. Apply this patch 2. Run: $ prove t/db_dependent/Koha/REST/Plugin/Auth/IdP.t => SUCCESS: Tests pass! 3. Have a valid OAuth... 4. Enable Staff auto-register 5. Login with an external IdP on the staff interface => SUCCESS: It gets registered! Note: it will probably lack permissions to access the staff interface, but you can check on the DB it got registered. 6. Sign off :-D Sponsored-by: ByWater Solutions Signed-off-by: Martin Renvoize Signed-off-by: David Cook Signed-off-by: Lucas Gass commit f830d52ab0c1a4f3e049b78c2ea0870f78adee6f Author: Tomás Cohen Arazi Date: Thu Aug 22 15:26:13 2024 -0300 Bug 37711: API changes This patch makes the API representation of the identity providers domains match the new metadata. Signed-off-by: Martin Renvoize Signed-off-by: David Cook Signed-off-by: Lucas Gass commit 90a0c25bf948ffc529829108131c3fcd59e1faa0 Author: Tomás Cohen Arazi Date: Thu Aug 22 15:13:01 2024 -0300 Bug 37711: DB update Signed-off-by: Martin Renvoize Signed-off-by: David Cook Signed-off-by: Lucas Gass commit c879aa8e0a39ec555cc4aea01648dad7db731914 Author: Martin Renvoize Date: Tue Nov 4 16:49:23 2025 +0000 Bug 20253: (follow-up) Sync db_rev column order Signed-off-by: Martin Renvoize Signed-off-by: Lucas Gass