commit cc0aa072dd5c1c0cb664ce6ffde43abe09d94fac Author: Tomás Cohen Arazi Date: Fri Dec 20 10:07:38 2024 -0300 Bug 38762: Make compare_es_to_db.pl provide links to staff interface This patch makes the script provide links to the staff interface instead of the OPAC. This way, the links can just be picked to access the problematic records for fixing them. To test: 1. Run: $ ktd --shell k$ perl misc/maintenance/compare_es_to_db.pl => FAIL: Generated links point to the OPAC 2. Apply this patch 3. Repeat 1 => SUCCESS: Generated links are useful as they point to the staff interface 4. Sign off :-D Signed-off-by: Tomas Cohen Arazi Signed-off-by: Roman Dolny Signed-off-by: Jonathan Druart Signed-off-by: Katrin Fischer commit 1dd5bc8c0ceb8e3715713745e9560017d74f0cb7 Author: Jonathan Druart Date: Thu Jan 23 09:35:27 2025 +0100 Bug 38952: Remove JS function messenger from acq.js Test plan: % git grep -l messenger koha-tmpl/intranet-tmpl/lib/fontawesome/css/brands.min.css koha-tmpl/intranet-tmpl/lib/fontawesome/webfonts/fa-brands-400.ttf koha-tmpl/opac-tmpl/lib/fontawesome/css/brands.min.css koha-tmpl/opac-tmpl/lib/fontawesome/webfonts/fa-brands-400.ttf The function is unused and can be removed. Signed-off-by: Owen Leonard Signed-off-by: Brendan Lawlor Signed-off-by: Katrin Fischer commit 74050efda3feb97a60a0f08d7ae0a6190ec2b7a0 Author: Jonathan Druart Date: Thu Jan 9 22:38:50 2025 +0100 Bug 38871: Remove sub string_list from misc/translator/xgettext.pl It is never used % git grep string_list should not return anything Signed-off-by: Thibault Keromnes Signed-off-by: Tomas Cohen Arazi Signed-off-by: Katrin Fischer commit 7f489024033e5007f72f259df4df93ec454363f3 Author: Jake Deery Date: Thu Oct 31 14:24:06 2024 +0000 Bug 38313: Remove confusing string from RESTOAuth2ClientCredentials This patch removes a once necessary and now confusing warning from the RESTOAuth2ClientCredentials syspref. TO TEST: a) Notice how the RESTOAuth2ClientCredentials syspref references installing Net::OAuth2::AuthorizationServer, even though this module is in the cpanfile and koha-perldeps and has been since 22.11 b) APPLY PATCH c) Run reset_all in k.t.d d) Notice how the message is now gone Signed-off-by: William Lavoie Signed-off-by: Tomas Cohen Arazi Signed-off-by: Katrin Fischer commit 2a5880d86b2866026e460964e5351c3d94c4ec7d Author: Emily Lamancusa Date: Fri Sep 27 19:20:58 2024 +0000 Bug 36112: Port default CHECKOUT_NOTE notice to TT Port the default notice text to Template Toolkit. Also, add access to item information in order to give more useful information about the checked-out item that the note refers to (in this case, the item barcode instead of the biblionumber) To test: 1. Apply patch and reset all 2. Enable the system preference AllowCheckoutNotes 3. Go to Administration > Libraries and edit the current logged-in library to ensure that there is a value in the Email field 4. Check out an item to a patron 5. Ensure the patron has values in the first name and surname fields 6. Log into the OPAC as that patron 7. Click to display the patron's current checkouts 8. Click the + button to the right of a checkout 9. Click the "Add Note" button beneath the table 10. Add some text and submit the note 11. Return to the staff interface and go to the Notices tab for the patron --> Confirm that there is a notice called "Checkout note" with all the correct information Signed-off-by: Lucas Gass Signed-off-by: Kyle M Hall Signed-off-by: Katrin Fischer commit bd14a9d86916625e6a651db02275e5d80dd8b9c6 Author: Aleisha Amohia Date: Tue Jul 16 01:30:14 2024 +0000 Bug 36660: (follow-up) Use mainentry search for more accurate linked results Useful in particular when headings are split across the $a and the $x Signed-off-by: Laurence Rault Signed-off-by: Kyle M Hall Signed-off-by: Katrin Fischer commit ab055249e9470a81f6942e3a7f6fe057c2d46152 Author: Aleisha Amohia Date: Mon May 13 01:00:41 2024 +0000 Bug 36660: Make Authorities 'see from' searches 'exact' This enhancement changes the search URL for 'see from' headings to look for an 'exact' match. When using a 'see from' heading, when Koha does a 'contains' search this is quite general and may fetch a bunch of unexpected results. This enhancement also changes the OPAC authority search to search on all headings when doing a 'see from' search, so the results mirror that on the staff interface. Also important if subheading info is stored in the $x or other subfields, for example. To test (assume using KTD): 1) In the staff interface, add a new topical term authority. Set the following values: 150$a: Quests 550$a: Travel 2) Add a second topical term authority, this is one we DON'T want showing in 'see from' results. Set the following values: 150$a: Cheques 550$a: Travellers' cheques 3) Do a 'main heading ($a only)' search for 'Quests'. Your new heading should show in the results, with 'Travel' showing as a see from searchable link. 4) Click the 'Travel' search link. Notice you get a few results, including the 'Cheques' heading which we don't want to show. 5) Follow steps 3 & 4 on the OPAC. Notice you get a few results, but your 'Quests' heading doesn't even show, which you may expect it to. 6) Apply the patch and restart services. 7) In the staff interface, go back to the Authorities homepage. 8) Repeat steps 3 & 4. Confirm you get the expected 'Quests' heading in the results, and do not get the 'Cheques' heading. 9) Repeat steps 3 & 4 on the OPAC. Confirm you get the expected 'Quests' heading in the results, and do not get the 'Cheques' heading. Sponsored-by: Education Services Australia SCIS Signed-off-by: Lucas Gass Signed-off-by: Laurence Rault Signed-off-by: Kyle M Hall Signed-off-by: Katrin Fischer commit 0f1ee978373cfa746f9f5b2fbf7db6f83d35c5a4 Author: Owen Leonard Date: Tue Oct 22 13:47:20 2024 +0000 Bug 38227: Collapse authority popup search form when showing results This patch takes the collapsing-panel functionality of the patron entry form and generalizes it so that it can be used on the authority search popup window in cataloging. To test, apply the patch and rebuild the staff interface CSS. - Go to Cataloging -> New record (basic MARC editor) - Switch to tab 1 and click the tag editor link next to tag 100 subfield a. - The search form should be expanded in the pop-up window. - Perform a search. When the window reloads with search results the search form should be collapsed. - Confirm that clicking the "Search options" legend works correctly to expand and collapse the form. - Collapse the form and click the "Clear form" button. The form should expand -- This is based on the assumption that the "Clear form" button would be used when the user wants to initiate a new search. - Go to Patrons -> New patron and confirm that collapsible sections still work correctly. Sponsored-by: Athens County Public Libraries Signed-off-by: Phil Ringnalda Signed-off-by: Jonathan Druart Signed-off-by: Katrin Fischer commit a4531fd78f30b215c4221d1ec583276e90e0d1e6 Author: Owen Leonard Date: Tue Nov 26 18:16:19 2024 +0000 Bug 7508: (follow-up) Show item number if item has no barcode This follow-up adds item number as a fallback for display when an item doesn't have a barcode. The patch also implements a sidebar sub-menu showing barcodes (or item numbers) so that the user can jump directly to a particular section. The sub-menu will show a scrollbar if the record has more than around 15 items. The patch modifies staff-global.scss to improve readability of the sidebar sub-menu and removes CSS which was specific to the system preferences page. This make the sub-menus on the item details and system preferences pages consistent with each other. Signed-off-by: David Nind Signed-off-by: Jonathan Druart Signed-off-by: Katrin Fischer commit c099055bada6583c2c796c13b2b3b47f0812353f Author: Owen Leonard Date: Tue Jun 18 18:47:08 2024 +0000 Bug 7508: Collapsable items on items tab Since we recently updated the patron entry form in the staff interface to have more visibly-collapsible sections I thought there might be interest in picking up this old bug. The patch implements collapsible sections on the item detail page, allowing the user to hide sections by clicking the item barcode header. The patch includes relocation of some JS code from the authority and MARC editors into the global JS file. This is the code that helps jump the user to a certain scroll point on the page. To test, apply the patch and clear your browser cache. - In the staff interface, locate a bibliographic record with items and view the detail page. - Click the "Items" tab in the sidebar. - On the item detail page, each section should have an icon indicating that they are expanded. Hovering your mouse over the section heading should highlight the clickable area. - Test that each section collapses correctly and that the next section is moved into view. - Go to Cataloging -> New record. Test that the links to specific tags under the main tab bar still work to jump you to the correct part of the page. - Go to Authorities -> New authority and perform the same test. Sponsored-by: Athens County Public Libraries Signed-off-by: Brendan Lawlor Signed-off-by: David Nind Signed-off-by: Jonathan Druart Signed-off-by: Katrin Fischer commit 03ae61e9f8126e3a030cfc20ea24ea2394f730ae Author: Tomás Cohen Arazi Date: Thu Feb 13 13:02:00 2025 +0000 Bug 35246: Make Koha::Biblio->to_api throw relevant exception if no biblioitem row This patch makes the `to_api()` method return an proper exception when the `$self->biblioitem` accessor returns `undef`. This is a bad data scenario and we could do better in terms of logging the situation. The new exception will be correctly rendered in the logs by the `unhandled_exception` Mojolicious helper and no behavior change on the API. I wasn't sure to keep the api tests I wrote. I originally added handling for the specific exception in the controller, but it become obvious it was not worth: too much code, the `GET /biblios` endpoint would need the same treatment, etc. And the current `500 Internal server error` is good enough as a response, and the logs explain the situation correctly. To test: 1. On a fresh `KTD` pick a biblio (say biblionumber=1) 2. Use your favourite REST tool (Postman?) to access the record with `Accept: application/json`. i.e. ``` GET kohadev.localhost/api/v1/biblios/1 Accept: application/json ``` => SUCCESS: All good 3. Delete the related `biblioitems` row: $ ktd --shell k$ koha-mysql kohadev > DELETE FROM biblioitems WHERE biblionumber=1; \q 4. Repeat 2 => SUCCESS: You get a 500 error 5. Check the logs => FAIL: You get a cryptic message about accessing a method on an undefined object: ``` 2025/02/13 13:15:00] [ERROR] GET /api/v1/biblios: unhandled exception (Mojo::Exception)<> ``` 6. Apply this patch 7. Restart things: k$ restart_all 8. Repeat 2 => SUCCESS: You get a 500 error 9. Check the logs => SUCCESS: You get a more meaningful exception: ``` [2025/02/13 13:20:00] [ERROR] GET /api/v1/biblios/1: unhandled exception (Koha::Exceptions::RelatedObjectNotFound)< biblioitem, class => Koha::Biblioitem>> ``` 10. Run the tests: k$ prove t/db_dependent/Koha/Biblio.t \ t/db_dependent/api/v1/biblios.t => SUCCESS: They pass! 11. Sign off :-D Signed-off-by: Marcel de Rooy Signed-off-by: Nick Clemens Signed-off-by: Katrin Fischer commit b2215edce1b8e95c3134ef6da53990742cc3be69 Author: Tomás Cohen Arazi Date: Thu Feb 13 09:58:57 2025 -0300 Bug 35246: Unit tests Signed-off-by: Marcel de Rooy Signed-off-by: Katrin Fischer commit bf1e45e4908192fd30895d422ba8ca544869c7da Author: Owen Leonard Date: Wed Feb 12 16:34:47 2025 +0000 Bug 39053: Add page-section div to reports results pages This patch adds a "page-section" wrapping div around reports results pages where it is missing. Note: This patch contains indentation changes. To test, apply the patch and test the following reports, confirming that the results page looks correct: - Patrons with the most checkouts - Acquisitions statistics - Patrons with no checkouts - Patrons statistics - Most-circulated items - Catalog statistics - Average loan time - Circulation statistics - Lost items - Catalog by item types - Holds statistics Sponsored-by: Athens County Public Libraries Signed-off-by: David Nind Signed-off-by: Marcel de Rooy Signed-off-by: Katrin Fischer commit 9bed52a868eeef6e6685160a2280d389d8f081e7 Author: Martin Renvoize Date: Wed Feb 19 11:04:10 2025 +0000 Bug 38375: Unit tests Signed-off-by: Katrin Fischer commit 006485a0363992daf43b5ffa6cbecea7240b9075 Author: Martin Renvoize Date: Wed Feb 19 11:04:31 2025 +0000 Bug 38375: Use perl 5.10+ \R Signed-off-by: Katrin Fischer commit 3407dc28a3e970149a7914dc868e4616847382d1 Author: Lari Strand Date: Tue Jan 21 10:22:51 2025 +0200 Bug 38375: Splitting SIP2SortBinMapping syspref does not support all operating systems' line endings Signed-off-by: Martin Renvoize Signed-off-by: Katrin Fischer commit 81df6dbe641c058f106dcb8206aa53f3a76894d0 Author: Victor Grousset Date: Mon Feb 17 20:36:35 2025 +0100 Bug 39149: Make perltidy.t also check .PL files Now perltidy.t will check 2958 files instead of 2954. Which matches with the 4 .PL files. Signed-off-by: Tomas Cohen Arazi Signed-off-by: Katrin Fischer commit 50d1acb3deb7d96978f9222b843621cac72a284b Author: Tomás Cohen Arazi Date: Mon Feb 17 17:38:40 2025 +0000 Bug 39149: Tidy .PL files This patch is the result of running: ```shell perl misc/devel/tidy.pl *.PL ``` Commiting raised an error about fix-perl-path.PL calling `warn` which I dismiss for the time being. Signed-off-by: Tomas Cohen Arazi Signed-off-by: Victor Grousset/tuxayo Signed-off-by: Katrin Fischer commit 63cba14abd03f779a9ab085409d8863f2ec6f775 Author: Tomás Cohen Arazi Date: Mon Feb 17 17:19:57 2025 +0000 Bug 39149: Make tidy.pl deal with .PL files This patch adds handling for files with the `.PL` extension to the `tidy.pl` helper script. It will now consider them Perl files and tidy them as appropriate. I opted for explicitly listing `PL` instead of making the existing check case-insensitive because the only files I found with changed case (i.e. Perl scripts that don't have `.pl`) are: $ find . -type f -iname "*.pl" ! -name "*.pl" ./fix-perl-path.PL ./build-resources.PL ./rewrite-config.PL ./Makefile.PL Signed-off-by: Tomas Cohen Arazi Signed-off-by: Victor Grousset/tuxayo Signed-off-by: Katrin Fischer commit da6996c08e1905f11d597752c701cfec31d03a46 Author: Andrew Fuerste Henry Date: Mon Feb 3 18:13:26 2025 +0000 Bug 38986: Restore Any in fund dropdown on suggestions homepage This patch restores Any as a budget filter option on the suggestions homepage, but does not allow one to select Any when saving a suggestion To test: 1 - have two suggestions, one with a fund assigned and one without 2 - go to /cgi-bin/koha/suggestion/suggestion.pl, use Fund filter, confirm it does not offer an Any option 3 - apply patch, reload page 4 - use Fund filter, confirm it shows Any as an option and both Any and None work properly 5 - confirm you cannot select Any when creating a new suggestion Signed-off-by: Sam Sowanick Bug 38986: Restore Any option to suggestions homepage filter "Any" should show all suggestions, any fund value and null fund values. One should not be able to create a suggeestion set to "Any" "None" should show only suggestions with no fund value selected. A new suggestion should default to "None" To Test: 1: have two suggestions, one with a fund selected and one without 2: go to suggestions homepage, confirm the filter does not have an "Any" option 3: apply patch, reload page 4: confirm the fund filter on suggestion homepage now has both Any and None and they behave as described above 5: confirm the fund filter defaults to Any as you change the branch filter 6: create a new suggestion, confirm its fund defaults to None and cannot be set to Any Signed-off-by: Marcel de Rooy Signed-off-by: Katrin Fischer commit 20eb3d0a2e0e29a2203e3d8d740446084a668ab9 Author: Katrin Fischer Date: Tue Feb 18 14:25:18 2025 +0000 Bug 37256: Fix faulty rebase, removing code from bug 25711 Signed-off-by: Katrin Fischer commit 0bb4787f683957f2b617fb1380cad580ae8bfe56 Author: Owen Leonard Date: Thu Sep 26 19:12:13 2024 +0000 Bug 37273: (follow-up) Remove parentheses and # from column The new ID column shows numbers like "(#2)". I think the parentheses and hash symbol are unnecessary and inconsistent with the way we do it in other places and should be removed. To test, apply the patch and rebuild the staff interface CSS: Either run 'yarn build' from the command line or if you're using a sandbox, click the "Actions" menu for your sandbox and choose "Build CSS and JS." Follow the previous test plan and confirm that the ID column looks correct. Signed-off-by: Lucas Gass Signed-off-by: Katrin Fischer commit d361c8adb6ffc5b269a4ec869ae31435205fc823 Author: Eric Garcia Date: Wed Jul 17 16:42:31 2024 +0000 Bug 37273: Added ID column to ERM Agreements and Licenses Tables To test 1. Apply patch, yarn build, restart_all 2. System preferences -> ERMModule -> Enable 3. E-resource management -> Agreements -> "+New Agreement" 4. Notice ID is removed from name and put in it's own column 5. Repeat with licenses table Signed-off-by: Lucas Gass Signed-off-by: Katrin Fischer commit e5eaa2aa175b8c5c9ed48e87a574d67af22ce2e1 Author: Martin Renvoize Date: Fri Aug 9 15:40:43 2024 +0100 Bug 37256: Ensure empty and null work as expected in PUT Sponsored-by: Glasgow Colleges Library Group Signed-off-by: George Harkins Signed-off-by: Kyle M Hall Signed-off-by: Katrin Fischer commit adae95debee124f42e8ed04e6f315cd294d653ab Author: Martin Renvoize Date: Fri Aug 2 14:46:43 2024 +0100 Bug 37256: Add 'PUT' for circulation rule sets Sponsored-by: Glasgow Colleges Library Group Signed-off-by: George Harkins Signed-off-by: Kyle M Hall Signed-off-by: Katrin Fischer commit df21c0618e42a60a0dfa51c3279461d7c9cf6185 Author: Martin Renvoize Date: Wed Aug 7 11:18:13 2024 +0100 Bug 37256: Unit tests for set_rules This patch adds unit tests for the to be introduced set_rules endpoint for setting circulation rule sets. Sponsored-by: Glasgow Colleges Library Group Signed-off-by: George Harkins Signed-off-by: Kyle M Hall Signed-off-by: Katrin Fischer commit f4342c922d422aa1687f0e976e57eaa4bb8901cd Author: Martin Renvoize Date: Fri Aug 2 14:19:18 2024 +0100 Bug 37256: Defined 'context' of circulation rules This is a follow-up to the previous bug exposing circulation rules over the API. We formally define a definition for a circulation rules set including a new 'context' object the defines the context, library_id, patron_category_id and item_type_id combination of the rules returned. This is just a patch I missed in the last submission that I'd meant to add and it's important for the PUT part of this patchset. Sponsored-by: Glasgow Colleges Library Group Signed-off-by: George Harkins Signed-off-by: Kyle M Hall Signed-off-by: Katrin Fischer commit 85d9861fb3c1a7540d625d0cb74393bf58b9b58b Author: Owen Leonard Date: Thu Sep 5 14:05:55 2024 +0000 Bug 28453: (follow-up) Make pagination labels translatable This patch moves the English strings out of Output.pm and adds classes to the pagination markup which can be used as hooks for JavaScript. The global JS include is modified to look for these hooks and add text labels to the links. Signed-off-by: David Nind Signed-off-by: Jonathan Druart Signed-off-by: Katrin Fischer commit 2685ac2c6ca86621790ee2b00f36959a65df3bc0 Author: Owen Leonard Date: Fri Jun 14 18:06:15 2024 +0000 Bug 28453: Update pagination subroutine to generate Bootstrap markup This patch modifies Output.pm to change the HTML it generates when creating pagination bars. The changes allow the pagination menu to be styled like Bootstrap pagination, making them consistent with the pagination on catalog search results. To test, apply the patch and rebuild the staff interface CSS (https://wiki.koha-community.org/wiki/Working_with_SCSS_in_the_OPAC_and_staff_client). - Test pages where the pagination_bar subroutine is called: - Authorities -> Authority search results. - Cataloging -> Cataloging search results. - Cataloging -> MARC Editor -> Edit tag which is configured to use the unimarc_field_210c value builder. - Reports -> Saved SQL reports -> Results. - Tools -> Comments. - Lists -> List contents. The pagination bar markup was removed from the templates for these pages because it wasn't being used: - Administration -> Patron attribute types. - Administration -> Record matching rules. - Tools -> Tags. Sponsored-by: Athens County Public Libraries Signed-off-by: David Nind Signed-off-by: Jonathan Druart Signed-off-by: Katrin Fischer commit d734a119c2ee449a5a9ef863cecb70a698e9d55e Author: Andrew Fuerste Henry Date: Mon Dec 9 20:46:24 2024 +0000 Bug 32211: Update DUEDGST and PREDUEDGST default notices to use TT To test: 1. Apply patch 2. reset_all (or start your testing environment in the first place) 3. Enable SMS Notices a) Find the system preference SMSSendDriver b) Enter "Email" as the value for SMSSendDriver and save 4. Go to a patron account, and set the following messaging preferences: Item due: - Check SMS - Check Email - Check Digests only for both Advance notice - Select 1 day in advance - Check SMS - Check Email - Check Digest only for both 5. Go to the checkout tab for that patron 6. Set a custom due date for today and check out 2+ items 7. Set a custom due date for tomorrow and check out 2+ more items 8. Run the cron job to generate notices: misc/cronjobs/advance_notices.pl -v -c 9. Open the Notices tab on that patron's account --> The patron should have four notices: Item due reminder (one for SMS and one for email) Advance notice of item due (one for SMS and one for email) 10. Open each notice and confirm that all information is correct Signed-off-by: Brendan Lawlor Signed-off-by: Jonathan Druart Signed-off-by: Katrin Fischer commit 34e71af165246df84e5d59848534c16fe2324fa1 Author: Katrin Fischer Date: Tue Feb 18 09:11:25 2025 +0000 Bug 36954: DBRev 24.12.00.009 Signed-off-by: Katrin Fischer commit 754fef4bac8136343a3209e14898fbd4c8ffc7b2 Author: Marcel de Rooy Date: Mon Feb 17 09:15:59 2025 +0000 Bug 36954: (QA follow-up) Add a dbrev print message about sip.log With reference to BZ comment9 and comment10. Signed-off-by: Marcel de Rooy Signed-off-by: Katrin Fischer commit cd4860fb595d52944fdc6a8e7c31bf66a2c0416c Author: Marcel de Rooy Date: Thu Jan 30 10:06:14 2025 +0000 Bug 36954: (follow-up) Return to the two logfiles pattern Note that --errlog should refer to all output from the wrapper daemon process only like respawning processes etc. And that --output should refer to all output from the daemonized client process (so in our case the SIP server). Moving a few sip.log occurrences to sip-output in that regard. Test plan: Restart koha-sip. Login to sip server. Restart koha-sip. Verify that you see Net::Server messages and traces from the login in the -output log. The restarts are not found however in -error. See my comment on the BZ report. Signed-off-by: Marcel de Rooy Signed-off-by: David Nind Signed-off-by: Nick Clemens Signed-off-by: Katrin Fischer commit 235c31e6839ab69328f89419919c1618ecaa63fe Author: Marcel de Rooy Date: Tue Jan 28 15:02:32 2025 +0000 Bug 36954: Adjust logfiles in koha-sip No need for three files here (and badly specified). We can just use sip.log. Test plan: Run koha-sip and verify that logging is still done as expected. Signed-off-by: Marcel de Rooy Signed-off-by: Nick Clemens Signed-off-by: Katrin Fischer commit 03520cf90bf0731816a6d5b8bcd3d3b79d6b8ff8 Author: Tomás Cohen Arazi Date: Mon Feb 17 17:16:42 2025 +0000 Bug 39096: Add .git-blame-ignore-revs mapping to Makefile.PL Signed-off-by: Tomas Cohen Arazi Signed-off-by: Katrin Fischer commit 5127534f5c7bc5d0382ce2f7c0c677f41149aef3 Author: Jonathan Druart Date: Mon Feb 10 14:10:46 2025 +0100 Bug 39020: Add tests Signed-off-by: Jonathan Druart Signed-off-by: Katrin Fischer commit d6c2124b29ab2d3ee1ff3bd3b70ac28c9f325c40 Author: Lisette Scheer Date: Mon Feb 3 16:19:11 2025 +0000 Bug 39020: Search filters can't parse query 1. Turn on the SavedSearchFilters system preference 2. Go to advanced search, select a number of item types and search 3. Save the search 4. Enter a search term (such as power) 5. select the filter. Observe the following message: Error: Unable to understand your search query, please rephrase and try again. 6. Apply patch 7. Repeat steps 4 & 5, search should work as expected. 8. Sign off! Signed-off-by: Roman Dolny Signed-off-by: Jonathan Druart Signed-off-by: Katrin Fischer commit db067d48ee6bb18a5687411bf5046baf85958c1b Author: William Lavoie Date: Thu Feb 13 10:30:03 2025 -0500 Bug 19113: Barcode value builder not working with numeric branchcode The regexp for the value builder 'hbyymmincr' doesn't allow for numerics in the branchcode, so the nextnum found is always 0 and multiple Add always generate the same barcode. This simply allow for numerics within the regex. Test - It's a bit complicated. You need - all your branchcodes to be numerics (01,02,71...) - all barcodes to already be a bunch of numbers - Modify the syspref 'autobarcode' to hbyymmincr, the home branch + date one. - Find an item in the pro-search, - New -> New Item - Click on the 'p' to have the value builder create the next barcode. - Without the patch, the query won't have found anything, so it'll suggest xxxxxx0001 - Click Add. It reprensent the form to enter another one. - Click on the 'p' edit box, it'll offer you again xxxxxx0001 With the patch, it'll offer valid ones everytime. Signed-off-by: David Nind Signed-off-by: Marcel de Rooy Signed-off-by: Katrin Fischer commit 8e808e97b3079b3cf249ff80c8b4a2500cf28a22 Author: Jonathan Druart Date: Tue Feb 11 10:25:50 2025 +0100 Bug 39080: Adjust the fixed header after we added the column filters If a column contains a dropdown list (for libraries for instance), the width of the column will be modified, but DT's fixed header need to be adjusted. Test plan: One example where this problem can be observed is the "holds to pull" table: "Title" is followed by "Libraries". Test without and with the patch, and confirm that the display/offset is fixed. Signed-off-by: David Nind Signed-off-by: Marcel de Rooy Signed-off-by: Katrin Fischer commit 16f528e4b4092fb59d93645d53e94d3fb19ce6e7 Author: Jonathan Druart Date: Mon Jan 20 10:17:43 2025 +0100 Bug 36025: Fix failure when pref is off Prevent JS error if ExtendedPatronAttributes is off "Uncaught TypeError: options.extended_attribute_types is undefined" Signed-off-by: Magnus Enger Makes the Cypress tests pass. Signed-off-by: Marcel de Rooy Signed-off-by: Katrin Fischer commit 60332e75527380d804bc945106a1270fe4966f5f Author: Jonathan Druart Date: Mon Jan 20 16:01:29 2025 +0100 Bug 36025: Add cypress tests Signed-off-by: Magnus Enger Tests pass, with the followup patch. Signed-off-by: Marcel de Rooy Signed-off-by: Katrin Fischer commit 208a7cc3a453a57ba213fc16ccbe8d07ae3aef66 Author: Andreas Jonsson Date: Thu Feb 8 01:08:10 2024 +0000 Bug 36025: Incorrect clause in patron search This patch removes the search clause for extended_attributes when there is no patron attribute types which are searchable by default. The clause was incorrectly added because the array extended_attribute_types was rendered as [""] This seems to be an issue with get_columns from DBIX Class and how that is cast when forcing an array in the template. It returns an empty string for nothing, a scalar for a single value, and an array for multiple values. This patch now checks if the variable is set and has content, and wraps as an array if so. In the case of two attributes, we do double the array, but this was true before as we always cast the return as an array. Test plan: * Make sure that no borrower attribute type is set to "searched by default" in Koha administration -> Patron attribute types. * Enable the network monitring in the developer tools in your web browser (Ctrl + Shift + E in firefox or Ctrl + Shift + I and select the "Network" tab). * Go to the patrons view members-home.pl (click patrons in top menu bar). * Search for a string that will match multiple borrowers (to not be automatically redirected) * Examine the ajax-request and make sure that "extended_attributes.code" is NOT part of the query. * Also, in koha-testing-docker with selenium enabled, run 'perl t/db_dependent/selenium/patrons_search.t' * Now set one patro attribute to searchable and searched by default and add a value for a patron, confirm search works * Set a second patron attribute to searchable and searched by default and confirm searching works Signed-off-by: Nick Clemens Signed-off-by: Magnus Enger Works as advertised. Did not run the selenium tests, as they have been obsoleted. Signed-off-by: Marcel de Rooy Signed-off-by: Katrin Fischer commit 3cc9282e7b6d9d7fd245dee81dc1fd2a72fd9be1 Author: Lucas Gass Date: Mon Feb 10 17:23:51 2025 +0000 Bug 39040: Add CSS back via _tables.scss To test: 1/ Turn on POS 2/ Enable Cash registers 3/ Configure some items for sale 4/ Make some POS transactions 5/ Visit pos/register.pl?registerid=x 6/ Notice the problem described 7/ APPLY PATCH and regenerate CSS ( https://wiki.koha-community.org/wiki/Working_with_SCSS_in_the_OPAC_and_staff_interface ) 8/ Look at the table again. The rows should now be correctly highlighted. Signed-off-by: Barbara Johnson Signed-off-by: Marcel de Rooy Signed-off-by: Katrin Fischer commit fe222e530e938c883cee7b3a9977b2dafca25347 Author: Lucas Gass Date: Mon Jan 13 17:12:34 2025 +0000 Bug 38767: Add standard class to various statuses in holdings table 1. have an item with many statuses including: -checked out -onsite_checkout -in transit -transit requested -lost -damaaged -withdrwan -not for loan -hold waiting at... -recalled -available -in bundle 2. notice when there are multiple statuses the text runs into a single "blob". 3. APPLY PATCH and generate CSS (https://wiki.koha-community.org/wiki/Working_with_SCSS_in_the_OPAC_and_staff_interface) 4. Statuses are seperated by a break. Signed-off-by: David Nind Signed-off-by: Marcel de Rooy Signed-off-by: Katrin Fischer commit ccc66e682bbd1c49c059a8d9d19bbaf889676bda Author: Jonathan Druart Date: Tue Feb 11 13:40:06 2025 +0100 Bug 39088: Correctly prefix url with protocol when OPACURLOpenInNewWindow on the OPAC result page There is certainly something better to do as the xsl for the OPACDetail is calling it only once, but it needs more work. Signed-off-by: Caroline Cyr La Rose Signed-off-by: Marcel de Rooy Signed-off-by: Katrin Fischer commit ff71f51b65f7842c58ae56ef4446171f0c403fde Author: Owen Leonard Date: Fri Feb 7 17:46:44 2025 +0000 Bug 35202: Table settings should apply to multiple subscriptions in the OPAC This patch updates the bibliographic detail page in the OPAC so that if there are multiple subscriptions attached to one record, each table of issues under the subscriptions tab adheres to the settings defined in Table Settings. To test you should have at least two subscriptions attached to one record, and at least one issue of each subscription. - Apply the patch and view the record in the OPAC. - Under the "Subscriptions" tab there should be separate tables for each subscription, each of them a sortable DataTable. - In the staff interface, go to Administration -> Table settings -> OPAC -> subscriptionst - Select some columns to be hidden by default. - Return to the OPAC and confirm that each subscription table now reflects the change you made in table settings. Sponsored-by: Athens County Public Libraries Signed-off-by: David Nind Signed-off-by: Ray Delahunty Signed-off-by: Marcel de Rooy Signed-off-by: Katrin Fischer commit f6fd36ab77c66da3299c49dc2c8a2944bba76e9a Author: Jonathan Druart Date: Mon Feb 10 15:42:18 2025 +0100 Bug 35885: Sort vendors by name by default Signed-off-by: Magnus Enger To reproduce: - Set ERMModule = Enable - In the Acquisitions module I added 4 vendors, with names X, A, C, Y, in that order - Went to E-resource management > Agreements > New agreement - In the "Vendor" dropdown, the vendors are listed in the order they were entered: X, A, C, Y To test: - Applied the patch + restart_all + run "yarn js:build" in the cloned Koha repo inside KTD - Shift-reload the "New agreement" page - Vendors are in alphabetical order Signed-off-by: Marcel de Rooy Signed-off-by: Katrin Fischer commit 09d3fd9b95f031a9bc6e8ce3ee370c51a40f3347 Author: Jake Deery Date: Tue Feb 11 15:26:46 2025 +0000 Bug 38957: edifactmsgs data table sorts on date This trivial patch addresses a missing order-by on the edifact messages datatable since moving to API based fetching TO TEST: a) Read in a load of EDIFact messages in k.t.d b) Notice on the EDIFact messages table the order is seemingly arbitrary c) APPLY PATCH d) Notice the sorting is now by transfer date, descending Signed-off-by: Lisette Scheer Signed-off-by: Marcel de Rooy Signed-off-by: Katrin Fischer commit 8ef667a0b48c67ead921f4465d94d233b18b5e70 Author: Caroline Cyr La Rose Date: Tue Feb 4 15:29:13 2025 -0500 Bug 39032: "Items selected" in item search untranslatable This patch corrects a syntax error that prevented the string "Items selected" from being picked up by the translation tool. To recreate: 1. Go to Item search 2. Click 'Search' 3. Select one or more results --> In the bar at the top of the results there is a rectangle with "Items selected: N XClear" 4. Install another language (e.g. fr-CA) 4.1. For ktd, do the following commands ktd --shell gulp po:update --lang fr-CA Ctrl+D (exit shell) ktd --root --shell koha-translate --install fr-CA --dev kohadev koha-translate --update fr-CA --dev kohadev 4.2. Go to Administration > System preferences 4.3. Search for StaffInterfaceLanguages 4.4. Check fr-CA 4.5. Click 'Save all I18N/L10N preferences' 5. Redo steps 1-3 in French --> "Items selected" is not translated 6. Apply patch 7. Update translations (for ktd) ktd --shell gulp po:update --lang fr-CA 8. Open misc/translator/po/fr-CA-staff-prog.po 9. Search for "Items selected" --> It should be there, with a fuzzy flag 10. Translate the phrase in msgstr and remove the line with the fuzzy flag 11. Apply translations (for ktd) ktd --root --shell koha-translate --update fr-CA --dev kohadev 12. Redo steps 1-3 in French --> "Items selected" is now translated! Signed-off-by: David Nind Signed-off-by: Marcel de Rooy Signed-off-by: Katrin Fischer commit 168d282e94e28e8d6b96efe4cda4176e46fb27cd Author: Owen Leonard Date: Wed Feb 12 19:50:26 2025 +0000 Bug 39095: Fix problems with article request deletion This patch fixes a number of issues with article request deletion in the OPAC: - Cancel button should work when initially hidden by DataTables' responsive behavior. - Table row hiding upon deletion should work when DataTables' responsive behavior has created a secondary row to display the hidden columns. - Tab and table caption article count should correctly update when a request is canceled. To test, apply the patch and enable ArticleRequests if necessary. If enabling ArticleRequests for the first time you may need to update your circulation rules to allow article requests on some patrons or item types. - Log in to the OPAC and place several article requests. - Go to your user summary page and open the article requests tab. - Narrow your browser window until at least the last column is hidden by DataTables. - Click the "+" button to show the hidden details, which should include the cancel button. - Click the cancel button. After confirming the deletion the original row should be hidden along with the row shown by DataTables. - The article request count in the article requests tab should now be updated to reflect the new number of requests. - The same should be true of the article requests table heading. Sponsored-by: Athens County Public Libraries Signed-off-by: David Nind Signed-off-by: Marcel de Rooy Signed-off-by: Katrin Fischer