commit 51bdab13ee648fafc2412859debea4c44f68d760 Author: Laura Escamilla Date: Thu Mar 12 16:04:34 2026 +0000 Bug 42078: Allow vendor ID searches on serial subscription vendor search page The serials vendor search currently only searches vendors by name. This patch allows the search field to also match vendor IDs so staff can locate vendors using either name or ID. Test plan: 1. Go to Serials → New subscription. 2. Click to search for a vendor. 3. Search using part of a vendor name and confirm results appear. 4. Search using an exact vendor ID and confirm the correct vendor is returned. 5. Sign off and have a wonderful day! :D Signed-off-by: Angela Berrett Signed-off-by: Angela Signed-off-by: Jonathan Druart Signed-off-by: Pedro Amorim commit c420f231257d7555ff9198397a33dc8e7f399bca Author: Pedro Amorim Date: Thu Mar 5 15:26:40 2026 +0000 Bug 42002: Make 'replace' in screen_msg_regex not required Default to empty string if null to ensure that leaving it blank produces the required outcome: the replace value is an empty string Signed-off-by: Marion Durand Signed-off-by: Andrew Fuerste Henry Signed-off-by: Pedro Amorim commit d294b2ce2a15fde0369cc434420876a8998aba50 Author: Baptiste Wojtkowski Date: Thu Feb 19 15:52:52 2026 +0000 Bug 39727: Remove DelSuggestionsOlderThan from C4/Suggestions.pm To test: Test the cronjob purge_suggestions.pl Signed-off-by: David Nind Signed-off-by: Jonathan Druart Signed-off-by: Pedro Amorim commit b2505f31c3c3f1268f2193bf43f74b56a20c9eed Author: Baptiste Wojtkowski Date: Thu Feb 19 15:46:25 2026 +0000 Bug 39726: Remove op connectDuplicate from acqui/newordersuggestions.pl ConnectDuplicate does not appear to be used anywhere. No test plan to provide here. git grep connectDuplicate should return nothing Since there is no cud-, it would at least have been broken for a year Signed-off-by: David Nind Signed-off-by: Jonathan Druart Signed-off-by: Pedro Amorim commit de837ace63f4e9e2ff049b6de085ec93ebaa1ab1 Author: Pedro Amorim Date: Fri Jun 19 14:32:57 2026 +0000 Bug 41685: (RM follow-up): Remove dead comment code Signed-off-by: Pedro Amorim commit 5cba025ba17cf49468a2bc92ddb5e7810aca14d2 Author: Paul Derscheid Date: Fri Apr 24 08:01:03 2026 +0000 Bug 41685: (QA follow-up) Classify MARC21 $w by position 0 MARC21 4xx/5xx $w is a control subfield with up to four positions; only position 0 encodes the hierarchical relationship. The previous regex required the whole subfield to equal g or h, so values such as "g " or "gnna" would fall into the middle bucket and lose the broader/narrower distinction. This case is hypothetical and likely rare in practice (most catalogs store a single character in $w), but the correctness improvement still makes sense and aligns with how BuildSummary reads the same subfield elsewhere via substr($w, 0, 1). To test: - prove -v t/db_dependent/AuthoritiesMarc.t - Verify BuildSummary/_marc21_sort_hierarchy_alpha subtest passes, including the new multi-position $w case. Signed-off-by: Paul Derscheid Signed-off-by: Pedro Amorim commit 7ce0fef1bda28fff51e114e90471f01142d16eec Author: Paul Derscheid Date: Fri Apr 24 09:44:47 2026 +0200 Bug 41685: (QA follow-up) Add POD for _marc21_sort_hierarchy_alpha - koha-qa pod_coverage check flagged the new private helper - sub as uncovered. Document it briefly to satisfy the check. Signed-off-by: Paul Derscheid Signed-off-by: Pedro Amorim commit 21f957d8683fd64fb99e326aac5d7be59e049a62 Author: Marcel de Rooy Date: Thu Feb 12 12:03:56 2026 +0100 Bug 41685: (QA follow-up) Prevent uninit warn on missing subfield a Signed-off-by: Marcel de Rooy Signed-off-by: Paul Derscheid Signed-off-by: Pedro Amorim commit 8f6c66afbb276626de27d583885019246d54e7e4 Author: Marcel de Rooy Date: Fri Feb 6 09:34:44 2026 +0100 Bug 41685: (QA follow-up) Resolve qa warnings Resolve critic warn: "return" statement followed by "sort" at line 1238, column 5. Behavior is undefined if called in scalar context. (Severity: 5) Tidied with lastest perltidy version. Signed-off-by: Marcel de Rooy Signed-off-by: Paul Derscheid Signed-off-by: Pedro Amorim commit aab711b1b387833ad8a904296f5599d8aa682c67 Author: Marcel de Rooy Date: Mon Feb 2 14:12:10 2026 +0100 Bug 41685: Unit tests Test plan: Run t/db_dependent/AuthoritiesMarc.t Signed-off-by: Marcel de Rooy Signed-off-by: David Nind Signed-off-by: Paul Derscheid Signed-off-by: Pedro Amorim commit 27fb770e77efe536b91a8529a0b3eb53cdc4e902 Author: Marcel de Rooy Date: Thu Jan 22 14:06:12 2026 +0100 Bug 41685: Sort seefrom/seealso in BuildSummary Test plan (MARC21): [1] Create an authority record, say a term. Include two 450s, the first one starting with Z and second with A. Include five 550s, where two are narrower ($w==h), two broader ($w==g) and one without $w. Make sure that the terms will sort differently than the field order (go back in alphabet when filling subsequent $a's or so). [2] Perform an authority search that includes the new authority. [3] Verify that the terms in the Summary column for this authority are sorted first on hierarchy, second alphabetically. The one without hierarchy should be in the middle. Signed-off-by: Marcel de Rooy Signed-off-by: David Nind Signed-off-by: Paul Derscheid Signed-off-by: Pedro Amorim commit 7d60cc280a98df3a5e67ac31115f8eba0d8de1b9 Author: Lisette Scheer Date: Thu Jun 18 13:41:53 2026 +0000 Bug 42734: (QA follow-up) Remove integer class The integer class appears to only lmit the with of the text box to 5em, making it difficult to see the full preference. I removed the class for better readability. Signed-off-by: Martin Renvoize Signed-off-by: Pedro Amorim commit 914ff32fa2f69af9c6950d4596f4ae14e521fc4a Author: Martin Renvoize Date: Mon Jun 1 16:55:14 2026 +0100 Bug 42734: Add autoMemberNumValue to patrons sysprefs UI with caution note This patch adds autoMemberNumValue to the Patrons system preferences page immediately below autoMemberNum, so superlibrarians can view and correct a runaway counter without needing vendor support. The entry carries a caution note explaining: - the value is managed automatically and should not normally be changed - Koha generates the next cardnumber from max(counter, live_db_max), so lowering the counter only has effect once the patron responsible for the inflated number has been deleted or had their cardnumber corrected first - the risk of setting it too low: potential re-issuance of a previously used cardnumber, which may grant a new patron access to third-party services linked to the original holder Signed-off-by: David Nind Signed-off-by: Lisette Scheer Signed-off-by: Pedro Amorim commit dd89d8ab605e962ed3b6f73fc3f59d48b8c01385 Author: Jonathan Druart Date: Fri Jun 19 09:15:49 2026 +0200 Bug 42803: Only perform the lookups when !$filter is true Signed-off-by: Jonathan Druart Signed-off-by: Pedro Amorim commit d2a76b80b0b2961a4abb2908fed8b3d3195388c8 Author: David Cook Date: Fri Jun 19 05:54:37 2026 +0000 Bug 42803: Fix case where filter is not supplied This change fixes the case where "Any library" and "Any item type" weren't validating. Test plan: 0) Apply the patch 1) Set strict_sql_modes to 0 in koha-conf.xml and restart plack 2) Go to Reports > Items with no checkouts: /cgi-bin/koha/reports/catalogue_out.pl 3) Leave Library set to "Any library" 4) Pick a specific item type that you know has items (e.g. "BK") 5) Note that you get results Signed-off-by: David Nind Signed-off-by: Jonathan Druart Signed-off-by: Pedro Amorim commit 25496bdc4fb15429b8cb4ee0189be8a63a3852ce Author: Owen Leonard Date: Wed Mar 18 11:30:30 2026 -0400 Bug 42128: Remove event attribute from admin-icon-selection.inc This patch removes the "onmousedown" event attribute from admin-icon-selection.inc, an include used in itemtypes.tt and authorised_values.tt. I took this opportunity to create separate JS files for both of those templates and added the event handler to the JS. To test, apply the patch and go to Administration. - Go to Item types and add or edit an item type. - In the icon selection section, select one of the built-in icons. - Switch to the "Remove image" tab. - Click the text input. The corresponding radio button should be selected. - Go to Authorized values and perform the same test. Sponsored-by: Athens County Public Libraries Signed-off-by: David Nind Signed-off-by: Jonathan Druart Signed-off-by: Pedro Amorim commit b83e2a6fe4b10631f6ea4941c0e99475912ebbbf Author: Fridolin Somers Date: Mon Jun 15 10:25:48 2026 +0200 Bug 42846: Koha::Database::DataInconsistency fix typo for biblioitemnumber in MARC Check of biblioitemnumber in MARC uses $biblionumber instead of $biblioitemnumber It returns for example : Biblionumber 542620 has biblioitemnumber '542620' but should be '542620' in 090$a Test plan (for MARC21 only) : 1) Choose a biblio record id=X 2) Change with SQL : update biblio_metadata set metadata = UpdateXML( metadata , '//datafield[@tag="999"]/subfield[@code="d"]' , CONCAT('1111') ) where biblionumber = X 3) Run audit on this record 4) Check message is correct Signed-off-by: David Nind Signed-off-by: Jonathan Druart Signed-off-by: Pedro Amorim commit d59c3b143370adbfb0887a7d04e696496183265d Author: Pedro Amorim Date: Fri Jun 19 11:36:22 2026 +0000 Bug 42397: DBRev 26.06.00.003 Signed-off-by: Pedro Amorim commit 25bfb77b0b00f5de8dba2ee001a1ae57f47183e0 Author: Pedro Amorim Date: Thu Apr 16 11:01:32 2026 +0000 Bug 42397: Atomicupdate 1) Enable ILLModule and IllLog system preferences. 2) Install a metadata enrichment plugin that supports ILL batches (restart plack if needed), e.g.: https://github.com/openfifth/koha-plugin-api-pubmed/releases 3) Visit ILL module: /cgi-bin/koha/ill/ill-requests.pl 4) Click the 'New ILL requests batch' button 5) Enter any name, cardnumber '42' and any library. Click 'Continue' 6) Add a pubmedid (e.g. '123') and click process identifiers. 7) Click 'Add items to batch' and 'Finish and view batch'. 8) Visit the ILL request we just created: /cgi-bin/koha/ill/ill-requests.pl?op=illview&illrequest_id=1 9) Confirm it explodes with a nasty 500 error 10) Apply patches, updatedatabase and restart plack. 11) Repeat 8). Confirm it no longer explodes 12) Click' ILL request log'. Confirm it shows the correct log(s) relative to this ILL request 13) Visit the log viewer and query for 'Interlibrary loans': http://localhost:8081/cgi-bin/koha/tools/viewlog.pl?src=&user=&modules=ILL&actions=&object=&info=&interfaces=&from=&to=&output=screen&basename=Export&report_name=&do_it=1 14) Confirm only ILL requests are shown, do the same for ILL batches: http://localhost:8081/cgi-bin/koha/tools/viewlog.pl?do_it=1&src=&user=&modules=ILL_BATCHES&actions=&object=&info=&interfaces=&from=&to=&output=screen&basename=Export&report_name=&do_it=1 15) Confirm only ILL batches are shown 16) Run all ILL batch relevant tests: prove t/db_dependent/Koha/ILL/Batch* Signed-off-by: David Nind Signed-off-by: Lisette Scheer Signed-off-by: Pedro Amorim commit 268b5cbd0eb81cbdfe0bce37025436c30fc242c3 Author: Pedro Amorim Date: Thu Apr 16 11:01:06 2026 +0000 Bug 42397: Add and update ILL batch related tests Add new tests to assert the usage of the new ILL_BATCHES action_logs modulename. Update existing tests to utilize real log_something instead of mocking it. Signed-off-by: David Nind Signed-off-by: Lisette Scheer Signed-off-by: Pedro Amorim commit 0c353be1c1da11f1bbfafd78de895c66ae3a9ddf Author: Pedro Amorim Date: Thu Apr 16 10:58:40 2026 +0000 Bug 42397: Add 'ILL_BATCHES' action_logs modulename Update ILL/Batch.pm and ILL/Batch/Status.pm to utilize this new modulename instead Signed-off-by: David Nind Signed-off-by: Lisette Scheer Signed-off-by: Pedro Amorim commit 10e86285a91d699cb44fa9058e03825dc2b79b30 Author: Jonathan Druart Date: Tue May 12 12:18:00 2026 +0200 Bug 42535: Remove .news_delete JS from the main page The .news_delete elements have been removed on commit c7b576ad7e9e53a572017a2b3e8771bd128f983d Bug 34478: Remove 'Delete' link for news on the homepage - | Delete We can remove this code Test plan: Confirm that there is no "Delete" links to delete news on the main page Signed-off-by: Owen Leonard Signed-off-by: Laura_Escamilla Signed-off-by: Pedro Amorim commit f10b232d9ed277a83c4f5025ca04e0eb87200628 Author: Laura Escamilla Date: Tue May 5 16:49:18 2026 +0000 Bug 42531: Allow repeatable field values to wrap Test plan 1. Go to Administration → MARC bibliographic frameworks. 2. Edit Books, Booklets, Workbooks (BKS) framework. 3. In tag 508, ensure subfield $a is visible in the editor. 4. Open a bibliographic record (e.g. /cgi-bin/koha/catalogue/detail.pl?biblionumber=90). 5. Edit the record and add a long block of text to 508$a (e.g. extended production credits with many names and separators). 6. Save the record and view it in the staff interface. * Before patch: The Production Credits field does not wrap and overflows off the page. 7. Apply the patch and run yarn build. 8. Refresh the record detail page. * After patch: The Production Credits field wraps correctly within the page. 9. Confirm that shorter repeatable fields still display inline with separators (|) as expected. 10. Sign off and have a great day! Signed-off-by: Lawrence O'Regan-Lloyd Signed-off-by: Lucas Gass Signed-off-by: Pedro Amorim commit 82d189a7567bfa027876ea057d2ee2b79aec4a86 Author: Lucas Gass Date: Tue Jun 9 22:14:11 2026 +0000 Bug 42795: Do not try to update ES mappings if not using ES patch for main Signed-off-by: Pedro Amorim commit 2d72d4e17aa51af7f632353f11ad7d6a77e9c531 Author: Jonathan Druart Date: Thu May 7 13:57:27 2026 +0200 Bug 42550: Remove JS error from report list if none exist If there are no saved SQL reports, the "rtable" variable is empty and triggers an error when called later. Uncaught TypeError: can't access property "DataTable", rtable is undefined Test plan: /cgi-bin/koha/reports/guided_reports.pl?op=list Without reports => Without this patch there is a JS error in the console => With the patch the error is gone Signed-off-by: Owen Leonard Signed-off-by: David Nind Signed-off-by: Lucas Gass Signed-off-by: Pedro Amorim commit b503cfe22edb106d7451c6e72c7b32b660085db6 Author: Owen Leonard Date: Thu Jun 4 07:17:33 2026 -0400 Bug 42564: (follow-up) Actually remove calls to old assets Also incorporate the Font Awesome assets into the installer SCSS. Signed-off-by: Lucas Gass Signed-off-by: Pedro Amorim commit 8ffe7d9edb5c7a8af217fff87ed3c040e4e4f832 Author: Owen Leonard Date: Fri May 8 09:19:58 2026 -0400 Bug 42564: Upgrade Font Awesome in the staff interface to 7.2 We are using Font Awesome 6.3 in the staff interface. The current version is 7.2. Upgrading will eliminate the repeated warnings in the browser console about "Glyph bbox was incorrect." The patch updates the staff interface CSS so that it pulls Font Awesome CSS from node_modules. Font assets have been updated in lib/fontawesome. The many changed .inc and .tt files are a result of a missed aspect of our upgrade to Bootstrap 5. The "sr-only" class was removed in BS5 but the Font Awesome CSS included its own "sr-only" class. This made up for the fact that we missed the required upgrade to BS5's "visually-hidden." As soon as Font Awesome's "sr-only" was gone all these mistakes were made visible. To test, apply the patch and run 'yarn install.' - Rebuild the staff interface SCSS. - Clear your browser cache. - Test many pages in the staff interface to confirm that no icons are missing. - Check changes to the templates to confirm that "sr-only" has been replaced with "visually-hidden." - Places where a broken "sr-only" class would be obvious: The h1 heading "Koha home" on the staff interface main page, the tag on the new currency form in Administration -> Currencies and exchange rates. Sponsored-by: Athens County Public Libraries Signed-off-by: Laura_Escamilla Signed-off-by: David Nind Signed-off-by: Lucas Gass Signed-off-by: Pedro Amorim commit 297edd689b3b42bbc824127b611d10a7f2733722 Author: Owen Leonard Date: Tue May 19 07:24:48 2026 -0400 Bug 42641: JavaScript errors on patron attribute types admin page This patch fixes some JavaScript errors on the patron attributes page. Vanilla JS doesn't automatically handle null variables like jQuery does. To test, apply the patch and go to Administration -> Patron attribute types. - If necessary, add multiple attribute types. - The table listing all attributes should be displayed as DataTable and there should be no errors in the console. Signed-off-by: David Nind Signed-off-by: Lucas Gass Signed-off-by: Pedro Amorim commit 404cb0ee0aa81be4846d978b1dce542cc50f5b2a Author: Kyle M Hall Date: Thu May 30 06:55:32 2024 -0400 Bug 36988: Update unit tests These highlight why we may have made this choice. With only 'edit_borrowers' you can make changes, but you cannot view your changes as you aren't allowed to see other borrowers. Test now pass, but not sure if this answers the question of why we did it this way, or if there is more work here. Should you be able to get back the fields that you updated at the least, to confirm your changes? Or should we send a success with a message that you can't see the data? Signed-off-by: David Nind Signed-off-by: Lucas Gass Signed-off-by: Pedro Amorim commit 3e62b2c44b37d054ab6676c134862bedd55070c6 Author: Kyle M Hall Date: Thu May 30 06:55:19 2024 -0400 Bug 36988: Change permission Signed-off-by: David Nind Signed-off-by: Lucas Gass Signed-off-by: Pedro Amorim commit 55d236769d82e4705153e4be1b7bfb86c12c77be Author: David Cook Date: Mon Mar 30 01:31:33 2026 +0000 Bug 42202: Unfilter branches for OPAC search, news, and most popular This change unfilters the branches for OPAC search, news, and most popular. This is most noticeable when using the IndependentBranches system preference. This change aligns the UX for both logged in and not logged in users __SETUP__ - Do not apply the patch yet - Log into Koha - Go to Administration > System preferences - Search for OpacAddMastheadLibraryPulldown system preference - Change it to "Add" and save the preference - Search for IndependentBranches system preference - Set it to "Yes" and save the preference - Search for OpacTopissue system preference - Set it to "Allow" and save the preference - Search for OpacNewsLibrarySelect system preference - Set it to "Show" and save the preference - Go to Patrons - Create or modify a patron with a username/password but no superlibrarian permission __TESTS__ - Go to the OPAC (and logout if you're already logged in) - Note that the library pull down saying "All libraries" is present in the masthead - Log in as your unprivileged user - Note that the library pull down saying "All libraries" is now hidden - Go to Advanced search and note there's no "Location and availability" option - Go to "Most popular" and note there's no "From:" library filter - Go to the home page and note it does not show a library selector for news - Apply the patch - Refresh the page - Note that the library pull down saying "All libraries" is present in the masthead - Note that the "From:" library filter now appears - Go to Advanced search and note "Location and availability" now appears - Go to the home page and note it now shows a library selector for news Signed-off-by: David Nind Signed-off-by: Lucas Gass Signed-off-by: Pedro Amorim commit bb83b600ecaacbfdfdda2f7f06ea12bf8a71ef72 Author: Olivia Reynolds Date: Fri Jun 12 14:45:57 2026 +0000 Bug 12757: Set float type on OpenDocument cells Test plan: 1. Navigate to Reports > Create from SQL. 2. Create a new report with a name and the following SQL query: SELECT 'test', 1, '2' 3. Run the report. 4. Under the Download dropdown, select "Open Document Spreadsheet". 5. Verify a ".ods" file is downloaded. 6. Open the downloaded spreadsheet. 7. Verify the two number-like columns are handled as such. This depends on your choice of spreadsheet software: - In Excel, the numbers should not have a leading single quote in the edit-bar when selected. - In Google Sheets, the numbers should be right-aligned, and selecting both of them should display their sum in the bottom toolbar. 8. Run `prove t/Koha/Util/OpenDocument.t` and verify all tests were successful. Sponsored-by: Open Fifth Signed-off-by: David Nind Signed-off-by: Lucas Gass Signed-off-by: Pedro Amorim commit 4f71f15f0c7670fc9823ba82d64bfbd5df5aab6b Author: Lucas Gass Date: Mon Jun 15 16:45:44 2026 +0000 Bug 41070: (QA follow-up) Tidy Signed-off-by: Lucas Gass Signed-off-by: Pedro Amorim commit 902ca28a3cd494ac53ab43a9af6542554261bf4b Author: Baptiste Wojtkowski Date: Wed Feb 11 10:56:48 2026 +0100 Bug 41070: Fix selector in addorderiso validator Steps to reproduce, do not apply patch 1 - Go to any record and click save -> marc (Unicode/utf8) 2 - Go to any vendor and add a basket 3 - In your acquisition grid, make sure "barcode" is mandatory 4 - In this basket, create a new order from file, use the generated file and wait for the end of the import. Click on add staged files to basket. 5 - Select the record, make sure no Fund or barcode is filled, neither in first or third tab. 6 - Validate: There will be an error due to the missing barcode. If there is another error, fill the missing part of the form. 7 - Apply patch, repeat 6, the error will be due to the missing fund 8 - Select a fund in the first panel -> the error will be due to the missing barcode 9 - Select a fund in the third panel -> the error will be due to the missing barcode Note: the point about the barcode are not relevant for the bug, they are just here to prevent the submission of the form. And avoid repeating steps 4-5. Signed-off-by: David Nind Signed-off-by: Lucas Gass Signed-off-by: Pedro Amorim commit cb993ee5ef44535b2ced9fbb8a12e33c676420b3 Author: Martin Renvoize Date: Tue Jun 24 13:01:41 2025 +0100 Bug 40225: Send stockrotation report even when all items are stationary The stockrotation cronjob was only sending email reports when there were actionable items (items that needed to be moved between branches). This meant that libraries would not receive any notification when all items in their rotation were stationary, even when the --send-all flag was passed to the script. This patch modifies the report logic to also send reports when there are only stationary items, ensuring libraries have visibility into the complete status of their stock rotation items. Test plan: 1. Set up a stock rotation rota with items that are all stationary (items that should stay at their current branch) 2. Run the stockrotation cronjob: perl misc/cronjobs/stockrotation.pl 3. Without this patch: No email report is generated 4. Apply this patch 5. Run the cronjob again 6. Verify that an email report is now generated showing the stationary items 7. Test with mixed scenarios (some actionable, some stationary items) 8. Confirm reports are sent in all cases where items exist in the rotation Signed-off-by: Laura_Escamilla Signed-off-by: Lucas Gass Signed-off-by: Pedro Amorim commit 369236bb31ce9f8cb0762b629c0f0e2df70dfd54 Author: Owen Leonard Date: Mon Feb 9 06:43:10 2026 -0500 Bug 41803: Improvements to consistency in basket groups template This patch makes some updates to the basket groups template: - Buttons in a table's "actions" column should have the class "btn btn-default btn-xs" - Adding icons to action buttons - Group export options (CSV and PDF) under button dropdown - Use class instead of ID as hook for closing and deleting basket groups. This prevents duplicate element IDs on the page. - When there is no EDIFACT configuration, disable the "Generate EDIFACT order" button and put the error message in a tooltip. - Style warning message as Bootstrap alert To test, apply the patch and go to Acquisitions and locate a vendor. - View the vendor details. - Click "Basket groups" in the sidebar. - Create multiple basket groups if necessary. - Test various operations in the list of open groups: - Close and export PDF - Edit - Delete - Test the actions for a closed basket group: - Reopen - Export -> CSV and Export -> PDF - Enable the EDIFACT system preference but do not add any EDI accounts. - Under the "Closed" basket group tab the "Generate EDIFACT order" buttons should be disabled, and hovering over each one should trigger a popup warning that there is no EDIFACT configuration for the vendor. Sponsored-by: Athens County Public Libraries Signed-off-by: David Nind Signed-off-by: Lucas Gass Signed-off-by: Pedro Amorim commit 38474d7611cf8c7039efb180f5c709e6db5781c6 Author: Jonathan Druart Date: Mon Jun 15 13:46:34 2026 +0200 Bug 42781: Do not modify window.name https://developer.mozilla.org/en-US/docs/Web/API/Window/name Test plan: 0. Do not apply this patch (you can apply the first one) 1. Go to /cgi-bin/koha/members/members-home.pl 2. Open the console 3. type "window.name", it's "" 4. Run a patron search, "d" 5. window.name is now "Duffy, Joann name" 6. Apply this patch, try again 7. window.name is still an empty string Signed-off-by: Jan Kissig Signed-off-by: Pedro Amorim commit 98459bab8c57c6d21f7a573abdda7fdee6465850 Author: Magnus Enger Date: Mon Jun 8 10:28:49 2026 +0200 Bug 42781: Declare 'name' before using it in patron-format.js The code in koha-tmpl/intranet-tmpl/prog/js/patron-format.js uses a variable called 'name' without declaring it first. The declaration was removed in bug 32176. No deterioration of functionality has been discovered in connection with this, but the declaration should be restored. To test: - Apply the patch. - HidePatronName = Show - Look at the staff detail view for a record that has at least one item on loan. - Verify the name of the patron is displayed as expected. Signed-off-by: Jonathan Druart Signed-off-by: Jan Kissig Signed-off-by: Pedro Amorim commit 4979f23cb1c26d7345c11e6b1b1ea9f5866b5c21 Author: Jan Kissig Date: Mon Jun 15 06:24:57 2026 +0000 Bug 42844: Fix broken subscription search when using additional fields as seach criteria This fixes an error when searching for a subscription with an additional field when no result is found by changing the call of SearchSubscriptions to expect an array instead of an hash ref. Serials.pm, when using filter_by_additional_fields may return an empty array, but the calling function only checked for an hash ref which lead to an error when no result was found. Testplan: a) create an additional field for subscriptions: More -> Serials -> Manage subscription fields f.e. use an AV CCODE as additional field make sure "searchable" is checked No subscription should use this additional field by now. b) go to More -> Serials c1) if bug 40201 is pushed you can search for that additional field on serials-home -> An error stack trace will appear. c2) otherwise perform an empty search on serials home to end on serials-search. In the search form on the left select that additional field as search criteria. -> An error stack trace will appear. d) add a subscription using that additional field -> More -> Serials -> New subscription. On step two there is a section for Additional fields. Select f.e. CCODE Fiction e) redo c1 or c2 using that additonal field value as search criteria. f) Check that the search result shows your subscription. g) apply patch and redo c1 or c2 for an additional field value that is not used (f.e. Non-fiction) h) The search should work now, returning 0 results instead of an error i) check that searching for a used additional field (f.e. Fiction) still works Signed-off-by: Michaela Sieber Signed-off-by: Jonathan Druart Signed-off-by: Pedro Amorim commit 2bb3865e7e00eefea0d9c1710789680ed709db44 Author: Pedro Amorim Date: Mon Jun 15 15:20:31 2026 +0000 Bug 28915: DBIC Schema Build Signed-off-by: Pedro Amorim commit 566ea8876b75df2e6301a6c9c332e3210638f816 Author: Pedro Amorim Date: Mon Jun 15 15:16:07 2026 +0000 Bug 28915: DBRev 26.06.00.002 Signed-off-by: Pedro Amorim commit f099cb0d622bbe86a27670ad4eef2076e884513b Author: Pedro Amorim Date: Mon Jun 15 15:10:09 2026 +0000 Bug 28915: (RM follow-up): Remove dead code + typo fix Signed-off-by: Pedro Amorim commit e0fb33c3a7d73d276943a1e83d5a980c4d37dee8 Author: Lari Taskula Date: Wed Apr 29 14:53:40 2026 +0300 Bug 28915: Adjust input maxlength when subfield is used as charpos To test MARC modification with the new feature: 1. Add a new record and make sure it has the following fields 1.1 Field 008 character position 35-37 contains "|||" 1.2 Field 041$a contains "eng" 2. Navigate to Cataloging > MARC modification templates > + New template (name "Change 008 lang") 3. Click + New action 4. Add "008" after "field(s)" 5. From dropdown "Delete", select "Update existing or add new" 6. To the input field on the right of "starting from character position", enter value 35 7. To the input field on the right of "with value", enter eng 8. From the empty dropdown below, select "if" 9. To the input field on the right of "field", enter 041, and to the right, enter a 10. From the dropdown on the right, select "matches" 11. Check "RegEx" 12. To the empty input field on the right, enter ^eng$ (the line should now say: [if] field [041] [a] [matches] m/[^eng$]/ RegEx [X]) 13. Give any description you want (ex. Change 008 35-37 to eng) 14. Navigate to the record details you added in step 1 15. Click Edit > Modify record using template 16. Click "Show MARC" 17. Double check field 008 character position 35-37 is currently ||| 18. Click "Close" 19. From dropdown "Select a template", select your new modification template from step 2 20. Click "Show MARC" 21. Observe field 008 character position 35-37 is now eng 22. Click "Modify selected records" 23. After job is completed, observe field 008 character positions 35-37 is now eng Also test MARC modification templates for non-control fields in case of regression. Signed-off-by: Andrew Fuerste Henry Signed-off-by: Pedro Amorim commit 3a672758c88ec64ca9ce78efe2ad394dec798289 Author: Lari Taskula Date: Wed Apr 29 14:49:45 2026 +0300 Bug 28915: Fix field_exists call in C4::MarcModificationTemplates Control fields (generally, just tags below 010) do not have subfields, use data() at /home/koha/Koha/Koha/SimpleMARC.pm line 460. To test: 1. prove t/db_dependent/MarcModificationTemplates.t 2. Observe success Signed-off-by: Anneli Österman Signed-off-by: Andrew Fuerste Henry Signed-off-by: Pedro Amorim commit fed20335a49cdd1138562c371d16c0130fbcabbe Author: Lari Taskula Date: Wed Apr 29 13:54:36 2026 +0300 Bug 28915: Add test for AddModificationTemplateAction To test: 1. prove t/db_dependent/MarcModificationTemplates.t Observe test failing with the following error t/db_dependent/MarcModificationTemplates.t .. 1/135 Control fields (generally, just tags below 010) do not have subfields, use data() at /home/koha/Koha/Koha/SimpleMARC.pm line 490. Signed-off-by: Anneli Österman Signed-off-by: Andrew Fuerste Henry Signed-off-by: Pedro Amorim commit bc54c59423f449b62bd37cb2e1503a9820a75c5d Author: Lucas Gass Date: Mon May 4 16:40:09 2026 +0000 Bug 28915: (follow-up) Update kohatructure.sql Signed-off-by: Andrew Fuerste Henry Signed-off-by: Anneli Österman Signed-off-by: Andrew Fuerste Henry Signed-off-by: Pedro Amorim commit c19f99daa1954e7bf0c30e6526a88c7a1a3343e4 Author: Andrew Fuerste-Henry Date: Mon May 4 15:51:35 2026 +0000 Bug 28915: (follow-up) Increase field size and maxlength in template Signed-off-by: Andrew Fuerste Henry Signed-off-by: Anneli Österman Signed-off-by: Andrew Fuerste Henry Signed-off-by: Pedro Amorim commit 694227943527015fa3ff27f69147894d42a77619 Author: Andrew Fuerste-Henry Date: Mon May 4 15:44:32 2026 +0000 Bug 28915: (follow-up) atomicupdate to increase from_subfield size Signed-off-by: Andrew Fuerste Henry Signed-off-by: Anneli Österman Signed-off-by: Andrew Fuerste Henry Signed-off-by: Pedro Amorim commit 433fa34c117c8036825b3835bd9e1065ae2dcc29 Author: Andrew Fuerste-Henry Date: Mon May 4 15:31:54 2026 +0000 Bug 28915: (follow-up) Add POD Signed-off-by: Andrew Fuerste Henry Signed-off-by: Anneli Österman Signed-off-by: Andrew Fuerste Henry Signed-off-by: Pedro Amorim commit 6db0d42427f396b4da15bfa384f02822e7478cb3 Author: Lari Taskula Date: Thu Apr 23 20:34:24 2026 +0300 Bug 28915: Add character position to MARC modification templates view To test new form events: 1. Navigate to Cataloging > MARC modification templates > + New template (and provide any name) 2. Click + New action 3. Add "008" after "field(s)" and click tabulator or your mouse anywhere on the screen 4. Observe the second (sub)field input field disappearing 5. From dropdown "Delete", select "Update existing or add new" 6. Observe new text "starting from character position" 7. Select any other action from the dropdown from step 5 8. Observe the text "starting from character position" disappearing (unless action is to update or add new field) 9. Observe subfield input field missing (unless action is to update or add new field) To test MARC modification with the new feature: 1. Add a new record 2. Modify record's 008 field character position 2-3 to "06" (indicating month June) 3. Navigate to Cataloging > MARC modification templates > + New template (name "Change June to September") 4. Click + New action 5. Add "008" after "field(s)" 6. From dropdown "Delete", select "Update existing or add new" 7. To the input field on the right of "starting from character position", enter value 2 8. To the input field on the right of "with value", enter 09 9. From the empty dropdown below, select "if" 10. To the input field on the right of "field", enter 008 11. From the dropdown on the right, select "matches" 12. Check "RegEx" 13. To the empty input field on the right, enter ^[0-9][0-9]06 14. Give any description you want (ex. Change 008 June to September) 15. Navigate to the record details you added in step 1 16. Click Edit > Modify record using template 17. Click "Show MARC" 18. Double check field 008 character position 2-3 is currently 06 19. Click "Close" 20. From dropdown "Select a template", select your new modification template from step 3 21. Click "Show MARC" 22. Observe field 008 character position 2-3 is now 09 23. Click "Modify selected records" 24. After job is completed, observe field 008 character positions 2-3 are now 09 Signed-off-by: David Nind Signed-off-by: Andrew Fuerste Henry Signed-off-by: Anneli Österman Signed-off-by: Andrew Fuerste Henry Signed-off-by: Pedro Amorim