]> git.koha-community.org Git - koha.git/log
koha.git
2 months agoBug 33348: Tests
Aleisha Amohia [Thu, 16 Nov 2023 21:38:35 +0000 (21:38 +0000)]
Bug 33348: Tests

prove t/Koha/SearchEngine/Elasticsearch/Search.t

Signed-off-by: Roman Dolny <roman.dolny@jezuici.pl>
Signed-off-by: Thomas Klausner <domm@plix.at>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 8e73930408da6aad055016989438f75e718ae2f0)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit d444b97d036474f4327dc57ae616b0c4d2606d37)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 33348: (follow-up) Fix if no 008 defined
Aleisha Amohia [Mon, 1 May 2023 22:38:57 +0000 (22:38 +0000)]
Bug 33348: (follow-up) Fix if no 008 defined

And copy fix across to Zebra search as well.

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Roman Dolny <roman.dolny@jezuici.pl>
Signed-off-by: Thomas Klausner <domm@plix.at>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 7c40544951701015e251120579082d5c60ddd7d2)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 97477f92581b6f6b87ea63d88c2f21ebe24f4ead)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 33348: Show authority heading use with Elasticsearch
Aleisha Amohia [Tue, 28 Mar 2023 02:10:59 +0000 (02:10 +0000)]
Bug 33348: Show authority heading use with Elasticsearch

This patch ensures the ShowHeadingUse system preference and feature works as expected when using Elasticsearch as the searchengine.

To test, follow the test plan at Bug 29990 Comment 9. Ensure the SearchEngine system preference is set to Elasticsearch.

Sponsored-by: Education Services Australia SCIS
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Roman Dolny <roman.dolny@jezuici.pl>
Signed-off-by: Thomas Klausner <domm@plix.at>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 0fc9f22a935e66ae42a3dc07c4e2bd4c6905f616)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 8e8979cb4e1c86b943ad3a2d0f8cd843658003f2)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38100: (QA follow-up) Tidy changes in C4/XSLT.pm
Paul Derscheid [Thu, 7 Nov 2024 11:11:46 +0000 (11:11 +0000)]
Bug 38100: (QA follow-up) Tidy changes in C4/XSLT.pm

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 8ee845311810590a7cbb3d2de9ef3c046d9b39b2)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 15e35296481d66141ec8fa979b00d564e6d09a86)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38100: Unit tests
Janusz Kaczmarek [Fri, 4 Oct 2024 19:18:16 +0000 (19:18 +0000)]
Bug 38100: Unit tests

Signed-off-by: Roman Dolny <roman.dolny@jezuici.pl>
Signed-off-by: Paul Derscheid <paul.derscheid@lmscloud.de>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit af270fc2397a49f15795ce9f3839a9fd2b0bf0df)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 1fbd8ebf83f697b5486455e762f692c1a1cd7e11)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38100: Items with damaged status are shown in OPAC results as "Not available...
Janusz Kaczmarek [Fri, 4 Oct 2024 19:07:12 +0000 (19:07 +0000)]
Bug 38100: Items with damaged status are shown in OPAC results as "Not available" even with AllowHoldsOnDamagedItems

Items with damaged status are shown on the OPAC results page as "Not
available" even with AllowHoldsOnDamagedItems set to 'Allow', which is
misleading for the users.  'other/Damaged' status should be assigned
only if AllowHoldsOnDamagedItems is set to 'Don't allow'.

Test plan:
==========

1. Check that AllowHoldsOnDamagedItems system preference is set to
   'Allow'.
2. In librarian interface, change the damaged status of an item by
   setting it to 'Damaged'.
3. In OPAC, make a search for the record with this item attached.  Use
   common words from title to get a list and not a single record.
4. Note that the item in question is labelled as 'Not available'
   (Damaged).
5. Apply the patch; restart_all.
6. Repeat p. 3.  Note that the item is now labelled as 'available for
   loan'.
7. Set AllowHoldsOnDamagedItems system preference is set to 'Don't
   allow'.
8. Repeat p. 3.  Note that the item is now labelled as 'Not available'.

Signed-off-by: Roman Dolny <roman.dolny@jezuici.pl>
Signed-off-by: Paul Derscheid <paul.derscheid@lmscloud.de>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit c3dc86286c29661357fb696ec6759b93df4bcc89)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit de82706184490a28e7e6a1599f3e01fe4c5b3425)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37998: (QA follow-up) Remove excess whitespace in catalogue/itemsearch_item.json.inc
Paul Derscheid [Thu, 7 Nov 2024 11:51:21 +0000 (11:51 +0000)]
Bug 37998: (QA follow-up) Remove excess whitespace in catalogue/itemsearch_item.json.inc

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 48e7aad1f17f3d51f627a0d7604172c8665ad42c)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 93e9d8dd169d911f6d9a16025f324cfb0c818645)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37998: Tabs and backslashes in the data break item search display
Janusz Kaczmarek [Tue, 24 Sep 2024 21:05:32 +0000 (21:05 +0000)]
Bug 37998: Tabs and backslashes in the data break item search display

If the item data (e.g. callnumber) contains a tab or backslash OR the
title part contains a backslash, the DataTable displaying the item
search results stops throwing an error modal "Something went wrong when
loading the table. 200: OK." and a JS console log: "DataTables warning:
table id=results - Invalid JSON response. For more information about
this error, please see http://datatables.net/tn/1".

Test plan:
==========

1. Make an item search w/o any parameters.
2. From the first result page choose a record and modify the title (245 $a)
   to contain " \ " string. Repeat the item search. You should see a modal
   "Something went wrong when loading the table. 200: OK.".
3. Remove the " \ " from the title.  Verify that the problem no longer occurs.
4. In the same record, insert the string " \ " or a tab (copied from a text
   editor) into item data (itemcallnumber, enumchron, barcode etc.).
5. Repeat the item search. You should see again a modal "Something went wrong
   when loading the table. 200: OK.".
6. Apply the patch; restart_all.
7. Repeat p. 2, 3, 4, and 5.  Verify, that the problem is solved.

Sponsored-by: Ignatianum University in Cracow
Signed-off-by: Roman Dolny <roman.dolny@jezuici.pl>
Signed-off-by: Paul Derscheid <paul.derscheid@lmscloud.de>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit d289ebf0b36dc919f67d9947d6eee862e5362ce5)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 76f82167f1803a08ccdf71c650a4a95028d03b24)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38329: Remove orphan confirm_deletion() in supplier.tt
Phil Ringnalda [Fri, 1 Nov 2024 19:33:32 +0000 (12:33 -0700)]
Bug 38329: Remove orphan confirm_deletion() in supplier.tt

The JavaScript function confirm_deletion() in supplier.tt has either
been an unused orphan since bug 28082 two years ago, or since the switch
from YUI to Bootstrap 12 years ago. Doesn't matter which, nothing calls
it, and if it was called, it would fail by trying to GET with
op="delete" rather than POST with op="cud-delete".

Test plan:
 1. Acquisitions - New vendor, enter a name and Save
 2. Click the name of your new vendor, so your URL is at supplier.pl
 3. Click Delete vendor to verify that deleting still works without this
    unused code which would fail

Sponsored-by: Chetco Community Public Library
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit c70946a0bef61297a0d31893d47a0fe7c98c39ce)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 0b8b8cb782786fdc3210a0961e94402c42831814)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37863: Fix checking if a patron is already in the list adding users to a patron...
Adolfo Rodríguez [Mon, 9 Sep 2024 07:20:08 +0000 (09:20 +0200)]
Bug 37863: Fix checking if a patron is already in the list adding users to a patron card batch

If the patron is already in the card batch it won't add it and it will show an error message

Test plan:
1 Create or edit an patron card batch
2 Try adding twice or more the same patron. It will show a success message everytime and you will end up with the same patron several times in the card batch
3 Apply patch, restart services
4 Repeat step 2. The first time you click on add user, it will do it and show the success message (Patron 'Patron name' added.), but after that it won't add the user and it will display an error message (Patron 'Patron name' is already in the list.)

Signed-off-by: Sukhmandeep Benipal <sukhmandeep.benipal@inLibro.com>
Signed-off-by: Emily Lamancusa <emily.lamancusa@montgomerycountymd.gov>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 293afd3de6a7f88d6da4311026fd294e49eb6b96)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 0e2778159d14e438c8f6c60c5a43f97a74f9b79e)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 35126: Remove onload from opac-addbybiblionumber.pl
Lari Taskula [Wed, 2 Oct 2024 18:44:27 +0000 (18:44 +0000)]
Bug 35126: Remove onload from opac-addbybiblionumber.pl

To test:

Case a) Adding to a new list

1. Enable virtualshelves system preference
2. Search for any record and click it
3. On the right hand side of record view, click "Save to your lists"
4. A new pop up opens.
5. Under "Add to a new list", give any name to the list
6. Under "Add to a new list", click "Save"
7. Observe popup closing
8. Observe record view page reloading

Case b) Adding to an existing list

1. Enable virtualshelves system preference
2. Search for any record and click it
3. On the right hand side of record view, click "Save to your lists"
4. A new pop up opens.
5. Under "Add to a list", select an existing list
(it can be the same as the one you created in case a, it does not matter here)
6. Under "Add to a list", click "Save"
7. Observe popup closing
8. Unlike case a, observe record view page NOT reloading

Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Aleisha Amohia <aleishaamohia@hotmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 8cfce49d14ec38ff0fb053b0051391d55a9a341a)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit c2606618c03edcac7e3356d757fd74f320df348d)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37684: Direct link to expired news are broken
Baptiste Wojtkowski [Tue, 20 Aug 2024 10:38:38 +0000 (12:38 +0200)]
Bug 37684: Direct link to expired news are broken

When using a direct link to a news (koha.url/cgi-bin/koha/opac-main.pl?news_id=XXX), the link is broken if the news is expired.

Formerly, a using AdditionalContent->get( id => "my_news_id") on an
expired news was returning a news, and calling get without id was
returning all news but the expired ones.

This patch adds tests to check this behaviour by adding one expired news and performing following new tests:
1 - It may not be returned by AdditionalContent.get()
2 - It must be returned by AdditionalContent.get() using its id

This patch fixes the behaviour by addind the new behaviour or
AdditionalContent.get:
1 - Any news must be returned by AdditionalContent.get() using its id;

TEST PLAN:
1 - Apply patch
2 - Remove the changes made to Koha/AdditionalContents.pm
3 - Run tests -> one test must fail
4 - Create a news with a expired expiration date, notice the id of the
  news in the url of the modification panel
5 - Go to "opac.url/cgi-bin/koha/opac-main.pl?news_id=MY_ID" -> notice
  it does not work
6 - Reapply the whole patch
7 - Run test -> all test must pass
8 - Go to "opac.url/cgi-bin/koha/opac-main.pl?news_id=MY_ID" -> notice
  it does work now

Signed-off-by: Olivier V <olivier.vezina@inLibro.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 4ad5cbdb9708774e91a198e5e9a04d548a4503a7)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 1be8a9eedd80ebeecaf89698fe3405ecd5d517b4)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37365: (QA follow-up) Add error checking around AddFile call
Marcel de Rooy [Fri, 4 Oct 2024 09:11:47 +0000 (09:11 +0000)]
Bug 37365: (QA follow-up) Add error checking around AddFile call

Test plan:
Add a return; in AddFile to simulate a failing db insert.
Verify that an alert pops up.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Aleisha Amohia <aleishaamohia@hotmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 35d90969f14bd55fb77acbbafbf0f9a23a2b2d18)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit c8cab299195bea2039068258018bd2685013be64)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37365: (QA follow-up) Add borrowernumber to referrer url
Marcel de Rooy [Fri, 4 Oct 2024 09:04:18 +0000 (09:04 +0000)]
Bug 37365: (QA follow-up) Add borrowernumber to referrer url

Since we post to add_message, we need to ensure that the
borrowernumber is added to the referrer url. This 'tric' is
already done there for another form.

Test plan:
See original plan.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Aleisha Amohia <aleishaamohia@hotmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit fbc2e2e9333fbdd61a744297e36a6752106c1977)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit dd45949443ecc8c04f78f91b2f90e90ab8a12c12)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 30397: Remove duplicate entry from length menu of patrons search
Jonathan Druart [Thu, 31 Oct 2024 13:41:19 +0000 (14:41 +0100)]
Bug 30397: Remove duplicate entry from length menu of patrons search

If you have 20 in PatronsPerPage, there will be two 20 entries in the
length menu of the patrons search.
jQuery.unique is stupid it seems, it requires the array to be sorted (?)

let x = [1, 2, 1, 2]
jQuery.unique(x);
Array(4) [ 1, 2, 1, 2 ]

x = [1, 1, 2, 2]
jQuery.unique(x);
Array [ 1, 2 ]

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 60249a979cdf14f78c4d0a777a8f9f536272aa29)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 5c45839b5b4cd51a2f865d95abbaff37c10eacb2)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 22223: t::lib::QA::TemplateFilters missing built-in TT filter "safe_url" causes...
David Cook [Thu, 7 Nov 2024 01:37:14 +0000 (01:37 +0000)]
Bug 22223: t::lib::QA::TemplateFilters missing built-in TT filter "safe_url" causes false warnings

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit fe495d19dfc138fc99f7c77e41a33c77521cb738)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 4023df1789db4e31a5bd1d03658d9d10a077399b)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 22223: Add filter to make item URLs safe in template output
David Cook [Tue, 20 Aug 2024 00:12:21 +0000 (00:12 +0000)]
Bug 22223: Add filter to make item URLs safe in template output

This change adds a "safe_url" filter which takes a text input and
returns a Perl URL object which stringifies to a safe URL.

This change is only needed in the OPAC as the staff interface
handles the item URL display using Javascript not Template Toolkit.

0. Apply patch and koha-plack --restart kohadev
1. Create an item for a record using the following URL
https://koha-community.org?url=https%3A%2F%2Fkoha-community.org
2. Go to the OPAC for that record and verify that the URL is
not double-escaped
3. Create a malicious payload (talk to QA/security team for this if necessary)
4. Note that the malicious payload is escaped
5. prove t/Koha/Plugins/SafeURL.t
6. Celebrate!

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit e8e00cfeb30391009391849c0194a0ff0603d78c)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 629d2a6f6ca168b9d434017cd785e10dc281f3e7)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38303: Set item's replacement price to defaultreplacecost if 0.00
Jonathan Druart [Wed, 30 Oct 2024 15:37:36 +0000 (16:37 +0100)]
Bug 38303: Set item's replacement price to defaultreplacecost if 0.00

No idea if this is a real bug. This code is fixing the following test
failure:
t/db_dependent/Circulation/CalcFine.t .. 1/7
    #   Failed test 'Amount is calculated correctly'
    #   at t/db_dependent/Circulation/CalcFine.t line 271.
    #          got: '0'
    #     expected: '6'
    # Looks like you failed 1 test of 2.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Aleisha Amohia <aleishaamohia@hotmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 5776f28efa094e2cdd0dd441ae58be09068cb49a)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 848d6e07ef74111501d5e71d3e4336dd493c1d53)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38297: Add a permissions check to the New vendor button
Matt Blenkinsop [Wed, 30 Oct 2024 11:46:05 +0000 (11:46 +0000)]
Bug 38297: Add a permissions check to the New vendor button

Test plan:
1) Choose a staff patron and make sure they have permissions to log
   into the staff interface
2) Ensure that the patron does not have the vendors_manage permission
   but give them one other acquisitions permission so that they can see
   the link on the homepage (e.g. budget_manage)
3) In an incognito browser, log in with that patron and go to the
   acquisitions homepage
4) The New vendor button will be visible
5) Click on it and fill in the required fields. Submit the form and it
   will error for lack of permissions
6) Apply patch
7) Return to the acquisitions page and the New vendor button should no
   longer be visible
8) Back in your main browser, give the patron the vendors_manage
   permission and then refresh the incognito window - the button should
   be visible

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit b11b2b213e611ba759a79f58940d6d8fb8581e71)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 345d1b943ad09867ef5e32da9710dc4debfb6030)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38132: Add data-isbn to shelfbrowser
Matt Blenkinsop [Wed, 9 Oct 2024 15:00:33 +0000 (15:00 +0000)]
Bug 38132: Add data-isbn to shelfbrowser

This patch adds a data-isbn attribute to the shelfbrowser_cover container for use in plugins

Test plan
1) View the patch diff and confirm that the attribute has been correctly added

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 2cca46e611c4324afbbb06fdc1bfc1e431cb478b)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit bf0420b14079c409380af61ec95f6cf7ba0de9c1)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 33188: Remove warning from Koha::Item->hidden_in_opac
Jonathan Druart [Tue, 29 Oct 2024 13:41:19 +0000 (14:41 +0100)]
Bug 33188: Remove warning from Koha::Item->hidden_in_opac

"Use of uninitialized value in string eq"

Test plan:
  prove t/db_dependent/Koha/Item.t
should return green

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Edit: tidied the tests (tcohen)
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit f575d4cd73567d5a0e0edc777f83bdf99959a526)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 1b27067e9adc695662c570b411bc546c6c7c41c0)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38266: (bug 21083 follow-up) Increment after comparison
Nick Clemens [Thu, 24 Oct 2024 18:17:54 +0000 (18:17 +0000)]
Bug 38266: (bug 21083 follow-up) Increment after comparison

To test:
 1 - Define a patron attribute as repeatable
 2 - Add multiple values to a patron (I used borrowernumber 5)
 3 - Tools->Batch patron modification
 4 - Modify the patron from step 1, selecting the attribute you created and checking the box to clear
 5 - View the patron, they look correct
 6 - Check the DB:
    SELECT * FROM borrower_attributes WHERE borrowernumber=5;
 7 - There is one blank value
 8 - Apply patch
 9 - Repeat batch modification
10 - Check the DB, no attribute!
11 - Test with multiple attributes in the batch modification and ensure only the correct one is removed
12 - Sign off

Signed-off-by: Phil Ringnalda <phil@chetcolibrary.org>
Signed-off-by: Emily Lamancusa <emily.lamancusa@montgomerycountymd.gov>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit a62953aa9ee8c5ac80e6e5cc6dd5300725b89e5e)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 5178687b67cefb9ca0c9847c6aeb123366d0a59c)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38158: Typo in inventory 'Items has no "not for loan" status'
Caroline Cyr La Rose [Fri, 11 Oct 2024 19:56:29 +0000 (15:56 -0400)]
Bug 38158: Typo in inventory 'Items has no "not for loan" status'

This patch corrects a typo in the inventory tool when an inventory
is done against not for loan items and an item has no not for loan
status.

To test:
1. Go to Cataloging > Inventory
2. Enter a barcode for an item that has items.notforloan = 0 in the "Or scan items one by one" text box
3. Check all the boxes EXCEPT "For loan" under "Optional filters for inventory list or comparing barcodes" > "items.notforloan"
4. Click "Submit"
   --> In the "Problems" column, it says "Items has no "not for loan" status"
5. Apply patch
6. Reload the page
   --> In the "Problems" column, "Item" should now be singular

Signed-off-by: Sam Sowanick <sam.sowanick@corvallisoregon.gov>
Signed-off-by: Emily Lamancusa <emily.lamancusa@montgomerycountymd.gov>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit baf884600d2d3d1666a13455d2db584f314fd414)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 5b320189f0c0ac442a95f00653533fd6b9e74d28)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37856: DBIC Schema updates
Lucas Gass [Thu, 5 Dec 2024 19:07:20 +0000 (19:07 +0000)]
Bug 37856: DBIC Schema updates

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 5eed8269b24edebe75a6c182c9f55e16eb9bae44)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37856: DBRev 23.11.10.004
Lucas Gass [Thu, 5 Dec 2024 19:05:46 +0000 (19:05 +0000)]
Bug 37856: DBRev 23.11.10.004

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 1fb5bc4d8374ed149134bb8f945bf0c56c12ea5a)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37856: Add new test to test platform is correctly added to build_url
Pedro Amorim [Fri, 27 Sep 2024 18:42:58 +0000 (18:42 +0000)]
Bug 37856: Add new test to test platform is correctly added to build_url

prove t/db\_dependent/Koha/ERM/EUsage/UsageDataProvider.t

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit e7dbd2a8b7683e78f9420d0e86e9dc651f067c2e)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit aae9a4466c4e53f38e090d8f739eb1ead74ba2a0)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37856: Fix existing test
Pedro Amorim [Fri, 27 Sep 2024 18:42:29 +0000 (18:42 +0000)]
Bug 37856: Fix existing test

A service_platform value was being randomly to 'service_platform' as is a new attribute.
Assign undef to that to fix existing test

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit b3fb2e85fe5a1e8fd8941da3cfee8a04879cebd3)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 6b8e7d7152aa1c4a7ad4d1e006a784b650c4baf9)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37856: (QA follow-up) Tidy
Nick Clemens [Thu, 26 Sep 2024 19:20:15 +0000 (19:20 +0000)]
Bug 37856: (QA follow-up) Tidy

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit b7600e480151cc8d8762f6826d1b7da3e697c3f7)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 2e9a6b16f9032ed386bab068949302cf8eb9c996)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37856: Add tests
Pedro Amorim [Thu, 19 Sep 2024 14:03:40 +0000 (14:03 +0000)]
Bug 37856: Add tests

This is using the groundwork from bug 37963.
This is testing the specific error this bug is addressing:
Required parameter Platform is missing

It is also testing that the error message is correctly shown as a background
job report message to the user

Test plan:
prove t/db_dependent/Koha/BackgroundJob/ErmSushiHarvester.t

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit edb6056a741f6c326a1745648ebadb1dbea7fc1c)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 89de703030db785c9f7c6bc4054a9f4f9b128263)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37856: Consider absence of 'Report_Items'
Pedro Amorim [Thu, 19 Sep 2024 14:00:41 +0000 (14:00 +0000)]
Bug 37856: Consider absence of 'Report_Items'

The SUSHI provider in question for this patchset also does not return any
Report_Items entry. This patch accounts for that.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 72b38a1dbfe12685124b9814dc97807e0d301d3f)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 730ca49e063c7a6ff22bbb13f5761b74310f9322)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37856: Consider 'Exceptions' not being part of 'Report_Header'
Pedro Amorim [Thu, 19 Sep 2024 13:55:48 +0000 (13:55 +0000)]
Bug 37856: Consider 'Exceptions' not being part of 'Report_Header'

When fixing the issue around the missing platform parameter, we
noticed this particular provider also returns 'Exceptions' as
its own thing, not part of 'Report_Header', despite documentation:
https://countermetrics.stoplight.io/docs/counter-sushi-api/7cp0h7n1hm2en-tr-j1-journal-requests-controlled

From the link above, search for 'Exceptions'. Notice it should be under 'Report_Header'.
Either way, this patch accounts for this possibility.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 7c175c2160e7ed59c3c67b5a7cd890a4ff0b1306)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit c3681fd9ff52d77b3b4e9fc2832561c31f709f9e)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37856: Add service_platform field
Pedro Amorim [Wed, 18 Sep 2024 15:56:19 +0000 (15:56 +0000)]
Bug 37856: Add service_platform field

The change from this patch itself should be self-explanatory.
Testing for this requires credentials to a specific provider.
But the parameter is only added to the URL if defined.

Test plan, ktd, apply patch, run:
$ yarn js:build
$ yarn api:bundle
$ koha-plack --restart kohadev

1) Enable ERMModule
2) Create a new provider, visit:
<staff_url>/cgi-bin/koha/erm/eusage/usage_data_providers/add
3) Ensure 'Service platform' now shows. Create the provider and put something in this field.
4) View the provider, ensure the field is shown, visit:
<staff_url>/cgi-bin/koha/erm/eusage/usage_data_providers/1

Ensure all tests are still passing:
$ cypress run --spec t/cypress/integration/ERM/DataProviders_spec.ts
$ prove t/db_dependent/api/v1/erm_usage_*

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit b852c042feff417c745e2166c26f84b22456b14a)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit c87bb2b3a7d1d988595c38ea8a8cc9dbc49f7f32)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37856: atomicupdate
Pedro Amorim [Wed, 18 Sep 2024 15:57:43 +0000 (15:57 +0000)]
Bug 37856: atomicupdate

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 2e4b1ca42f7a940e8329ed860dda102deb629db0)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 8e4ed8d701d2d7cecf96bf3356cb9eb8285ad392)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37856: Append platform parameter to SUSHI url if defined
Pedro Amorim [Wed, 18 Sep 2024 15:55:51 +0000 (15:55 +0000)]
Bug 37856: Append platform parameter to SUSHI url if defined

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit dc9a5684f438d7b676ab52ffd2e4a73179d422eb)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit d4a4d38974435f4ed2825cf3b29dc152018ae336)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37963: (QA follow-up) Tidy
Nick Clemens [Thu, 26 Sep 2024 18:34:35 +0000 (18:34 +0000)]
Bug 37963: (QA follow-up) Tidy

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 5b51ef78d4da3703c575bad32a112f0d99cd01c5)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 209b685871b51aa6d62ced3e906d520cef9d3a6d)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37963: Case 2 - Consider providers returning error messages lower cased
Pedro Amorim [Thu, 19 Sep 2024 13:49:10 +0000 (13:49 +0000)]
Bug 37963: Case 2 - Consider providers returning error messages lower cased

Test plan:
1) Apply only test patch for case 1. Run tests:
prove t/db_dependent/Koha/BackgroundJob/ErmSushiHarvester.t
2) Verify tests fail. Apply the other patch for case 1.
3) Run tests again. Verify they now pass.
4) Repeat the test plan but using patches for case 2

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 23ab84c9b6c1a2206d9495c6671d833b14bf5a0f)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 7baba70b69e12dfa3436db02404a8cdf12b12a71)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37963: Case 2 - Add tests for different case error message
Pedro Amorim [Thu, 19 Sep 2024 13:49:58 +0000 (13:49 +0000)]
Bug 37963: Case 2 - Add tests for different case error message

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 4c76d2b565610737d9a0ec5a76d44c4cc2e347e0)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit d4255bf632724ffce05095172040a8818c998d6b)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37963: Case 1 - Return if sushi_errors even if response code >= 400
Pedro Amorim [Thu, 19 Sep 2024 13:39:07 +0000 (13:39 +0000)]
Bug 37963: Case 1 - Return if sushi_errors even if response code >= 400

This ensures that SUSHI errors, if present, are shown on the UI even if
response->code >= 400.
This means that if, for example, SUSHI provider returns 401 with SUSHI
error like so:
{"Code": 2020, "Severity": "Error", "Message": "API Key Invalid"}

Then, the 'API Key Invalid' will be shown to the user, without having to
check logs.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 5d53bb4bffa2cc1ee2bcc0a3d84fb74cc672fa97)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 6987bf779f6d2f5ccc0d5b76c5e6a5a6eff7ee1a)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37963: Case 1 - Add tests for invalid api key use case
Pedro Amorim [Thu, 19 Sep 2024 13:45:59 +0000 (13:45 +0000)]
Bug 37963: Case 1 - Add tests for invalid api key use case

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 05381ba6b18d50fdc0329dd13a364cdb4e0eca11)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 407661f5d32986412552e95a70508dc5ceb4caa8)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37965: (QA follow-up) fix WYSIWYG in sysprefs
David Cook [Tue, 29 Oct 2024 22:45:23 +0000 (22:45 +0000)]
Bug 37965: (QA follow-up) fix WYSIWYG in sysprefs

Test plan:
1. Go to http://localhost:8081/cgi-bin/koha/admin/preferences.pl?
op=search&searchfield=UseWYSIWYGinSystemPreferences
2. Enable the system preference to show WYSIWYG in HTML system preferences
3. Go to http://localhost:8081/cgi-bin/koha/admin/preferences.pl?
op=search&searchfield=OPACSearchForTitleIn
4. Add a link for "http://localhost:8081/cool.pl"
5. Note in the source code that the URL gets mangled

6. Apply the patch

7. Repeat the above test plan
8. Note that the URL has NOT been mangled and remains
http://localhost:8081/cool.pl

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 6a22ae84fb90125976eb0a574c3dde1516e8bdb2)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 51daa12f619a0505ad1af755d61f95775bac80db)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37965: Restore Bug 12032 - TinyMCE rewrites urls in a very annoying and unexpecte...
Lari Taskula [Thu, 19 Sep 2024 17:37:09 +0000 (17:37 +0000)]
Bug 37965: Restore Bug 12032 - TinyMCE rewrites urls in a very annoying and unexpected way

To test:
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=12032#c3

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 7b38dd9a0840a888212c3126257175b85faade1c)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 65eece267028eb49e9bf74640f68e666c987e0a7)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38234: Remove unused jszip.min.js file
Jonathan Druart [Wed, 23 Oct 2024 10:12:13 +0000 (12:12 +0200)]
Bug 38234: Remove unused jszip.min.js file

This specific file is not used since Bug 23013 ("Upgrade DataTables in the staff client")

This version is vulnerable and should not be used in the future anyway.

There is a version embedded in our DataTables bundle, which is jszip-3.10.1.

Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 6a006258701fb80cbdacdd3b5b8c8a4c5e7451cf)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit d288c5a047e126ae3f12364594acf58ae7922370)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38131: ILS-DI doc must show renewals_count
Fridolin Somers [Wed, 9 Oct 2024 12:35:11 +0000 (14:35 +0200)]
Bug 38131: ILS-DI doc must show renewals_count

Since Bug 30275 renamed issues.renewals to issues.renewals_count, the ILS-DI doc needs to be updated in :
koha-tmpl/opac-tmpl/bootstrap/en/modules/ilsdi.tt
Note that service 'RenewLoan' returns 'renewals' this has not changed.

Test plan :
1) Enable ILS-DI webservice
2) Go to opac : /cgi-bin/koha/ilsdi.pl
3) Click on 'GetRecords'
4) Check you see 'renewals_count' in 'Example response'
5) Click on 'GetPatronInfo'
6) Check you see 'renewals_count' in 'Example response'

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 37bd87c6feb9cc3c5659504c99cf606550640a50)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit cea77be3c64928b1287442f85bb8e3ac9c0334ec)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 34920: [23.11.x] Add cypress tests
Pedro Amorim [Thu, 29 Feb 2024 16:06:39 +0000 (16:06 +0000)]
Bug 34920: [23.11.x] Add cypress tests

Run the agreements cypress test spec:

cypress run --spec t/cypress/integration/ERM/Agreements_spec.ts

Signed-off-by: Laura Escamilla <laura.escamilla@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2 months agoBug 38274: (RMaint follow-up) Fix DBRev
Fridolin Somers [Mon, 16 Dec 2024 10:55:38 +0000 (11:55 +0100)]
Bug 38274: (RMaint follow-up) Fix DBRev

2 months agoBug 37184: Special character encoding problem when importing MARC file from the Acqui...
Hammat Wele [Mon, 26 Aug 2024 21:21:50 +0000 (21:21 +0000)]
Bug 37184: Special character encoding problem when importing MARC file from the Acquisitions module

1. Go to Cataloging > "Stage records for import".
2. Upload the file "ExportMemento2024061010532869Marc8.mrc" or a MARC8 encoded file.
3. In the form, select the options :
   - Record type: Bibliographic
   - Character encoding: MARC8
   - Format: MARC
4. Click "Stage for import".
5. Find or create an open basket in the Acquisitions module.
6. Click "add to basket".
7. Select "From a staged file" and select the previous staged file.
9. Click "Select all" to check all records.
10. In the item information tab, choose the Document type.
11. Verify the titles of the records in the basket:
 --> Koha replaces accents with symbols �

12. Apply the patch.
13. Do the same from step 1 and notice there is no more encoding issues.

Signed-off-by: Phil Ringnalda <phil@chetcolibrary.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit e8c8b68672af08b446d1b2d9f8fae76cac22f9ef)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 23adbf215df86ae82564c984d1ad84c15e5e5002)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38274: DBRev 24.05.05.005
Lucas Gass [Fri, 22 Nov 2024 21:32:57 +0000 (21:32 +0000)]
Bug 38274: DBRev 24.05.05.005

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 889c351d17921709910e19abe4448b1480890f23)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38274: Fix typo in arabic language description
Fridolin Somers [Fri, 25 Oct 2024 14:25:10 +0000 (16:25 +0200)]
Bug 38274: Fix typo in arabic language description

In installer/data/mysql/mandatory/subtag_registry.sql we see a missing
char in arabic language description.

Wee see this was correct before Bug 12250 :
&#1575;&#1604;&#1593;&#1585;&#1576;&#1610;&#1577;

Test plan :
1) Install a fresh Koha with this patch
2) Look in database :
   SELECT * FROM language_descriptions WHERE subtag='ar' AND type='language' AND lang='ar'
=> Check description is correct
3) On a old existing Koha
4) Install patch and run update database
=> Look in database and check description is correct

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 4e1dc5e8b79bcca755610ca9628bd9dc5ae8defd)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit ec9391506431dc5529019c05fa3c3531c9add52c)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38271: (QA follow-up) Fix testcritic
Matt Blenkinsop [Mon, 28 Oct 2024 09:35:04 +0000 (09:35 +0000)]
Bug 38271: (QA follow-up) Fix testcritic

testcritic was failing due to a 'return undef' so this commit amends that

Test plan:
1) prove t/00-testcritic.t

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 640ce0bc6bff99845d019500fa0a69db35545a2a)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 9bf772dd42e20c3c2f97bafd5a48e193c1308a2c)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38271: (QA follow-up) Tidy code
Kyle M Hall [Fri, 25 Oct 2024 13:06:11 +0000 (09:06 -0400)]
Bug 38271: (QA follow-up) Tidy code

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 0f68688b5810836dede3625c65f6a71e5520989b)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 5d0a0197569b6f8415de95ae88a6bc066564c5d4)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38271: Handle missing 008 fields in EDI
Matt Blenkinsop [Fri, 25 Oct 2024 11:19:24 +0000 (11:19 +0000)]
Bug 38271: Handle missing 008 fields in EDI

This patch adds handling to create a default 008 field on MARC records that are missing one when created through EDI.

Test plan:
1) prove t/db_dependent/Koha/EDI.t

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit b00fb3d55755220557127100ccd6d348792f0dfa)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 4eccb57f064f4e35cad429aa6d5d97e6d2322004)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38188: fix populating the borrowenumberlist from patron_search_selections
Johanna Räisä [Thu, 17 Oct 2024 06:15:32 +0000 (09:15 +0300)]
Bug 38188: fix populating the borrowenumberlist from patron_search_selections

This patch fixes the issue of populating the borrowernumberlist from patron_search_selections.
Adding borrowernumbers to the textarea randomly fails because the textarea is populated with the html() function.

To test:
1) Go to the patron search
2) Select a few patrons
3) Click on the "Batch patron modification" button
4) Use browsers back button to go back to the patron search
5) Find patron_batchmod_form from browser inspector, open it.
6) Check that between the <textarea> tags, there are the borrowernumbers of the selected patrons.
7) Apply the patch
8) Repeat steps 1-6
9) Check that <textarea> tags are not populated with the borrowernumbers of the selected patrons.
10) Remove the display:none from the textarea and check that the borrowernumbers are populated there.

Sponsored-by: Koha-Suomi Oy
Signed-off-by: Michelle Spinney <mspinney@clamsnet.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit f44a0adb5dc4ccdff4f5435dda1cce51b7a393a5)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 373099a690d1090159217fa0c7c2328591bdacd6)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38138: (bug 33398 follow-up) Don't display code for primary contact method
Jonathan Druart [Wed, 16 Oct 2024 08:28:47 +0000 (10:28 +0200)]
Bug 38138: (bug 33398 follow-up) Don't display code for primary contact method

We have several choices for "primary_contact_method", we don't want to
display the code but the label
phone => Primary phone
phonepro => Secondary phone
mobile => Other phone
email => Primary email
emailpro => Secondary email
fax => Fax

Bonus: it will make it translatable.

Test plan:
1. Edit a patron record to add a Main contact method
2. Place a hold for this patron
3. Check the item in
   --> Pop up says "Main contact method:" followed by the choice.

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 49e09672b53b024882cc0c363d39b399ef1859d9)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 4bd535936d16c28715eb15959bc720433d6f1cab)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37582: Add unit test
Kyle M Hall [Wed, 30 Oct 2024 11:53:35 +0000 (11:53 +0000)]
Bug 37582: Add unit test

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 4d1b0303ffdb58f3e4c59ea53cbd55ac3a74ae79)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 5c72e1f96f0d7ac473256f43a17bd1755f2904dc)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37582: Tidy write_msg
Kyle M Hall [Tue, 17 Sep 2024 18:52:22 +0000 (14:52 -0400)]
Bug 37582: Tidy write_msg

Signed-off-by: Brendan Lawlor <blawlor@clamsnet.org>
Signed-off-by: Kristi Krueger <kkrueger@cuyahogalibrary.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 768a5d197c5d020c5d30fc219272524add02f2ac)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 0845639a8f640edf6fdd0a5683242163c2149675)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37582: Add ability to for SIP to convert control and separator characters to...
Kyle M Hall [Tue, 17 Sep 2024 18:28:11 +0000 (18:28 +0000)]
Bug 37582: Add ability to for SIP to convert control and separator characters to spaces

This came up with a SIP vendor recently - when reading responses they were only getting part of a patron's information.
It seemed to have been caused by patrons with multiple restrictions and a new line in the response

This patch also does minor refactoring to write_msg to pass the server variable that contains
all the previously passed parameters, and removes the never used "file" parameter.

Test Plan:
1) Add multiple debarments to a patron
2) Run a sip patron information response, note the presence of newlines
3) Apply this patch
4) Add the new option convert_control_characters to your SIP account,
   set the value to " -- "
5) Restart all the things!
7) Run a sip patron information response, note the newlines have been replaced!

Signed-off-by: Brendan Lawlor <blawlor@clamsnet.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 6a20ac7f99dc636ca598163f6ca675e09d736339)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit d76b6a9b42e361e92ebef0e3b7fcaf503e7771df)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 36317: Koha::Biblio->host_items must use me.itemnumber
Fridolin Somers [Thu, 14 Mar 2024 10:24:54 +0000 (11:24 +0100)]
Bug 36317: Koha::Biblio->host_items must use me.itemnumber

Koha::Biblio->host_items fails with search_ordered() because of ambiguous column 'itemnumber' in where clause.
It must use me.itemnumber like in Koha::Biblio->items

Test plan :
prove t/db_dependent/Koha/Biblio.t

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Emmi Takkinen <emmi.takkinen@koha-suomi.fi>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit a9964bc8a9f89d8da00e5056ceb3f06cf551ce72)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 405ddad65ba6d0e22efb079a6542e47f8d6ed309)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 36317: Add unit test
Fridolin Somers [Mon, 18 Mar 2024 14:18:27 +0000 (15:18 +0100)]
Bug 36317: Add unit test

If fails it shows :
DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::mysql::st execute failed: Column 'itemnumber' in where clause is ambiguous at /kohadevbox/koha/Koha/Objects.pm line 399

Signed-off-by: Emmi Takkinen <emmi.takkinen@koha-suomi.fi>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit d193455ec20e75721179c80c9d00c6163d2aef24)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit a267e9a25db94fea8512203ffa9165ceeff665c8)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38249: Fix typo in koha-list --help
Tomas Cohen Arazi [Wed, 23 Oct 2024 21:01:08 +0000 (18:01 -0300)]
Bug 38249: Fix typo in koha-list --help

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Phil Ringnalda <phil@chetcolibrary.org>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 85239f0fbfd246938ab04d628990c819921d9ef2)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit ec284141689800d262ea2a24a5a1762ac9a8a48c)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38117: Only show 'not checked in' message if item is checked out
Nick Clemens [Tue, 8 Oct 2024 11:11:54 +0000 (11:11 +0000)]
Bug 38117: Only show 'not checked in' message if item is checked out

To test:
 1 - Enable system preference 'ShowAllCheckins'
 2 - Set system preference 'BlockReturnOfWithdrawnItems' to 'Block'
 3 - Check in an item
 4 - Note 'Item was not checked in message'
 5 - Confirm it happens for any item that is not currently issued
 6 - Check out an item to a patron
 7 - Mark the item as withdrawn
 8 - Check the item in
 9 - Note message 'Item was not checked in' appears too
10 - Apply patch
11 - Confirm checking in an item not checked out only shows 'Not checked out'
12 - Confirm the withdrawn item still shows 'Item was not checked in'
13 - Confirm above message remains whne checking in more items that were not issued

Signed-off-by: Michelle Spinney <mspinney@clamsnet.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 91ba4fcfd722196f66c730c781c62941ff9e86a8)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 5bb19beff8a88926e263660cbe175f7882f0b1bd)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 36171: Fix template toolkit tags split by HTML parser
Kevin Carnes [Mon, 12 Aug 2024 08:55:57 +0000 (10:55 +0200)]
Bug 36171: Fix template toolkit tags split by HTML parser

It appears that the template parser parses HTML tags first and then template
toolkit tags. This can cause a template toolkit tag that contains an HTML tag
to have its start and end markers separated. This causes it to be treated as
text that can be translated instead of a template toolkit tag.

This patch searches for text sections that have a template toolkit end marker
without a start and then searches for the start in previous sections. It then
creates a new template toolkit section with the start and end markers.

The action buttons in the staff Lists view have been changed to allow
translation.

To test:
1. You will need to edit the staff-prog.po for a language and modify the
   the translation for "SET line_break". You can change SET to FOO.
2. Install the translation for the language.
3. View the details of a patron in the staff interface with the language.
4. The page will have an error.
5. Apply the patch.
6. Install the translation for the language.
7. View the details of a patron in the staff interface with the language.
8. The page should now display correctly.

If you want to, you can run "gulp po:update --lang LANGUAGE-CODE" to make sure
that the template tag is no longer included in .po file.

You can also add translations for "Edit", "Delete", and "Transfer" in
messages.po to make sure that the action buttons are translated in the Lists
view.

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Amended-by: Jonathan Druart
Tidy

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit cf634fa014d72645c24e868a70cb55c63166e1d4)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 2d2e2bbb5aca8ccfcb6b7cc7fbd2ca34f6579377)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38237: Add POD
Nick Clemens [Wed, 23 Oct 2024 12:50:48 +0000 (12:50 +0000)]
Bug 38237: Add POD

This patch adds POD to the script and rpelaces the custom help script with pod2usage

TO test:
perl misc/cronjobs/erm_run_harvester.pl
Confirm you get helpful usage data

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 0ff61ab9d92dd0f276aed03b49a2b28483f38acb)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 6264f861a3270f6546580d4ea3abeac892ca0524)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38237: Add logging to erm_run_harvester cronjob
Nick Clemens [Wed, 23 Oct 2024 12:22:16 +0000 (12:22 +0000)]
Bug 38237: Add logging to erm_run_harvester cronjob

This patch simply adds logging to the cronjob

To test:
1 - Enable CronjobLog
    http://localhost:8081/cgi-bin/koha/admin/preferences.pl?op=search&searchfield=CronjobLog
2 - Enable ERMModule
    http://localhost:8081/cgi-bin/koha/admin/preferences.pl?op=search&searchfield=ERMModule
3 - Home -> E-resource Management -> Data providers -> New data provider
    Fill from registry or create your own, but change the URL and put in any required numbers
    We don't need a real test, just to run the ob
4 - perl misc/cronjobs/erm_run_harvester.pl --begin-date 2024-01-01 --dry-run --debug
5 - View the logs, no log of the script
6 - Apply patches
7 - Run the job again
8 - Check logs
9 - Success!

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 6ce5df7f8e6862edc5a19f80b52a2360ee07d6c7)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 3bdb9a96242fb6e3e5531c3c0624ca2afcf28ccd)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38177: Fix lengthMenu by removing extend
Jonathan Druart [Tue, 22 Oct 2024 08:52:46 +0000 (10:52 +0200)]
Bug 38177: Fix lengthMenu by removing extend

$.extend is doing a deep copy of the objects.

```
var dataTablesDefaults = { "lengthMenu": [[10, 20, 50, 100, -1], [10, 20, 50, 100, __('All')]] };
var mine = {lengthMenu: [[1, 2, 5, 10], [1, 2, 5, 10]]};
$.extend(true, {}, dataTablesDefaults, mine);
```
Returns:
```
[
  1,
  2,
  5,
  10,
  -1
]
```
Which is ugly and not what we want.

We only need to merge the first level. Using the spread operator (...) will do the trick here.

Note that we certainly want to adjust all the other occurrences of
extend for DT's options.

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit b1cd9cccd2918f954b6e675bf1b7bad853548372)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit c746a746742d40d589b6fce954a3e78fe11653ce)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38177: Fix lengthMenu for components using KohaTable
Pedro Amorim [Mon, 21 Oct 2024 15:09:44 +0000 (15:09 +0000)]
Bug 38177: Fix lengthMenu for components using KohaTable

EBSCO HoldingsIQ doesnt consider a "All" option so neither should we.
At the moment, if we pick 'All', only 100 are listed due to the logic in Providers/EBSCO/build_query_pagination.
The original code hints at trying to do this but its not working.
I think this got lost sometime during KohaTable.vue

This patch should also have the same entry for EHoldingsEBSCOTitlePackagesList but that isnt using KohaTable and for some reason its not picking up on either aLengthMenu or lengthMeny, always shows 'All'.

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit ca0e745c1d573522a19cf62fc38b2241b671c1dd)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit b2823543f5c35c4925e1ffae000eb098740c9280)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38177: Do not use stash to retrieve parameters
Jonathan Druart [Wed, 16 Oct 2024 08:11:24 +0000 (10:11 +0200)]
Bug 38177: Do not use stash to retrieve parameters

The pagination for EBSCO's titles, packages and resources is broken. We
shouldn't rely on $c->stash but use params from the request instead.

Test plan:
1) Setup all the system preferences in ERM:
<staff_url>/cgi-bin/koha/admin/preferences.pl?tab=erm
2) Enable EBSCO in ERMProviders. Set the ERMProviderEbscoApiKey and ERMProviderEbscoCustomerID prefs.
3) Do a search that returns more than 20 records. Click on a page other than 1. Notice the records do not change (Page is the same).
4) Apply patch. Repeat. Notice pagination now works.

Search titles, packages and resources
Use the pagination and modify the number of results per page

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 61b3aa2aa298b46835d729f77a6a44a0d0faaa05)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 8f96db1238c393e4510f49bad8300b92c767473e)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38173: Fix description of koha-dump --exclude-indexes
Magnus Enger [Tue, 15 Oct 2024 11:47:25 +0000 (13:47 +0200)]
Bug 38173: Fix description of koha-dump --exclude-indexes

To test:
- Look at debian/scripts/koha-dump
- The description of --exclude-indexes reads:
  "Include Zebra indexes on the backup"
- Apply the patch
- Look at the file again. The description is now:
  "Exclude Zebra indexes from the backup"

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Phil Ringnalda <phil@chetcolibrary.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 0c23b98782520794f1d56b72be6dc10180b08b9c)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 5c702246449dba57c5a383752e314cde02be9241)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37787: Remove mention of elastic_index from POD
Magnus Enger [Thu, 5 Sep 2024 06:38:44 +0000 (08:38 +0200)]
Bug 37787: Remove mention of elastic_index from POD

After the introduction of misc/workers/es_indexer_daemon.pl,
misc/workers/background_jobs_worker.pl should not handle the
elastic_index queue. But the latter script still mentions this
queue in the POD. This patch removes that mention.

To test:
- Run perldoc misc/workers/background_jobs_worker.pl
- Verify "elastic_index" is mentioned under --queue
- Apply this patch
- Run perldoc again and verify the mention of "elastic_index"
  is gone

Signed-off-by: Sukhmandeep Benipal <sukhmandeep.benipal@inLibro.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 476ae27df0608c54c63759158e6631a4a0879cb2)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 193f5676bf9dfc9b78fa256b26b608bf6d44021f)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37787: Undocument koha-worker --queue elastic_index
Magnus Enger [Fri, 30 Aug 2024 08:00:25 +0000 (10:00 +0200)]
Bug 37787: Undocument koha-worker --queue elastic_index

To test:
- Copy the koha-worker script to the standard location:
  $ sudo cp debian/scripts/koha-worker /usr/sbin/koha-worker
- Check "sudo koha-worker --help" and verify elastic_index is
  not mentioned in the list of "current queues"
- See https://wiki.koha-community.org/wiki/Testing_man_pages for
  how to check the "man" page. elastic_index should not be
  mentioned in the list of "Current queues".
- Both places aboce should have a note about elastic_index not
  being active when koha-es-indexer is running.

Signed-off-by: Sukhmandeep Benipal <sukhmandeep.benipal@inLibro.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit dba23e4da1996340eb833ec41f865585c3104e7c)
(cherry picked from commit 30dc2f94f69fb9c1d6138b0705a6ba315ec128d4)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 35769: Remove extra parenthesis
Jonathan Druart [Wed, 24 Jan 2024 15:20:50 +0000 (16:20 +0100)]
Bug 35769: Remove extra parenthesis

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 07cf21e6b915d34d64dc96995f6df8fce50c6798)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 589cc320faf66a3a48440be3770d3586f93816a4)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 35769: Fix untranslatable strings in request.tt
Katrin Fischer [Fri, 12 Jan 2024 22:52:42 +0000 (22:52 +0000)]
Bug 35769: Fix untranslatable strings in request.tt

This fixes some strings in the JavaScript part of the
template that were missing from the po files.

This is one way to test:
* Apply patch
* Run gulp po:update --lang <language-code>
* Compare strings changed in the patch, with strings
  appearing in <language-code>-staff-prog.po
* Translate the strings and remove "fuzzy" line
* In k-t-d, run:
  sudo koha-translate --install <language-code> --dev <instance>
* Verify that now the translated version of the template contains
  your translated strings
* Verify the translated page works correctly, no errors

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 928b6060830d18f9a6b20510e991ac486836b687)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit b40117a31b244c029bcd3fe2c37cd8a7ff76ee27)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 18273: Do not insert authority if there already are duplicates in koha
Matthias Meusburger [Wed, 15 Mar 2017 16:10:45 +0000 (16:10 +0000)]
Bug 18273: Do not insert authority if there already are duplicates in koha

Test plan:

1) Create an authority with a unique value in a searchable field, for instance a PERSO_NAME authority with 'BZ18273' in the 100$a field.

2) Create a second authority with the same value in the same field.

3) Export this second authority as iso2709 (Save -> MARC (Unicode/UTF-8))

4) Run bulkmarcimport.pl with the following parameters:
perl bulkmarcimport.pl -a --file=/kohadevbox/koha/auth-xxxx.utf8 --match='Heading,100$a' -l /kohadevbox/koha/bulk.log

5) Check in the log file and/or through search that a third authority has been added (despite using the --match option)

6) Apply the patch

7) Delete the 3 authorities and repeat step 1 to 4.

8) Check that a third authority has not been added (--match worked)

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 2e2fba91bfbaab3bd60870059c7dd5bc75f8bb57)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 0acc0dffb1503036615a5621b9ecedd01d7365f5)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37505: (QA follow-up) Adjust tests
Emily Lamancusa [Mon, 21 Oct 2024 13:32:11 +0000 (09:32 -0400)]
Bug 37505: (QA follow-up) Adjust tests

Signed-off-by: Emily Lamancusa <emily.lamancusa@montgomerycountymd.gov>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit c4ac5eb8e8793d865cc1367a58e4a3d78de78bc4)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 3060f2613175e24a4ba63fc8e0f8a0f354d1dda0)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37505: (QA follow-up) Don't log return stat if ignore_localuse and no checkout
Emily Lamancusa [Mon, 21 Oct 2024 12:52:21 +0000 (08:52 -0400)]
Bug 37505: (QA follow-up) Don't log return stat if ignore_localuse and no checkout

Signed-off-by: Emily Lamancusa <emily.lamancusa@montgomerycountymd.gov>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 42ba50e1eb8c5fc9572514d9bbc32689a3302c6f)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 5166fb9d3cef597da9468533b1562ca83db9ea55)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37505: Remove onloan check when checking out to stats patron
Lucas Gass [Thu, 29 Aug 2024 21:54:57 +0000 (21:54 +0000)]
Bug 37505: Remove onloan check when checking out to stats patron

To test:
1.  Create a Statistical Patron
2.  Set BlockReturnOfLostItems to Block.
3..  Mark an item as lost
4. Check it out to the Statistical Patron. You should see the message "Item was lost, cannot be returned."

5. Set BlockReturnOfWithdrawnItems to Block.
6.  Mark an item as withdrawn
7. Check it out to the Statistical Patron. You should see the message "Item was withdrawn, cannot be returned."
8. Turn off BlockReturnOfWithdrawnItems, check out the same item to the Statistical Patron. You should see a message "Item was withdrawn."

9. Place an item on hold.
10. Check it out to the Statistical Patron
11. See the message "Item on hold, please checkin."

12. Make sure  ClaimReturnedLostValue is set to a lost value
13. Claim a return, making sure it is not still checked out to the patron
14. Checkit it out to the Statistical Patron.
15. See the message "Item claimed returned, please checkin."

16. Have an item on a regular patron account that has been recalled.
17. Checkit it out to the Statistical Patron.
18. See the message "Item can fill a recall, please checkin."

Signed-off-by: Kelly <kelly@bywatersolutions.com>
Signed-off-by: Emily Lamancusa <emily.lamancusa@montgomerycountymd.gov>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 5ee142c7f7b4c7a1071cfd92a410aa11b59d2bee)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 6bd354f74ddfbbf310666776ce7207f5a7cb67b8)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37836: Prevent submitting empty barcodes in Self check-in
Bo Gustavsson [Wed, 4 Sep 2024 19:49:47 +0000 (21:49 +0200)]
Bug 37836: Prevent submitting empty barcodes in Self check-in

This patch disbles the "Submit" button when the barcode field is empty.

To test this patch:

Add the patch to your koha clone
Enable the "SelfCheckInModule".
Open the page and the "Submit" button should be disabled when the barcode field is empty.

Signed-off-by: Sam Sowanick <sam.sowanick@corvallisoregon.gov>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 07d212c02413263696bcd7b3e3468d0879b26a74)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 26cbf2492d1d7d5d991b34e8dcb113ca68b0c717)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37606: Fix framework export module to escape double quotes
Baptiste Wojtkowski [Fri, 9 Aug 2024 14:33:37 +0000 (16:33 +0200)]
Bug 37606: Fix framework export module to escape double quotes

When exporting a framework as csv, the exporter does not check the presence of double quote in the fields. Hence, if there is one double quote, the csv is broken.

TEST PLAN:
1 - Change a framework to add a field containing double quote in name
2 - Export it in csv
3 - Create a new framework
4 - Import the csv in the new framework -> every fields after the one
containing double quotes should be broke. Every other fields should have
no subfield
5 - APPLY PATCH
6 - Repeat 2-5 -> everything should be correctly exported

Signed-off-by: Sukhmandeep Benipal <sukhmandeep.benipal@inLibro.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 5f45818cf795d5456b0498269b33ed7d09e59dd7)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 9cc99b3eaf2e6ae993c6fe38b361d70be9231f05)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37403: Wrong progress quantity in job details
Hinemoea Viault [Wed, 24 Jul 2024 16:35:28 +0000 (12:35 -0400)]
Bug 37403: Wrong progress quantity in job details

In fact the system adds a previous value to the progress. As if the system keeps a previous value and adds the correct count of records in addition.
This patch removes the previously stored value.

To test:
1. Go to Cataloging > Stage records for import
2. Choose a file with bibliographic records and click Upload file
3. In "Look for existing records in catalog?" choose a record matching rule (e.g. ISBN)
4. Click Stage for import
5. Click View detail of the enqueued job
   --> Progress show 2/1
6. Apply the patch
7. Repeat steps 1 to 4
8. Click View detail of the enqueued job
   --> Progress show 1/1

Signed-off-by: Roman Dolny <roman.dolny@jezuici.pl>
qa script:
Commit title does not start with 'Bug XXXXX: ' - d1bebb34d7

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Fixed patch subject line
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 929e906187eca4454604d6082da5d8abb8a5a8b5)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit b99b51deef834023089609eed069e1bed9653df4)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37304: Fix created by filter in Acquisitions advanced search
Brendan Lawlor [Mon, 22 Jul 2024 20:07:18 +0000 (20:07 +0000)]
Bug 37304: Fix created by filter in Acquisitions advanced search

This patch updates the field for the created by filter from
ui.item.borrowernumber to ui.item.patron_id

Test plan:
1. Add a vendor and a basket
2. Use advanced order search to search for created by 'koha'
3. Use the autofill dropdown to make the selection and click 'Search'
4. Your search returned no results.
5. Apply patch and repeat steps 2 and 3
6. Confirm the search returns the basket you created earlier

Signed-off-by: Roman Dolny <roman.dolny@jezuici.pl>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit c18f368411a1525f401739bc0e586ce8e0f7929b)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit d59cc9176cca170780ffa031a1addef2df4942cf)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38005: (follow-up) Add/adjust tests
Lucas Gass [Fri, 11 Oct 2024 19:12:18 +0000 (19:12 +0000)]
Bug 38005: (follow-up) Add/adjust tests

NC amended patch, tidied
Bug 38005: (QA follow-up) Tidy

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 0f3d1f3daf9521984e44cf430a01a928659f462a)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 029635023980628089e7f9fb2c026174e3884b96)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38005: Pass opac_editable to search params when interface is OPAC
Lucas Gass [Wed, 25 Sep 2024 21:17:22 +0000 (21:17 +0000)]
Bug 38005: Pass opac_editable to search params when interface is OPAC

1. Create a patron attribute.
2. Check it as Mandatory.
3. Do NOT make it display or editable in the OPAC.
4. Go to OPAC self reg form
5. You will not see the attribute.
6. Submit the form and see the 500 error.
7. Apply patch, restart_all.
8. Try again, now you should be able to submit the OPAC form.

Signed-off-by: Roman Dolny <roman.dolny@jezuici.pl>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit fbdd43a6a148366402930d259a684d2de680728a)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit e198c2afde084be361af8917cb8e8a78176fc3eb)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38097: Add class to not_retuned message
Andrew Fuerste Henry [Fri, 4 Oct 2024 16:31:52 +0000 (16:31 +0000)]
Bug 38097: Add class to not_retuned message

To test:
1: Enable ShowAllCheckins
2: Check in an item that was not checked out
3: Find "Item was not checked in" message in checkin table, confirm its only class is "problem"
4: apply patch, restart_all
5: repeat 2
6: confirm "Item was not checked in" now has the class "not_returned"

Signed-off-by: Eric Phetteplace <phette23@gmail.com>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 01ebb27b5ea598408bb5584124ad9ad77320db9b)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 718ecb53288b99cf37e9ef873703b9061f768c7b)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37954: DBRev 23.11.10.002
Lucas Gass [Mon, 18 Nov 2024 23:15:46 +0000 (23:15 +0000)]
Bug 37954: DBRev 23.11.10.002

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit be96ec063f2bf887e18c365a2a579e7c7b333061)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37954: Atomic update
Nick Clemens [Thu, 19 Sep 2024 11:40:24 +0000 (11:40 +0000)]
Bug 37954: Atomic update

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 4355f54f5ca00de9a32bd5c6c1c036657ca7a926)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit a58c132a1646453d68281b15ce0ff0f525a488a3)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37954: Fix barcode column name
Pedro Amorim [Wed, 18 Sep 2024 10:22:51 +0000 (10:22 +0000)]
Bug 37954: Fix barcode column name

Patch https://github.com/Koha-Community/Koha/commit/6cbbfa2 changed
holdings_barcode to holdings_barcodes

I believe this caused the configuration from the table to no longer
work (barcodes!=barcode)

Test plan:
1) Access any bibllio:
   <staff_url>/cgi-bin/koha/catalogue/detail.pl?biblionumber=76
2) On the top right of the table, click 'Configure'
3) Expand 'Catalog', search for 'holdings_barcode'. Tick 'is hidden by
   default'. Save.
4) Visit the biblio again, notice the column is still showing.
5) Apply patch. Restart all + flush_memcached. Repeat.
6) Bonus: On the table, click 'Show filters'. Make sure barcode
   filtering still works.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit e89dc927df4d4cf7706a73ef054b95d7796fe89a)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 7712993222a6e1a5df8911acfc4dd9ec79838892)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38109: Sort patron category types before display
Nick Clemens [Mon, 7 Oct 2024 19:58:17 +0000 (19:58 +0000)]
Bug 38109: Sort patron category types before display

To test
1 - Patrons -> New patron -> {any category}
2 - Find the category dropdown
3 - Note the order of categories types
4 - Reload the page
5 - Note a new order
6 - Apply patch
7 - Refresh page, category types now ordered (by code)
8 - Refresh again, no change!

Signed-off-by: Roman Dolny <roman.dolny@jezuici.pl>
Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 3b438c2b891bb16e53f752e64799545546559750)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit d3db300f3d58ab62a42a50a402707e47a4ef3f96)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38027: (QA follow-up) Fix flatpickr onChange when input is cleared
Julian Maurice [Fri, 4 Oct 2024 14:03:32 +0000 (16:03 +0200)]
Bug 38027: (QA follow-up) Fix flatpickr onChange when input is cleared

With the onChange event handler fixed, it's ok to call clear() instead
of setDate('')

Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit b892af285b8b7ea58b88b91c671631ece1295c01)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit eb39ce87ca47e93ead2133cea667b2f9e9072f99)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38027: Set date to empty value instead of using flatpickr clear()
Lucas Gass [Fri, 27 Sep 2024 21:17:49 +0000 (21:17 +0000)]
Bug 38027: Set date to empty value instead of using flatpickr clear()

1. Find a datetime field in Koha. For example, specifying due dates on the checkout page.
2. Specify a datetime.
3. Use the red 'X' icon to clear the date.
4. Notice a console error 'parsedDate' is undef
5. Now the flatpickr is date, not datetime
6. APPLY patch
7. Try again, this time no console error and the flatpickr remains a datetime one

Signed-off-by: Phil Ringnalda <phil@chetcolibrary.org>
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 4d4337bbedff193da163ef8765330797c43712a2)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 11e025e40a736fd61ca238ca414995fdf62a809a)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37709: Die and notify if file cannot be opened
Nick Clemens [Thu, 22 Aug 2024 11:35:45 +0000 (11:35 +0000)]
Bug 37709: Die and notify if file cannot be opened

1 - perl misc/migration_tools/bulkmarcimport.pl -b --file=notafile.mrc -v
2 - Output:
    Characteristic MARC flavour: MARC21

    0 MARC records done in 0.00804400444030762 seconds
3 - Apply patch
4 - perl misc/migration_tools/bulkmarcimport.pl -b --file=notafile.mrc -v
5 - Output:
    Characteristic MARC flavour: MARC21
    Could not open notafile.mrc: No such file or directory at misc/migration_tools/bulkmarcimport.pl line 262.

Signed-off-by: Roman Dolny <roman.dolny@jezuici.pl>
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 0546217cdca92f1e02432c38194a9a8e5dab55ba)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit c41dacb551610b98a1bdec6641046e22a541aa3e)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 36375: Fix inconsistencies in content warning display
Martin Renvoize [Tue, 1 Oct 2024 12:33:57 +0000 (13:33 +0100)]
Bug 36375: Fix inconsistencies in content warning display

As suggested by Fridolin, we move the display into a template to improve
consistency and maintanence and whilst doing this we also pick the
suggested subfield selection.

Signed-off-by: Hannah Prince <hannah.prince@uhb.nhs.uk>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit e086d2f81da8416bb177a60d4f2a5c3ad07bc939)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 26e3f782259c86caf56421637a4b4a07a223f13f)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38035: Exclude "sound" from the list of installed languages
Jonathan Druart [Mon, 30 Sep 2024 14:46:38 +0000 (16:46 +0200)]
Bug 38035: Exclude "sound" from the list of installed languages

Not sure how this is coming from, neither why we have not noticed that
before, but "sound" is listed under `koha-translate --list`

It's coming from `ls koha-tmpl/intranet-tmpl/prog`

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit e8170909f4ab3b216be815c04711529f36868913)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 671a8b453458a6d487716861a196da640c324e3d)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 38000: Update imports
Pedro Amorim [Tue, 24 Sep 2024 14:25:11 +0000 (14:25 +0000)]
Bug 38000: Update imports

Noticed this while debugging a search related problem on a live server. This is cosmetic only.

Signed-off-by: Shi Yao Wang <shi-yao.wang@inlibro.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit d6fbbf98841b5f124f21f010efa06773ee151f72)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit cae46299c640d3becde7f5148a6b8d825a52180d)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37848: Fix "Run with template" dropdown menu style
Owen Leonard [Fri, 6 Sep 2024 11:42:09 +0000 (11:42 +0000)]
Bug 37848: Fix "Run with template" dropdown menu style

This patch adds the missing "dropdown-item" class to the "Run with
template" dropdown menu markup in order to correct the menu's style.

The patch also adds a template ID to the menu items' id attributes so
that we don't have duplicate IDs.

To test, apply the patch and go to Tools -> Notices.

(testing steps copied from Bug 36157)

1. Create a notice with the module of "Reports" -- add something to the
   "Print" section. Example from the other bug:

    [% FOREACH b IN data %]
      <div class="panel panel-default">
         <div class="panel-heading">[% b.surname %], [% b.firstname %]</div>
         <div class="panel-body">Expiration: [% b.dateexpiry %]</div>
         <div class="panel-footer">ID: [% b.borrowernumber %]</div>
      </div>
    [% END %]

2. Create and run a saved report. Example from bug 36157:

    SELECT * FROM borrowers

3. Click on the "Run with template" dropdown and confirm that it is
   styled correctly.
4. Click to run the report with the template and confirm that it works
   correctly.

Sponsored-by: Athens County Public Libraries
Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit d9be17863ab83648e4f2838d162ed7274a5f4032)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit c538d2bae6a5adef2c616613754cd3db1a462aad)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37730: Batch patron modification header scroll
Chloe Zermatten [Mon, 30 Sep 2024 15:03:23 +0000 (15:03 +0000)]
Bug 37730: Batch patron modification header scroll

When scroling down <staff_url>/cgi-bin/koha/tools/modborrowers.pl,
there is a point where the table header leaves the normal flow of
the page to stick to the top of the screen instead. When this
occurs, the header becomes fixed: if scrolling through the table
horizontally, only the body will move. This is an issue as it means
that in this situation, some column headers cannot be viewed and the
data does not necessarily match the header under which it is found.

This patch resolves this issue by allowing the header to scroll
horizontally and ensuring that the width of the column headers
still match that of the columns themselves.

Test plan:

A) Reproduce the bug as per Pedro's intructions:

***
1) Visit "batch patron modification":
<staff_url>/cgi-bin/koha/tools/modborrowers.pl
2) Enter multiple cardnumbers, in k-t-d you may use these:
23529000104159
23529000120056
23529000714163
23529000651225
23529000445172
23529000105040
23529000224510
23529000591678
3) Press "Continue"
4) Scroll down the page enough that the table headers row becomes
   "detached"
   and sticks to the top of the page as you scroll down.
5) Scroll the table horizontally. Notice the headers are stuck even
   though
   the data columns have moved horizontally, causing the headers and
data to
   not match.
***

B) Apply the patch
C) Go through steps 1-5 again. This time, notice that the header scrolls
   along with the table body and that the column headers and data always
match.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 569366e44734c983b214dd2c3c6e870f4e07dbeb)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 4bb06ac1cb5abec9164d53c0314bf43fd2799a73)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37265: Consideration of UniqueItemFields setting when receiving items in an order
Michał Dudzik [Mon, 8 Jul 2024 15:23:45 +0000 (17:23 +0200)]
Bug 37265: Consideration of UniqueItemFields setting when receiving items in an order

When using the Koha acquisition module to receive items (basket receiving
an order), Koha does not consideration of UniqueItemFields setting.
The problem is that you can accidentally attach 3 items to an order with the same values.

Test plan:
1. Set preference UniqueItemFields: Public note (itemnotes)
2. Go to the acquisition module.
3. Create a basket with the option for 'Create items when:' set to receiving an order.
4. Add an order to the basket, for example: From a new (empty) record with the Quantity set to 3 or more.
5. Close the basket.
6. Receive the order.
7. Add a public note: TEST, and receive the first item (Add item).
8. You will see that the next item has the same public note.
9. Apply this patch and repeat step 7 - the public note is not used for the next note.

Sponsored-by: kohawbibliotece.pl
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 1b923e946ae9384945967b4f89ea595570f84a90)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit bb130a573b09e4560c9334ac9128a232c5cb4f5f)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 35087: (follow-up) Accept only values which will be saved correctly
Owen Leonard [Wed, 31 Jan 2024 16:47:34 +0000 (16:47 +0000)]
Bug 35087: (follow-up) Accept only values which will be saved correctly

This patch adds a regex (thanks to Katrin for the help) specific to the
range of values which will be accepted by the discount column in the
database which has the type "float(6,4)".

The patch also removes the format() filter from the template so that
values returned from the database won't be truncated:

Using "format ('%.1f')", a value in the db of '9.009' would appear in
the edit form as '9.0', a change which could be missed if the user was
editing some other field in the vendor edit form.

To test, apply the patch and clear your browser cache if necessary.

- Go to Acquisitions -> Vendors -> Edit vendor.
- Under "Ordering information," test entering various values in the
  "Discount" field. It should accept numbers with up to two digits
   before the decimal and up to three digits after the decimal:

   9, 99, -99, 99.9, 0.99, 99.99, 99.999

- In each of these cases, confirm that a value accepted by the
  client-side validation is also accepted when you submit the form and
  is correctly displayed when you edit that vendor again.

- It should not accept:

   100, 100.001, 100.00001

- The error message has been updated to read, "Please enter a decimal
  number in the format: 0.0"

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Sonia <sonia.bouis@univ-lyon3.fr>
Signed-off-by: Olivier V <olivier.vezina@inLibro.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 584c02283e655306250364d0453a911067aebaf2)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit fdebb794437c6bfdd44cf8cbc269e6fced1652cc)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 35087: Discount rate only accepts a point as decimal separator
Thibaud Guillot [Thu, 18 Jan 2024 08:28:29 +0000 (09:28 +0100)]
Bug 35087: Discount rate only accepts a point as decimal separator

When a comma is used to define the discount rate of a vendor,
the data is not recorded (as NULL), it is however recorded if the
separator is a point.

Test plan:

1) Go to acqui module and edit a vendor
2) Set a discount rate with a comma as decimal separator
3) Edit again or request your database to see that there is no data
   saved
4) Do it again with a point as decimal and see it works
5) Apply this patch and reloard the build for the templates
 6) Repeat step 2 and see the warning to inform you that you must use a
    point

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Sonia <sonia.bouis@univ-lyon3.fr>
Signed-off-by: Olivier V <olivier.vezina@inLibro.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit ebc2568109b8b49888917145f9cafaecd7b35218)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 1625835375d67f7ce71d5fe2eeb35a30fc13cfb1)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37983: Restore auto-focus on patron input when "Schedule a pickup" is selected
Jonathan Druart [Mon, 23 Sep 2024 10:07:20 +0000 (12:07 +0200)]
Bug 37983: Restore auto-focus on patron input when "Schedule a pickup" is selected

In the curbside pickup module, when the "Schedule a pickup" tab is selected we expect
the patron search box to get the focus. But it has been broken bug 30965 (which changed the id of the input).

Test plan:
Setup curbside pickup for your library
Go to Circulation > Curbside pickups
Click the last tab
Notice that you can directly search for a patron, the input has the
focus

Signed-off-by: Phil Ringnalda <phil@chetcolibrary.org>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 83f542de19eebc4fbc2716cca99ffdcea67c20bd)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 7449473418b7ac633f7234526ddc863e8307fb89)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 37871: Remove extraneous 246 subfields from the title mappings (Elasticsearch...
Caroline Cyr La Rose [Fri, 13 Sep 2024 16:33:22 +0000 (12:33 -0400)]
Bug 37871: Remove extraneous 246 subfields from the title mappings (Elasticsearch, MARC21)

This patch limits indexing of field 246 to $a, $b, $n, and $p in
various title indexes.
Previously, all 246 subfields were indexed, including non-title
subfields such as $i (Display text), $g (Miscellaneous information),
and linking subfields, making the title index very large and giving
false results.

To test:

1. Add all the 246 subfields to the default bibliographic framework
   1.1. Go to Administration > MARC bibliographic framework
   1.2. Click Actions > MARC structure next to the Default framework
   1.3. Search for 246
   1.4. Click Actions > Edit subfields
   1.5. For each subfield, make sure Editor is checked
   1.6. Click Save changes

2. Create a new record and fill out all the 246 subfields
   2.1. Go to Cataloging
   2.2. Click New record
   2.3. Fill out the mandatory fields (000, 003, 005, 008, 040$c,
        245$a, 942$c)
   2.4. Fill out all the subfields in 246 (I simply write the name of
        the subfield in the text field e.g. Display text in 246$i)
   2.5. Click Save
   2.6. Click Normal to access the detailed record

3. View the Elastic search record
   --> All the subfields (including "Display text", "Miscellaneous
       information" and other non-title subfields) should be indexed in
       - title
       - title__suggestion
       - title-abbreviated
       - title-abbreviated__sort
       - title expanded
       - title-expanded__sort
       - title-former
       - title-former__sort

4. Make a title or keyword search for "Display" (or whatever you wrote
   in 246$i)
   --> Your record should be in the results

5. Apply patch

6. Rebuild the index using -r

koha-elasticsearch --rebuild -d -r -v kohadev

7. Redo step 3
   --> Only 246 $a, $b, $n, and $p should be indexed

8. Redo step 4
   --> Your record should NOT be in the results

Signed-off-by: Phil Ringnalda <phil@chetcolibrary.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 118c73b219ab93f3a88a06c97c46b2fb883a5a31)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 6ca863053840ce9060fcde33af89f4f8b86c2a5c)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2 months agoBug 36049: Fix price rounding
Raphael Straub [Thu, 8 Feb 2024 14:17:56 +0000 (14:17 +0000)]
Bug 36049: Fix price rounding

This patch only fixes price rounding by using Math::BigFloat.

To test:
0) Enable syspref OrderPriceRounding
1) Create an order line in acquisitions with vendor price 18.90 and a
   discount of 5 %.
2) Verify that the total (tax excl.) in the order table on the basket
   page is 17.95.
3) Apply the patch.
4) Reload the basket page.
5) Verify that the total (tax excl.) in the order table on the basket
   page now is 17.96, which is correct.
6) Run: prove t/Number/Price.t

Sponsored-by: Karlsruhe Institute of Technology (KIT)
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 56091d9660f215a894ff374b1e61e264ea471b52)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit a322d170edcea53eb008c4aae8cf110f6e715714)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>