]> git.koha-community.org Git - koha.git/log
koha.git
10 months agoBug 35463: More preservation manual links
Caroline Cyr La Rose [Tue, 5 Dec 2023 14:51:48 +0000 (09:51 -0500)]
Bug 35463: More preservation manual links

This patch adds some missing links from the preservation module to the manual.

To test:
1. Go to Preservation > Trains
2. Click on a train name
   --> You are brought to the Show train section of the Preservation chapter of the manual
3. Click Edit next to an item
   --> You are brought to the Add items section of the Preservation chapter of the manual (there is no section specific to editing items, but the form to edit is the same as the form to add)
4. Go back to the trains list, and click the Edit button next to one of the trains
   --> You are brought to the Trains section of the Preservation chapter of the manual (there is no section specific to editing trains yet)

Signed-off-by: Philip Orr <philip.orr@lmscloud.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35463: perltidy formatting corrections
Caroline Cyr La Rose [Mon, 4 Dec 2023 22:37:39 +0000 (17:37 -0500)]
Bug 35463: perltidy formatting corrections

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Philip Orr <philip.orr@lmscloud.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35463: Open erm and preservation help in new tab
Caroline Cyr La Rose [Mon, 4 Dec 2023 22:24:14 +0000 (17:24 -0500)]
Bug 35463: Open erm and preservation help in new tab

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Philip Orr <philip.orr@lmscloud.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35463: Link preservation module help to the manual
Caroline Cyr La Rose [Fri, 1 Dec 2023 15:36:52 +0000 (10:36 -0500)]
Bug 35463: Link preservation module help to the manual

This patch links the various pages of the preservation module to each
specific section of the preservation module chapter in the manual.

To test:
1.  Enable the PreservationModule system preference
2.  Go to the Preservation module
3.  Click "help" in the top right corner
    --> You are brought to the manual, but not a specific page
4.  Apply patch
5.  Click "Help" in the top right corner
    --> You are brought to the Preservation chapter of the manual
6.  Click "Settings"
7.  Click "Help" in the top right corner
    --> You are brought to the Settings section of the Preservation chapter of the manual
8.  Choose a not for loan status for items added to the waiting list (the mandatory field) and submit
9.  Click "Add a new processing"
10. Click "Help" in the top right corner
    --> You are brought to the Add a new processing section of the Preservation chapter of the manual
11. Fill out the form to create the processing and submit
12. Click "Edit this processing"
13. Click "Help" in the top right corner
    --> You are brought to the Add a new processing section of the Preservation chapter of the manual (there is no edit a processing section)
14.  Click "Waiting list"
15. Click "Help" in the top right corner
    --> You are brought to the Waiting list section of the Preservation chapter of the manual
16. Add items to the waiting list
17. Click "Trains"
18. Click "Help" in the top right corner
    --> You are brought to the Trains section of the Preservation chapter of the manual
19. Click "New train"
20. Click "Help" in the top right corner
    --> You are brought to the New train section of the Preservation chapter of the manual
21. Fill out the form to create a new train and submit
22. Click "Add items"
23. Click "Help" in the top right corner
    --> You are brought to the Add items section of the Preservation chapter of the manual

24. Also check ERM help links to make sure nothing is broken

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Philip Orr <philip.orr@lmscloud.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 34644: (follow-up) Additional edits to description
David Nind [Wed, 30 Aug 2023 00:15:26 +0000 (00:15 +0000)]
Bug 34644: (follow-up) Additional edits to description

Linked system preference in description to cross reference, and
and removed the spaces in the bracketed text.

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>
10 months agoBug 34644: replacementprice is support by MarcFieldsToOrder but is not listed
Kyle M Hall [Tue, 29 Aug 2023 18:20:19 +0000 (14:20 -0400)]
Bug 34644: replacementprice is support by MarcFieldsToOrder but is not listed

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>
10 months agoBug 34644: Improve readability of sysprefs
Kyle M Hall [Tue, 29 Aug 2023 17:53:16 +0000 (13:53 -0400)]
Bug 34644: Improve readability of sysprefs

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>
10 months agoBug 34644: Add clarifying text to sysprefs to indicate that MarcFieldsToOrder is...
Kyle M Hall [Tue, 29 Aug 2023 17:48:30 +0000 (17:48 +0000)]
Bug 34644: Add clarifying text to sysprefs to indicate that MarcFieldsToOrder is a fallback to MarcItemFieldsToOrder

Clarify that fields will fall back to MarcFieldsToOrder from MarcItemFieldsToOrder.

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>
10 months agoBug 35417: Update breadcrumbs and page titles for vendor issues
Owen Leonard [Tue, 28 Nov 2023 15:03:07 +0000 (15:03 +0000)]
Bug 35417: Update breadcrumbs and page titles for vendor issues

This patch updates the vendor issues template so that title and
breadcrumbs follow the same pattern on other updated templates:
Translatable strings in the title and breadcrumbs using the template
WRAPPER.

To test, apply the patch and go to Acquisitions.

- Search for a vendor and view the details.
- Click the "Isssues" link in the sidebar.
- Check that the page title and breadcrumbs are correct in each
  variation of the page:
  - The main page
  - New vendor issue
  - Modify vendor issue
  - Issue deletion confirmation

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>
10 months agoBug 35600: Prevent checkouts table to flicker
Jonathan Druart [Tue, 19 Dec 2023 10:45:59 +0000 (11:45 +0100)]
Bug 35600: Prevent checkouts table to flicker

The checkouts table is displayed in the DOM then hidden in JS, then we show it if the cookie is set.

This patch makes the table hidden by default, and show it if/when needed

Test plan:
Check an item out, see the checkouts list view
Play with "Always show checkouts automatically", refresh the page
=> UI should behave better than before this patch

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35592: Fix closing tag in bookings alert
Nick Clemens [Mon, 18 Dec 2023 16:22:08 +0000 (16:22 +0000)]
Bug 35592: Fix closing tag in bookings alert

To test:
1 - View a record details page for a record with items
2 - Click on the 'Items' tab
3 - Change 'Bookable' to 'Yes' and update for an item
4 - View the details page - place a booking
5 - Checkout the item to the patron it is booked for
6 - Note the alert shows, but encompasses the whole page
7 - Apply patch
8 - Check in the item
9 - Checkout the item again
10 - Note the alert shows above the checkouts page as expected

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>
10 months agoBug 35491: Add logging to RevertWaitingStatus
Nick Clemens [Tue, 5 Dec 2023 16:27:44 +0000 (16:27 +0000)]
Bug 35491: Add logging to RevertWaitingStatus

This patch simply adds a logaction line to RevertWaitingStatus

To test:
1 - Enable HoldsLog
2 - Place a hold
3 - Fill the hold
4 - Revert the waiting status
5 - Note there is no action log added
6 - Apply patch
7 - Repeat 2-4
8 - Confirm you now have a MODIFY action logged for the reversion

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 33847: Database update replaces undefined rules with defaults rather than the...
Kyle M Hall [Fri, 26 May 2023 15:42:08 +0000 (15:42 +0000)]
Bug 33847: Database update replaces undefined rules with defaults rather than the value that would be used

Bug 29012 introduces a database update that sets the default values for rules that are required but undefined. This functionally changes the results of the circulation rules.

Instead, this update should find value that is being used for that rule combo and use that as the rule value, only using the default in the case that the derived rule doesn't exist or has a null value.

Test Plan:
1) Check out Koha 22.05.05
2) Create a default all/all/all rule, 3 other rules. Ensure they all have Loan period set to 7, with one of the non-default rules having a Loan period of 14.
3) Delete all but one of the non-default rules with the following query:
   Delete from circulation_rules where rule_name  = 'issuelength' and ( rule_value != 14 and not ( branchcode is null and categorycode is null and itemtype is null ) ) limit 2;
4) Check out 254f721320
5) Run updatedatabase.pl and restart
6) Note the rules were recreated with the value 0
7) Repeat steps 1-4
8) Apply this patch
9) If you're using the same database, set the version to 22.0600023 and restart
10) Run updatedatabase.pl
11) Note the rules were recreated, but the value is the derived value from the all/all/all rule!

Signed-off-by: Kevin Carnes <kevin.carnes@ub.lu.se>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Emily Lamancusa <emily.lamancusa@montgomerycountymd.gov>
Bug 33847: Rewrite to use SQL

Signed-off-by: Emily Lamancusa <emily.lamancusa@montgomerycountymd.gov>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
[EDIT] Squashed, and added reference to new bug too
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 30287: (follow-up) Make unit test more reliable in ktd
Martin Renvoize [Sat, 11 Nov 2023 11:06:32 +0000 (11:06 +0000)]
Bug 30287: (follow-up) Make unit test more reliable in ktd

This patch mocks NoticeCSS earlier to ensure we're not inadvertantly
failing due to a local setup in ktd having added to the preference.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 30287: (follow-up) Unit test for html_content
Martin Renvoize [Wed, 8 Nov 2023 09:38:18 +0000 (09:38 +0000)]
Bug 30287: (follow-up) Unit test for html_content

This patch adds a unit test for the new `html_content` method introduced
to Koha::Notice::Template in the previous patch.

Test
1) Run the new unit test ;P

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 30287: (follow-up) Add content wrap matching send time
Martin Renvoize [Mon, 6 Nov 2023 14:00:21 +0000 (14:00 +0000)]
Bug 30287: (follow-up) Add content wrap matching send time

This patch adds a new method to the Koha::Notice::Message class to wrap
content in the same way we currently do at email send time. We then
update the notice preview to use this method so we're embedding
NoticeCSS into that iframe. This means the generated preview should now
exactly match how your notice will display in email clients including
any CSS you may have placed within NoticeCSS.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Fixed typo in POD of html_content

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 30287: Conditionally render notice preview
Martin Renvoize [Mon, 6 Nov 2023 12:50:05 +0000 (12:50 +0000)]
Bug 30287: Conditionally render notice preview

This patch adds conditional formatting based on whether the notice was
generated from an HTML template or a plaintext one. We simply drop the
'html_line_break' filter for the case where the notice should already be
html formatted.

I was tempted to replace the html_line_break for plaintext formatted
notices too as I believe this closer resembles how we actually output
such generated notices.. but I decided that should be for another bug.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35309: Remove DT's fnSetFilteringDelay
Jonathan Druart [Wed, 15 Nov 2023 10:44:37 +0000 (11:44 +0100)]
Bug 35309: Remove DT's fnSetFilteringDelay

On bug 35284 we added the delay on the column filters using dt's
throttle builtin function.

From doc:
https://datatables.net/plug-ins/api/fnSetFilteringDelay
"""
Please note that this plug-in has been deprecated and the dt-init searchDelay option in DataTables 1.10 should now be used. This plug-in will not operate with v1.10+.

Test plan:
Note that column filtering still work as before (test on different
tables, see bug 35284 for the list)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35216: Rename error to issuingimpossible
Nick Clemens [Wed, 1 Nov 2023 15:39:30 +0000 (15:39 +0000)]
Bug 35216: Rename error to issuingimpossible

Test plan:
1 - Apply two patches
2 - Confirm code changes make sense
3 - Confirm you can check out items
4 - Confirm checkout blocks still block

Signed-off-by: Brendan Lawlor <blawlor@clamsnet.org>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35216: Rename question to needsconfirmation
Nick Clemens [Wed, 1 Nov 2023 15:37:54 +0000 (15:37 +0000)]
Bug 35216: Rename question to needsconfirmation

Signed-off-by: Brendan Lawlor <blawlor@clamsnet.org>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35405: Remove noise from MARC::Record in SearchAuthorities
Marcel de Rooy [Mon, 27 Nov 2023 15:12:41 +0000 (16:12 +0100)]
Bug 35405: Remove noise from MARC::Record in SearchAuthorities

We are calling ->field with an undef parameter.
MARC::Record does not like that and says:
  Use of uninitialized value $tag in hash element at /usr/share/perl5/MARC/Record.pm line 202.
For now, a fix at our side.

Test plan:
Run SearchAuthorities without passing an authtypecode.
Without this patch, it results in a warning per hit.
With this patch, the noise should be gone.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
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>
10 months agoBug 35204: Prevent an expired password from throwing a 500 error
Matt Blenkinsop [Wed, 6 Dec 2023 10:03:45 +0000 (10:03 +0000)]
Bug 35204: Prevent an expired password from throwing a 500 error

Currently when a patron with an expired password is authenticated via the API a 500 error is returned rather than a 400 "Validation failed" error. This patch catches the return value for an expired password and returns the validation failure before the patron search is attempted.

Test plan:
1) Choose a patron and set their password expiry date to a date in the past
2) Send a request to auth/password/validation as an authenticated user with that patron's details
3) The response should be a 500 error
4) Apply patch
5) Repeat steps 1-3 and this time the response should be a 400 code with an error message of  "Password expired"

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35204: Add unit tests
Matt Blenkinsop [Mon, 18 Dec 2023 11:00:06 +0000 (11:00 +0000)]
Bug 35204: Add unit tests

prove t/db_dependent/api/v1/password_validation.t

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35489: Add a hidden input for itemnumber even if item has no barcode
Nick Clemens [Tue, 5 Dec 2023 15:47:23 +0000 (15:47 +0000)]
Bug 35489: Add a hidden input for itemnumber even if item has no barcode

This page is a single form, all fields must have inputs to avoid data loss/mismatch

To test:
1 - Find a record in the catalog and add or edit items to have one item with a barcode and one without
2 - Place an item level hold on the item with no barcode
3 - Place another hold for a different patron on the item with a barcode
4 - From the holds table add an expiration date to the hold with a barcode and save
5 - Note the hold on the item with no barcode is now on the item with a barcode and the other hold is now a next available hold
6 - Delete the holds
7 - Apply patch
8 - Repeat 2-4
9 - Confirm the itemnumbers for the holds have not changed

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35574: Tidy
Nick Clemens [Fri, 15 Dec 2023 12:22:53 +0000 (12:22 +0000)]
Bug 35574: Tidy

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35574: Don't show the link either
Martin Renvoize [Fri, 15 Dec 2023 11:11:56 +0000 (11:11 +0000)]
Bug 35574: Don't show the link either

This patch adds the check for permission to the biblio menu item too.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35574: Add unit tests for api change
Martin Renvoize [Fri, 15 Dec 2023 11:05:42 +0000 (11:05 +0000)]
Bug 35574: Add unit tests for api change

We add the corresponding unit tests for the biblio/bookings endpoint to
ensure no regressions in the future.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35574: Correct api permission for listing biblio specific bookings
Nick Clemens [Thu, 14 Dec 2023 17:43:17 +0000 (17:43 +0000)]
Bug 35574: Correct api permission for listing biblio specific bookings

To test:
1 - Follow above plan and apply only first patch
2 - Not the table does not load (403: Forbidden)
3 - Apply this patch
4 - Reload
5 - Success!

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35574: Bookings tab from biblio details should only require manage_bookings permi...
Nick Clemens [Thu, 14 Dec 2023 17:10:35 +0000 (17:10 +0000)]
Bug 35574: Bookings tab from biblio details should only require manage_bookings permission

TO test:
1 - Find or create a staff user
2 - Grant permissions:
    circulate: manage_bookings, circ_remaining_permissions
    catalogue
3 - Open a record details, go to items tab, mark an item as bookable
4 - Sign out and sign in as the patron above (or use a private window to sign in)
5 - Place a booking on the record located above
6 - Success
7 - Try to view the bookings tab
8 - Fail, you don't have permission
9 - Apply patch
10 - Success!

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35413: DBRev 23.12.00.001
Katrin Fischer [Mon, 18 Dec 2023 13:38:37 +0000 (13:38 +0000)]
Bug 35413: DBRev 23.12.00.001

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35413: DB update
Tomas Cohen Arazi [Mon, 18 Dec 2023 13:05:39 +0000 (10:05 -0300)]
Bug 35413: DB update

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35413: Terminology: Manage issues (issue_manage)
Owen Leonard [Tue, 28 Nov 2023 14:58:04 +0000 (14:58 +0000)]
Bug 35413: Terminology: Manage issues (issue_manage)

This patch updates several files which use the term "issues" without
context, changing them to "Vendor issues." Unchanged is the vendor
issues page template, vendor_issues.tt, which is updated in Bug 35417.

To test, apply the patch and go to Acquisitions.

- Search for a vendor and view the details.
- You should see a "Vendor issues" link in the sidebar.
- Go to Patrons and search for a patron. View the patron's details.
- Click More -> Set permissions.
- Under Acquisitions management you should see "Manage vendor issues
  (issue_manage)"

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>
10 months agoBug 35528: Remove 'click' from links in system preferences
Katrin Fischer [Sun, 10 Dec 2023 14:55:20 +0000 (14:55 +0000)]
Bug 35528: Remove 'click' from links in system preferences

It's not necessary to label a link with 'click', it being
a link and being formatted as such is enough.

This updates the occurences in the sytem preferences editor.

To test:
* Go to system preferences like OpacUserCSS that allow editing
  in a textarea
* Verify link descrptions for editing and collapsing the area
* For a section of grouped system preferences, hover over the
  arrow and verify the text for collapsing/uncollapsing the area
* Apply patch, restart all
* Verify the links and tool tips have been updated

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>
10 months agoBug 35526: Fix terminology and spelling for ERM data providers
Katrin Fischer [Sun, 10 Dec 2023 14:00:04 +0000 (14:00 +0000)]
Bug 35526: Fix terminology and spelling for ERM data providers

This makes several changes on the form for adding a data provider
and on the data provider details page:

* Enable ERMModule system preference
* Go to the ERM module, add a new data provider
  * Look at the labels on the form
  * Save and check the labels on the summary tab
* Apply patch, run: yarn build
  * Verify fixes
    ...Id => ID
    ...sushi => SUSHI
    ...counter => COUNTER
    ...Report Release => Report release
    ...

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>
10 months agoBug 35525: Fix spelling of SMS in aria-labels for messaging in OPAC
Katrin Fischer [Sun, 10 Dec 2023 13:41:46 +0000 (13:41 +0000)]
Bug 35525: Fix spelling of SMS in aria-labels for messaging in OPAC

Updates sms to SMS.

* Set SMSSendDriver system preference to Email
* Go to the OPAC patron account, messaging tab
* Check some SMS check boxes and save
* Verify that in the source code the aria-label for the
  checked and unchecked checkboxes reads: sms messaging
* Verify that in the source code for the 'days in advance'
  pull down, the message reads "... receive notice"
* Apply patch, restart all
* Verify that the source code for the checked and unchecked
  the aria-label now reads "Select/Unselect SMS messaging"
* Verify that the aria-label on the 'days in advance' pull
  down now reads 'receive the message'

Also fixes a mismatched itiva message.
Repeat test plan with TalkingTechItivaPhoneNotification Enabled
and the phone checkboxes.

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>
10 months agoBug 35524: Fix terminology in basket group CSV export
Katrin Fischer [Sun, 10 Dec 2023 13:29:29 +0000 (13:29 +0000)]
Bug 35524: Fix terminology in basket group CSV export

Bookseller should be vendor to match our preferred terminology.

To test:
* Run:
  prove t/db_dependent/Acquisition/GetBasketGroupAsCSV.t
* Add a basket with at least one order line
* Close basket and add to a basket group
* Close the basket group
* Export as CSV
* Verify headers include "Bookseller"
* Apply patch, restart all
* Repeat export, it should now say "Vendor"
* Rerun tests

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>
10 months agoBug 35523: Fix doubled up quotes in cash register title
Katrin Fischer [Sun, 10 Dec 2023 13:21:29 +0000 (13:21 +0000)]
Bug 35523: Fix doubled up quotes in cash register title

Updates ''{cash_register}'' to '{cash_register}'

To test:
I believe this is not actually testable, as cash registers
can only be archived and not deleted?

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>
10 months agoBug 35476: Make 'Submit' translatable in TrainsFormAddItem.vue
Tomas Cohen Arazi [Fri, 15 Dec 2023 20:58:25 +0000 (17:58 -0300)]
Bug 35476: Make 'Submit' translatable in TrainsFormAddItem.vue

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35476: Make 'Submit' buttons translatable in vue components
Jonathan Druart [Mon, 4 Dec 2023 14:22:11 +0000 (15:22 +0100)]
Bug 35476: Make 'Submit' buttons translatable in vue components

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>
10 months agoBug 18139: Specify 'all item types' and 'all patron categories' in template
Kyle M Hall [Tue, 12 Dec 2023 11:55:04 +0000 (06:55 -0500)]
Bug 18139: Specify 'all item types' and 'all patron categories' in template

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 18139: Tidy code
Kyle M Hall [Tue, 12 Dec 2023 11:57:42 +0000 (06:57 -0500)]
Bug 18139: Tidy code

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 18139: Add/update unit tests
Kyle M Hall [Tue, 28 Nov 2023 17:24:53 +0000 (12:24 -0500)]
Bug 18139: Add/update unit tests

Signed-off-by: Eric Gosselin <eric.gosselin@inlibro.com>
Signed-off-by: Marc Véron <veron@veron.ch>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 18139: Display the rule critera used to determin the checkout limits to the template
Kyle M Hall [Tue, 28 Nov 2023 14:57:55 +0000 (14:57 +0000)]
Bug 18139: Display the rule critera used to determin the checkout limits to the template

The too many checked out message can be very confusing for librarians
when the limit specified is more or less than the number of checkouts
the patron already has. We should make it clear to the librarian that
his is only counting certain types of checkouts by giving them the
issuing rule criteria used.

Test Plan:
1) Apply this patch
2) Try to check out more items than the circ rules allow for
   regular and on-site checkouts

Signed-off-by: Eric Gosselin <eric.gosselin@inlibro.com>
Signed-off-by: Marc Véron <veron@veron.ch>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35507: Add verbose parameters in Koha::Plugins
Marcel de Rooy [Fri, 15 Dec 2023 08:31:33 +0000 (08:31 +0000)]
Bug 35507: Add verbose parameters in Koha::Plugins

Yet another approach ;)
Driemaal is scheepsrecht / Third time lucky..

Test plan:
Run prove $(git grep -l Koha::Plugin | grep -P "^t\/db")

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35507: Plugins.t - Mock SessionStorage, remove KitchenSink
Marcel de Rooy [Tue, 12 Dec 2023 14:07:49 +0000 (14:07 +0000)]
Bug 35507: Plugins.t - Mock SessionStorage, remove KitchenSink

Removing the CGI::Session behavior to auto-commit by mocking
SessionStorage makes that the $plugin->test_template does no
longer commit.

Since KitchenSink includes a CREATE TABLE, removing that code
removes the second implicit commit. We might move that code
to its own script?

Adds a missing rollback too at the end.

Test plan:
Run prove t/db_dependent/Koha/Plugins/Plugins.t
Verify that no records got added to plugin_data/methods table.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35468: (follow-up) Fix for older DateTimes
Martin Renvoize [Fri, 15 Dec 2023 11:27:35 +0000 (11:27 +0000)]
Bug 35468: (follow-up) Fix for older DateTimes

We can't use the rfc3339 method from DateTime itself as older Debians
don't ship with a recent enough version.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35496: (QA follow-up): tidy up code
Victor Grousset/tuxayo [Wed, 13 Dec 2023 15:38:09 +0000 (16:38 +0100)]
Bug 35496: (QA follow-up): tidy up code

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35496: Open article requests tab by default on opac-user.pl after placing an...
Lucas Gass [Tue, 5 Dec 2023 18:04:47 +0000 (18:04 +0000)]
Bug 35496: Open article requests tab by default on opac-user.pl after placing an article request

To test:
1 - Turn on ArticleRequests
2 - Place an  Article Requests on the opac
3 - Note after placing the request the URL is:
    http://localhost:8080/cgi-bin/koha/opac-user.pl#opac-user-article-requests
4 - Note the article request tab is not active
5 - APPLY PATCH and restart_all
6. Try steps 2 - 4 again, this time the article request tab should be open by default.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35495: Open holds tab by default on opac-user.pl after cancelling a hold
Lucas Gass [Tue, 5 Dec 2023 17:47:50 +0000 (17:47 +0000)]
Bug 35495: Open holds tab by default on opac-user.pl after cancelling a hold

To test:
1 - Go to the opac-user.pl page for a user with some holds and cancel a hold.
2 - Note after placing the hold the URL is:
    http://localhost:8080/cgi-bin/koha/opac-user.pl?#opac-user-holds
3 - Note the holds tab is not active
4. APPLY PATCH and restart all
5. Now after cancelling a hold, the refreshed page should have an active hold tab.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35492: Open holds tab by default on opac-user.pl after suspending a hold
Lucas Gass [Tue, 5 Dec 2023 16:50:37 +0000 (16:50 +0000)]
Bug 35492: Open holds tab by default on opac-user.pl after suspending a hold

To recreate:
1. Go to the opac-user.pl page for a user with some holds and suspend
   a hold.
2. Note after placing the hold the URL is:
   http://localhost:8080/cgi-bin/koha/opac-user.pl?#opac-user-holds
3  Note the holds tab is not active
4. APPLY PATCH and restart all
5. Now after suspending a hold, the refreshed page should have an active
   hold tab.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35488: Open holds tab by default on opac-user.pl after placing a hold
Lucas Gass [Tue, 5 Dec 2023 16:40:15 +0000 (16:40 +0000)]
Bug 35488: Open holds tab by default on opac-user.pl after placing a hold

1 - Place a hold on the opac
2 - Note after placing the hold the URL is:
    http://localhost:8080/cgi-bin/koha/opac-user.pl?#opac-user-holds
3 - Note the holds tab is not active
4 - APPLY PATCH and restart_all
5 - Try steps 1 - 3 again, this time the holds tab should be opened.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35468: (follow-up) Test only the specific permission needed
Nick Clemens [Tue, 12 Dec 2023 16:52:14 +0000 (16:52 +0000)]
Bug 35468: (follow-up) Test only the specific permission needed

The tests were granting circulation top-level permissions - we should be able to
perform the actions with only 'manage_bookings'. This patch updates the tests to
use the narrower permission.

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35468: (follow-up) Fix QA complaints
Nick Clemens [Tue, 12 Dec 2023 16:37:49 +0000 (16:37 +0000)]
Bug 35468: (follow-up) Fix QA complaints

Tidyness
Use dt_from_string, not DateTime->now
Add exec flag

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35468: Unit tests
Martin Renvoize [Tue, 12 Dec 2023 14:53:09 +0000 (14:53 +0000)]
Bug 35468: Unit tests

This patch adds all the 'basic' unit tests one would expect to find with
the api endpoints.  I've been working on this as a follow-up to bug
29002 as promised, but hadn't yet submitted them as I wanted to get the
full coverage.. but having these basics in early makes sense whilst I
continue on the more advanced cases.

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35468: Correct api bookings permission
Martin Renvoize [Tue, 12 Dec 2023 13:10:29 +0000 (13:10 +0000)]
Bug 35468: Correct api bookings permission

At some point during development we migrated from 'parameters' to
'circulate' for the manage_bookings sub-permission. Unfortunately, the
corresponsing API definition missed the update.

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35556: Fix random selenium failure if category on second page
Jonathan Druart [Tue, 12 Dec 2023 15:14:34 +0000 (16:14 +0100)]
Bug 35556: Fix random selenium failure if category on second page

If 'Test category' if on the second page the test will fail to
locate the Edit button.

To make sure it is displayed on the screen we are selecting "All" in the
dropdown list.

This is done a couple of lines later in the script for the same purpose.

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35428: Remove temporary files for gulp po tasks
Jonathan Druart [Wed, 29 Nov 2023 09:02:50 +0000 (10:02 +0100)]
Bug 35428: Remove temporary files for gulp po tasks

gulp po:update will generate 1 /tmp/koha-* directory per task.

We need to remove them when the script does not longer need them.

Test plan:
0. Do not apply this patch
1. ls -ltr /tmp
2. gulp po:update --lang es-ES
3. ls -ltr /tmp
=> Notice new koha-* directories
Repeat 2, 3
4. Apply this patch and try again
=> No new directories when the job is done

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35498: Allow tab to indent lines and trigger autocomplete
Matt Blenkinsop [Wed, 6 Dec 2023 15:13:20 +0000 (15:13 +0000)]
Bug 35498: Allow tab to indent lines and trigger autocomplete

This patch allows the tab key to indent lines as well as trigger autocomplete.

Test plan:
1) Apply patch, navigate to reports and create a new SQL report
2) Click in the text editor and press tab, it should indent and then trigger the autocomplete options
3) Type something to select from the autocomplete box and press tab - it should autocomplete that option
4) Type any word and then press space. Now press tab and it should indent again

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35310: Show current renewal value of the currently active check out
Pedro Amorim [Fri, 10 Nov 2023 11:31:28 +0000 (11:31 +0000)]
Bug 35310: Show current renewal value of the currently active check out

Test plan, with the previous 2 patches applied:

1) Checkout an item to Koha user, barcode 39999000003192
2) Renew that barcode
3) Visit the items page of the biblio record, click on 'View' in front of 'Current renewals'
/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=76
4) Notice it shows the renewals as expected
5) Return the same item: 39999000003192
6) Repeat 1) to 3). Notice it shows 2 current renewals even tho only 1 corresponds to the currently active check out
7) Renew again. Notice it shows 3 current renewals even tho only 2 correspond to the currently active check out
7) Apply this patch. Notice it now only shows 2 current renewals

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35310: Only show 'Current renewals' link if item is currently checked out
Pedro Amorim [Fri, 10 Nov 2023 11:01:58 +0000 (11:01 +0000)]
Bug 35310: Only show 'Current renewals' link if item is currently checked out

1) Checkout an item to Koha user, barcode 39999000003192
2) Renew that barcode
3) Visit the items page of the biblio record, click on "View" in front of "Current renewals"
/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=76
4) Notice it shows the renewals as expected
5) Return the same item 39999000003192
6) Repeat 3). Notice it never loads renewals and network console shows HTTP error 400
7) Apply this patch. Repeat the test plan. Notice the 'Current renewals' no longer shows for the item because it is no longer checked out, so whatever past renewals are no longer 'current'

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35310: Only show 'Current renewals' <li> entry if there are current renewals
Pedro Amorim [Fri, 10 Nov 2023 11:00:55 +0000 (11:00 +0000)]
Bug 35310: Only show 'Current renewals' <li> entry if there are current renewals

'Current renewals' is always showing, even if empty.

Test plan:
1) Checkout an item to Koha user, barcode 39999000003192
2) Renew that barcode
3) Visit the items page of the biblio record, click on "View" in front of "Current renewals"
/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=76
4) Notice all items have the 'Current renewals' label entry, but only the checked out item in step 1) has the 'Current renewals' label entry
5) Apply patch. Notice only the item with current renewals is showing the 'Current renewals' label entry with the respective value.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35450: Preservation system preferences should authval dropdowns
Owen Leonard [Fri, 1 Dec 2023 16:34:28 +0000 (16:34 +0000)]
Bug 35450: Preservation system preferences should authval dropdowns

This patch updates two preservation module system preferences so that
they offer dropdowns of "Not for loan" values instead of requiring entry
of a specific code.

The patch also adds a missing "." at the end of one preference
description.

To test, apply the patch and restart services.

- Go to Administration -> System preferences.
- Search for "preservation"
- Check that the "PreservationNotForLoanDefaultTrainIn" and
  "PreservationNotForLoanWaitingListIn" preferences have dropdowns
  offering "Not for loan" values.
- Confirm that your choices are correctly saved.

Signed-off-by: Barbara Johnson <barbara.johnson@bedfordtx.gov>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 34398: (QA follow-up): add missing |
Victor Grousset/tuxayo [Fri, 8 Dec 2023 21:30:05 +0000 (22:30 +0100)]
Bug 34398: (QA follow-up): add missing |

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 34398: Fix inconsistencies in Record matching rules page titles, breadcrumbs...
Owen Leonard [Tue, 3 Oct 2023 16:59:16 +0000 (16:59 +0000)]
Bug 34398: Fix inconsistencies in Record matching rules page titles, breadcrumbs, and headers

This patch fixes some inconsistencies in the record matching rules
administration page, making sure the page title, breadcrumb
navigation, and page headers are consistent with each other.

Some controls on this page have been updated to use Bootstrap link style
with Font Awesome icons added.

Test each page to confirm that page title, heading, and breadcrumbs are
consistent:

- Administration -> Record matching rules
  - New record matching rule
  - Edit record matching rule
  - Delete record matching rule
  - Test the process of adding new match points and new match checks,
    and removing match points and match checks.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35449: Accessibility: No links on "here"
Owen Leonard [Fri, 1 Dec 2023 16:46:47 +0000 (16:46 +0000)]
Bug 35449: Accessibility: No links on "here"

This patch updates two system preferences, "OPACUserJS" and
"OPACUserCSS" so that the "here" links in the description instead read
"library administration".

To test, apply the patch and go to Administration -> System preferences.

- Search for "opacuser"
- The descriptions of the "OPACUserJS" and "OPACUserCSS" preferences
  should include the phrase "...can be defined in library
  administration," with "library administration" leading to the correct
  page.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 34091: Fix typo log-modules in help for cleanupdatabase.pl
Fridolin Somers [Fri, 1 Dec 2023 17:55:57 +0000 (07:55 -1000)]
Bug 34091: Fix typo log-modules in help for cleanupdatabase.pl

This parameter is actually --log-module.

Test plan :
Run misc/cronjobs/cleanup_database.pl -h
Confirm you see --log-module

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35436: Copy is not translatable in OPAC Search History
Adolfo Rodríguez [Thu, 30 Nov 2023 10:12:13 +0000 (11:12 +0100)]
Bug 35436: Copy is not translatable in OPAC Search History

Test plan
1 Enter in OPAC Search History in a language other than English and
  check that Copy is not translated
2 Apply patch, restart services
3 Regenerate the templates for that language
4 Repeat step 1 and check that Copy appears now translated

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35460: Fix add and edit of hold rules in circulation rules table
Emmi Takkinen [Fri, 1 Dec 2023 13:08:48 +0000 (15:08 +0200)]
Bug 35460: Fix add and edit of hold rules in circulation rules table

Adding or editing following columns in circulation
rules table didn't work:
- Holds allowed (total)
- Holds allowed (daily)
- Holds per record (count)

At some point those columns were dropped from list of
saved columns in smart-rules.pl.

To test:
1. Create new rule or edit existing one.
2. Add or change values in following columns:
- Holds allowed (total)
- Holds allowed (daily)
- Holds per record (count
3. Save rule.
=> Note that columns have value "Unlimited" on them.
If you check database, columns haven't been saved.
4. Apply this patch.
5. Repeat steps 1. to 3.
=> Columns should now have values in them and they
are saved to database.

Sponsored-by: Koha-Suomi Oy
Signed-off-by: Emily Lamancusa <emily.lamancusa@montgomerycountymd.gov>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35344: Warn on patron image upload if missing cardnumber
David Cook [Thu, 16 Nov 2023 05:08:30 +0000 (05:08 +0000)]
Bug 35344: Warn on patron image upload if missing cardnumber

This change displays a warning message instead of the patron image
upload feature in the patron record when the patron is missing the
cardnumber.

Without this change, the staff user can try to upload a patron image
but it will silently fail. This change warns the staff user of the
cardnumber requirement for patron image upload.

Test plan:
0. Apply the patch
1. Enable the "patronimages" system preference
2. Go to http://localhost:8081/cgi-bin/koha/members/moremember.pl?borrowernumber=51
3. Click "Add" over the patron image placeholder
4. Note the "Upload photo" button and the ability to take a patron photo if your
device has a camera
5. Remove "cardnumber" from BorrowerMandatoryField
6. Go to http://localhost:8081/cgi-bin/koha/circ/circulation.pl?borrowernumber=51
7. Edit the patron to remove the cardnumber
8. Click "Add" over the patron image placeholder
9. Note that no patron image upload features appear. Instead, only
a warning appears stating that the patron needs a cardnumber before
the patron image upload can be performed

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35425: Optimize UX when dragging a tag or subfield
Andrii Nugged [Thu, 16 Nov 2023 16:20:55 +0000 (18:20 +0200)]
Bug 35425: Optimize UX when dragging a tag or subfield

To reproduce:
1. Open any biblio and edit that record.
   (select "Edit record" from the "Edit" drop-down menu).
2. Check that selecting the text in any draggable block input/textarea
   fields with a mouse is not possible - it starts dragging instantly.
3. Apply the patch
4. Make sure that draging is activated only when you click
   on the "::" icon in front of the dragged item. And text selection
   works correctly.

Signed-off-by: Phil Ringnalda <phil@chetcolibrary.org>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35414: Silence warn related to number_of_copies
Magnus Enger [Wed, 29 Nov 2023 13:58:08 +0000 (14:58 +0100)]
Bug 35414: Silence warn related to number_of_copies

To test in ktd:
- Tail the logs with "sudo tail -f /var/log/koha/kohadev/plack*.log"
- Find a record in the staff client
- Add an item to the record
- Observe "[WARN] Argument "" isn't numeric in subroutine entry ..."
  in /var/log/koha/kohadev/plack-intranet-error.log
- Apply this patch
- restart_all
- Tail the logs again
- Add another item
- Observe the absence of the earlier warning

Thanks to Jonathan Druart for suggesting this particular solution!

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 34516: Upgrade database fails for 22.11.07.003, points to web installer
Kevin Carnes [Mon, 27 Nov 2023 08:40:55 +0000 (09:40 +0100)]
Bug 34516: Upgrade database fails for 22.11.07.003, points to web installer

MySQL requires key length for indexes of text columns, while MariaDB
sets it automatically for utf8mb4.

Test plan:
1. Setup Koha to use MySQL (e.g. ku-my8)
2. Downgrade database with the following commands (e.g. koha-mysql
   kohadev):
   ALTER TABLE `biblioitems` MODIFY COLUMN `publishercode` varchar(255);
   ALTER TABLE `biblioitems` DROP INDEX `publishercode`;
   ALTER TABLE `biblioitems` ADD INDEX `publishercode` (`publishercode`);
   ALTER TABLE `deletedbiblioitems` MODIFY COLUMN `publishercode` varchar(255);
   ALTER TABLE `deletedbiblioitems` DROP INDEX `publishercode`;
   ALTER TABLE `deletedbiblioitems` ADD INDEX `publishercode` (`publishercode`);
   UPDATE systempreferences SET value="23.0600006" WHERE variable = "Version";
3. Attempt to upgrade the database (e.g. koha-upgrade-schema kohadev)
4. Notice the error about "key specification without a key length"
5. Apply patch
6. Attempt to upgrade the database (e.g. koha-upgrade-schema kohadev)
7. Notice that the database is upgraded
8. Sign off

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Emily Lamancusa <emily.lamancusa@montgomerycountymd.gov>
Perltidied the database update file.

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35408: Fix import job link
Jonathan Druart [Tue, 28 Nov 2023 08:11:43 +0000 (09:11 +0100)]
Bug 35408: Fix import job link

After importing titles from a list there is a link to the background job
that is displayed.
This link points to /cgi-bin/koha/admin/background_jobs/:id
There is a route to this path in routes/erm.js, to redirect to the
correct URI /cgi-bin/koha/admin/background_jobs.pl?op=view&id=:id
However this link will not work if we are accessing it from outside the
ERM app/module, or if we are opening it in a new tab/window.

The idea was interesting, but does not work...

Test plan:
Create a new ERM local package, a new list (virtual shelf), add some
items to the list.
Go to E-resource management > eHoldings > Local > Titles > Import from a list
Click "import"
Notice the "see job" link and click it

=> Confirm that with this patch applied you can open it in a new tab
without getting a 404

Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 33244: Do not show lists in OPAC if OpacPublic is disabled
Owen Leonard [Tue, 21 Nov 2023 14:37:16 +0000 (14:37 +0000)]
Bug 33244: Do not show lists in OPAC if OpacPublic is disabled

This patch updates markup and CSS in the OPAC header so that the Cart
and Lists controls don't appear when OpacPublic is disabled.

The patch also moves the "Your cookies" link into the group of links
with "Log in to your account" and "Search history." This makes the
template logic a little simpler and also seems like a more logical
grouping.

To test, apply the patch and enable the CookieContent system preference.

- View the OPAC with the OpacPublic system preference enabled.
- If necessary, click the "Accept all cookies" button.
- The "Your cookies" link should now appear in the header between the
  log-in link and the search history link.
- Test the page at various browser widths to confirm that the header
  still responds well to changes.
- Go back to system preferences in the staff client and change the
  OpacPublic system preference to "disabled."
- Return to the OPAC and refresh the page. You should be redirected to
  the login page, and the Cart and Lists buttons should no longer appear
  in the header.
- The links in the header for login and cookies should look correct at
  various browser widths.

Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35157: Remove spans from patronfields.inc
Lucas Gass [Wed, 1 Nov 2023 23:05:42 +0000 (23:05 +0000)]
Bug 35157: Remove spans from patronfields.inc

To test:
1. Run any page that contains the "Search patrons" search bar through an HTML validator and you will see a lot of:

        Stray start tag span.
        Stray end tag span.

2. Apply patch
3. Try step 1 again, no more errors from the HTML validator.
4. Make sure the patron searches still work when limiting by 'Search field'.

Signed-off-by: Brendan Lawlor <blawlor@clamsnet.org>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35352: Allow SMSalertnumber to be hidden via BorrowerUnwantedField
Lucas Gass [Thu, 16 Nov 2023 14:58:56 +0000 (14:58 +0000)]
Bug 35352: Allow SMSalertnumber to be hidden via BorrowerUnwantedField

To test:
1. Add a value to SMSSendDriver like 'Emial'.
2. Go to BorrowerUnwantedField and attempt to hide "Mobile phone number (smsalertnumber)"
3. Go to members/memberentry.pl and see the field is not hidden.
4. APPLY PATCH
5. Try step 3 again and this time the field should be properly hidden.

Note: This patch also includes some indentation changes.
Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35383: Make subfields of repeated tags draggable
Slava Shishkin [Mon, 20 Nov 2023 16:32:51 +0000 (18:32 +0200)]
Bug 35383: Make subfields of repeated tags draggable

To reproduce:
1. Open any biblio and edit that record.
   (select "Edit record" from the "Edit" drop-down menu).
2. Repeat any tag that may be repeated and has more than one subfield
   (e.g. 050 or 082) (click "Repeat this tag")
3. Try dragging a subfield of the new repeated tag

Apply the patch and make sure dragging a subfield works well.

Signed-off-by: Phil Ringnalda <phil@chetcolibrary.org>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35410: Use "Online resources" label in search results
David Nind [Mon, 4 Dec 2023 03:23:03 +0000 (03:23 +0000)]
Bug 35410: Use "Online resources" label in search results

Update the staff interface and OPAC XSLT files to use
"Online resources" as the label in search results, instead of
"Online access". This matches the label used in the detail page
for a record.

Test plan:
1. Search for perl in the staff interface and OPAC (or add to
   an existing record a URL to 856$u with 4 for the first
   indicator).
2. For any search result that displays the "Online access" label,
   view the detail page for the record.
3. Note that the detail page uses the label "Online resources".
4. Apply the patch and restart_all.
5. Repeat steps 1 and 2.
6. Note that the search result pages now show "Online resources" for
   the label, matching the detail page.

Signed-off-by: David Nind <david@davidnind.com>
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>
10 months agoBug 35453: Fix wrong 'Laserdisc)' string on 007 builder (MARC21)
Tomas Cohen Arazi [Thu, 30 Nov 2023 12:46:48 +0000 (09:46 -0300)]
Bug 35453: Fix wrong 'Laserdisc)' string on 007 builder (MARC21)

Steps to reproduce:
1. On cataloguing, open the 007 builder.
2. Choose material type 'Video recording'
3. On 04 choose g - Laserdisc
4. Click save
=> SUCCESS: 'g' correctly shows on the 007
5. Edit the 007 again
=> FAIL: on 04, 'g - Laserdisc)' is displayed
6. Apply this patch
7. Repeat 4 and 5
=> SUCCESS: no trailing ')'
8. Sign off :-D

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35415: Rephrase: Some patrons have requested a privacy ...
Owen Leonard [Tue, 28 Nov 2023 19:27:49 +0000 (19:27 +0000)]
Bug 35415: Rephrase: Some patrons have requested a privacy ...

This patch revises the wording of the warning which is displayed on the
'About' page when the 'OPACPrivacy' system preference is enabled but the
'AnonymousPatron' preference is empty. The new phrasing is hopefully
more clear.

To test, apply the patch and go to Administration -> System preferences.

- Search for 'AnonymousPatron' and enter a borrowernumber if necessary.
- Log in to the OPAC and click the 'Privacy' tab in the left-hand
  sidebar of the user summary page.
- Set your privacy rule to 'Never'.

- Return to Admnistration -> Sytem preferences in the staff interface.
- Search for 'OPACPrivacy' and set it to 'Allow'.
- Clear the borrowernumber from the 'AnonymousPatron' preference.
- Go to the 'About" page and open the 'System information' tab.
- You should see an error message at the bottom:

  "Some patrons have requested privacy after their items are checked in,
   but the AnonymousPatron preference is not set correctly. Set it to a
   valid borrower number or checkins for these patrons will fail."

Signed-off-by: Barbara Johnson <barbara.johnson@bedfordtx.gov>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35404: Fix wrong copy and paste in string (ILL batches)
Tomas Cohen Arazi [Mon, 27 Nov 2023 13:24:29 +0000 (10:24 -0300)]
Bug 35404: Fix wrong copy and paste in string (ILL batches)

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35412: Fix incorrect capitalization: Toggle Dropdown
Owen Leonard [Tue, 28 Nov 2023 14:04:52 +0000 (14:04 +0000)]
Bug 35412: Fix incorrect capitalization: Toggle Dropdown

This patch corrects incorrect capitalization in the last-borrower
include file. The string his hidden except to screen readers, so visual
confirmation isn't straightforward. Viewing the diff should be enough to
confirm this single character change.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35376: Rephrase "be careful..."
Jonathan Druart [Tue, 28 Nov 2023 10:39:20 +0000 (11:39 +0100)]
Bug 35376: Rephrase "be careful..."

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35441: Fix typo 'UniqueItemsFields' system preference
Fridolin Somers [Wed, 29 Nov 2023 19:13:38 +0000 (09:13 -1000)]
Bug 35441: Fix typo 'UniqueItemsFields' system preference

Typo in message :
NOTE: Fields listed in the 'UniqueItemsFields' system preference will not be copied

The preference is Item without 's' : 'UniqueItemFields'

Test plan :
1) Check system preference 'UniqueItemFields' contains values
2) Go to acquisition to create a new order from new record
3) Check the note you see with the system preference

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>
10 months agoBug 35387: (follow-up) Capitalize 'barcode'
Tomas Cohen Arazi [Thu, 23 Nov 2023 11:30:25 +0000 (08:30 -0300)]
Bug 35387: (follow-up) Capitalize 'barcode'

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35387: Fix capitalization of 'name' label in preservation module
Tomas Cohen Arazi [Wed, 22 Nov 2023 20:56:10 +0000 (17:56 -0300)]
Bug 35387: Fix capitalization of 'name' label in preservation module

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35378: 'This authority type is used {count} times' missing dot
Tomas Cohen Arazi [Tue, 21 Nov 2023 17:30:50 +0000 (14:30 -0300)]
Bug 35378: 'This authority type is used {count} times' missing dot

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoBug 35327: Fix capitalization of language name
Lari Taskula [Mon, 13 Nov 2023 23:21:17 +0000 (23:21 +0000)]
Bug 35327: Fix capitalization of language name

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Updated opac to OPAC.

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
10 months agoDBRev 23.12.00.000: Start of a new release cycle
Katrin Fischer [Wed, 6 Dec 2023 12:51:10 +0000 (12:51 +0000)]
DBRev 23.12.00.000: Start of a new release cycle

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
11 months agoKoha 23.11.00 is here! v23.11.00
Tomas Cohen Arazi [Thu, 30 Nov 2023 19:23:30 +0000 (16:23 -0300)]
Koha 23.11.00 is here!

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
11 months agoAdd release notes for 23.11.0
Tomas Cohen Arazi [Thu, 30 Nov 2023 19:17:58 +0000 (16:17 -0300)]
Add release notes for 23.11.0

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
11 months agoBug 34587: DBIC schema
Tomas Cohen Arazi [Thu, 30 Nov 2023 17:58:11 +0000 (14:58 -0300)]
Bug 34587: DBIC schema

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
11 months ago23.11.00: Update kohastructure.sql
Tomas Cohen Arazi [Thu, 30 Nov 2023 17:42:05 +0000 (14:42 -0300)]
23.11.00: Update kohastructure.sql

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
11 months ago23.11.00: Update history.txt
Tomas Cohen Arazi [Thu, 30 Nov 2023 17:28:20 +0000 (14:28 -0300)]
23.11.00: Update history.txt

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
11 months ago23.11.00: Update contributors.yaml
Tomas Cohen Arazi [Thu, 30 Nov 2023 17:19:20 +0000 (14:19 -0300)]
23.11.00: Update contributors.yaml

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
11 months ago23.11.00: Update mailmap
Tomas Cohen Arazi [Thu, 30 Nov 2023 17:18:20 +0000 (14:18 -0300)]
23.11.00: Update mailmap

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
11 months agoBug 34955: One Koha Manual
Aude Charillon [Thu, 30 Nov 2023 17:08:47 +0000 (14:08 -0300)]
Bug 34955: One Koha Manual

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
11 months agoBug 35418: Fix _get_usage_months
Pedro Amorim [Tue, 28 Nov 2023 13:24:49 +0000 (13:24 +0000)]
Bug 35418: Fix _get_usage_months

No longer falls in an endless loop if the last month in the report period is december.

Test plan:
1) Apply just the tests patch, run EUsage tests
prove t/db_dependent/Koha/ERM/EUsage/
2) Wait for a few seconds. Notice SushiCounter.t it hangs. CTRL+C (cancel it)
3) Apply the fix patch.
4) Run the tests again. Notice all EUsage tests pass with no issues.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Andrew Auld <andrew.auld@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
11 months agoBug 35418: Add TR_B2 tests
Pedro Amorim [Tue, 28 Nov 2023 13:17:20 +0000 (13:17 +0000)]
Bug 35418: Add TR_B2 tests

This test file adds tests for the TR_B2 specific report.
But also tests for this specific bug, which only happens if
the report time period ends in december

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Andrew Auld <andrew.auld@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
11 months agoBug 35115: (QA follow-up):
Pedro Amorim [Fri, 10 Nov 2023 15:07:35 +0000 (15:07 +0000)]
Bug 35115: (QA follow-up):

Spelling.
Tidyness.
Removal of leftover warn

Nick's patch fixes the issue as described, and I agree that it is the ideal solution here.
prove t/db_dependent/api/v1/erm_eholdings* passes
prove t/db_dependent/Koha/BackgroundJob/CreateEHoldingsFromBiblios.t passes

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>