Commit Graph

57248 Commits

Author SHA1 Message Date
Aleisha Amohia 53c58f7cef
Bug 38184: Show due date on OpacTrustedCheckout modal
This fixes checkout fields being made available to the public API.

Note: This depends on the fix at Bug 39313, so make sure you apply that
first.

To test:

1. Enabled OpacTrustedCheckout system preference
2. Search for an item and get the barcode
3. Go to the OPAC
4. Click the Self-checkout button at the top
5. Enter the barcode and submit
6. Notice that the due date does not show in the modal, even though the
   due date was correctly set

7. Apply the patch and restart services

8. Go to the staff interface and check in your barcode
9. Repeat steps 3-5
10. Confirm the due date does show correctly in the modal

11. Confirm tests pass t/db_dependent/Koha/Checkout.t

Sponsored-by: Reserve Bank of New Zealand
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-20 09:03:01 +01:00
Martin Renvoize 35d100413d
Bug 32604: Unit tests
Add unit tests to more thoroughly and specifically cover the
search_patrons_to_update_category method including specific date
handling tests.

We also add some notes to the POD that were highlighted by writing
comprehensive tests.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Emmi Takkinen <emmi.takkinen@koha-suomi.fi>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-20 09:03:00 +01:00
Bernard Scaife 7fbeba8b75
Bug 32604: Correct boundary calculation for birthdate
Add 1 to upperagelimit to make it calculate birthday boundaries correctly
for patrons_to_update_category search

To test:
1. Add upper age limit as 18 for child patron category.
2. Create a child patron whose age is 18.
3. Save.
=> Patron is saved successfully.
4. Run cronjob update_patrons_category.pl with verbose option.
   perl update_patrons_category.pl --too_old --from CHILD --to ADULT -v
=> Note that patron is reported as updated (or would have updated)
   as an adult patron.
5. Apply patch
6. Re-run steps 1 to 5 and note we no long update the 18 year olds.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Emmi Takkinen <emmi.takkinen@koha-suomi.fi>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-20 09:03:00 +01:00
Lucas Gass b1a326238a
Bug 35134: Use localStorage instead of a cookie
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-19 17:34:56 +01:00
Pedro Amorim da66e8ac83
Bug 35134: Save popup size to cookies and use that instead
Follow the original test-plan, open the pop-up and resize to whatever size.
Close the pop-up, open again, notice it opens to the same size it was previously closed.

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>
2025-03-19 17:34:56 +01:00
Lucas Gass d50baeabac
Bug 35134: Make cn_browser popup responsive to screen size
To test:
1. Use the cn_browser.pl plugin for the 952$o ( call number )
2. Add or edit an item and select the `...` to the right of the call
   number field.
3. The pop-up is hardcoded as 500px x 400px pop-up.
4. APPLY PATCH
5. Clear browser cache and try again. The window width should now be
   half of the current screen size. The window height should be 100% of
   the screen height.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
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>
2025-03-19 17:34:55 +01:00
Hammat Wele e303854076
Bug 33224: OPACHoldsIfAvailableAtPickup and no on-shelf holds don't mix well
When OPACHoldsIfAvailableAtPickup preference is set to Don't allow and circulation rules allow on-shelf holds only if any unavailable, and we have a record with a checked out copy at Centerville and an available copy at Midway, a Midway patron should not be able to place a hold for pickup at Midway since the Midway copy is available.

This is the setting:
- circulation rules allow on-shelf holds only if any unavailable
- OPACHoldsIfAvailableAtPickup is set to Don't allow

To test:
1. Set up the circulation rule so that on-shelf holds are allowed ('Yes')
2. Create a record with two items, one at Centerville and one at Midway
3. Check out the Centerville item
4. Log into the OPAC with a Midway patron (I used Henry Acevedo)
5. Try to place a hold on the record
   --> Midway is not a valid pickup location (correct behaviour)
6. Cancel
7. Change the circulation rules so that on-shelf holds are only allowed 'if any unavailable'
8. Try to place a hold on the record from the OPAC again
   --> The system allows you to place the hold for pickup at Midway (incorrect behaviour)
9. Optionally, check the Holds to pull for Midway (the hold is there, it shouldn't)
10. Optionnaly, check in the Midway item (it is trapped for Henry's hold)
11. Apply the patch
12. Try again to place a hold on the record from the OPAC
   --> it is impossible to select Midway, Midway is not a valid pickup location

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>
2025-03-19 17:34:55 +01:00
Emily Lamancusa 8ae546b31b
Bug 39353: (QA follow-up) Clarify error message
Signed-off-by: Emily Lamancusa <emily.lamancusa@montgomerycountymd.gov>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-19 17:34:54 +01:00
Jonathan Druart 488d0042e6
Bug 39353: Prevent tidy.pl to empty template files
In ktd context:
if host's node_modules ktd has been generated prior to bug 38644, the template-toolkit's
prettier plugin is not there and prettier will empty the file.

It seems to be a prettier bug, and the following behaviour is confusing:

From the host:
% yarn run prettier --write koha-tmpl/intranet-tmpl/prog/en/modules/test.tt
yarn run v1.22.22
$ prettier koha-tmpl/intranet-tmpl/prog/en/modules/test.tt
[error] Cannot find module '@koha-community/prettier-plugin-template-toolkit'
[error] Require stack:
[error] - /home/jonathan/workspace/koha/node_modules/prettier/index.js
[error] - /home/jonathan/workspace/koha/node_modules/prettier/cli.js
[error] - /home/jonathan/workspace/koha/node_modules/prettier/bin-prettier.js
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

=> The file is not modified

Within ktd:
$ yarn run prettier --write koha-tmpl/intranet-tmpl/prog/en/modules/test.tt
yarn run v1.22.22
$ prettier --write koha-tmpl/intranet-tmpl/prog/en/modules/test.tt
koha-tmpl/intranet-tmpl/prog/en/modules/test.tt 6ms
Done in 0.39s.

=> No error, and the file is emptied!

It seems that the plugin is found by prettier but not used (?)

Test plan:
1. Follow this from step 1 to 14
   https://gitlab.com/koha-community/koha-testing-docker/-/issues/483
2. Apply patch
3. misc/devel/tidy.pl --no-write koha-tmpl/intranet-tmpl/prog/en/modules/intranet-main.tt
   It should print the new error message
4. Make a change to a .tt file, commit
5. There will be a message about and issue with prettier. But it will
   still commit. It's expect.
6. Inspect and see that the commit has the changes

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Emily Lamancusa <emily.lamancusa@montgomerycountymd.gov>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-19 17:34:54 +01:00
Jonathan Druart 8e0d00dd76
Bug 38944: Tidy t/db_dependent/Record/Record.t
The generated patch was big and I skipped the git hook :-/

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-19 17:34:53 +01:00
Martin Renvoize cb71027f14
Bug 37171: Add serial note to serial claims screen
This patch adds the serial note field into the serials claims display
table.

Test plan:
1) Add a Serial
2) View the serial 'Serial collection'
3) Use the 'Edit serials' option to add a note to an expected, late
   serial issue.
4) View the serial claims for the Vendor of that serial
5) Note the new 'Serial notes' column in the display of claims
6) Signoff

Sponsored-by: Loughborough University <https://lboro.ac.uk/>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Baptiste Wojtkowski <baptiste.wojtkowski@biblibre.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-19 11:55:31 +01:00
Aleisha Amohia 0f077950fc
Bug 18798: Use Koha.Preference in OPAC Reading Record
This patch uses the Koha.Preference plugin method for the following
sysprefs:
 - OPACMySummaryHTML
 - OPACAmazonCoverImages
 - SyndeticsEnabled
 - SyndeticsCoverImages
 - SyndeticsClientCode
 - GoogleJackets
 - BakerTaylorEnabled
 - BakerTaylorBookstoreURL

To test confirm that enabling and disabling the above sysprefs does not
break anything.

Sponsored-by: Catalyst IT
Signed-off-by: Owen Leonard <oleonard@myacpl.org>

I'm not able to test Syndetics but everything else works correctly.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-19 11:55:30 +01:00
Martin Renvoize 84c5e81b07
Bug 38663: (follow-up) Make database update idempotent
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-19 11:55:30 +01:00
Lari Taskula 3c6b7ae201
Bug 39265: Hide library drop-down from opac-memberentry if there is only one library
To test, apply the patch and enable PatronSelfRegistration.

- Modify the PatronSelfRegistrationLibraryList system preference to
  include only one library.
- Go to the self-registratoin page in the OPAC.
- Under "Home library," you should see the library name. If you inspect
  the source you should see the library branchcode in a hidden form.
- Confirm that the form submission includes the correct library
  information.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-19 11:55:29 +01:00
Nicolas Hunstein 0be7d23b4c
Bug 39005: update the explanatory message of Force new patron password reset in the patron category form
updates explanatory message "Choose whether staff created patrons of
this category be forces into resetting their passwort after their first
OPAC login" to "Choose whether staff-created patrons of this category
are forced to change their password after their first OPAC login"

to test:
- go to Administration page
- go to patron categories
- open the patron category form for example by clicking on "New
  category"
- check there is the string "Choose whether staff created patrons of
  this category be forces into resetting their passwort after their
  first OPAC login"

- apply patch
- verify there is the string "Choose whether staff-created patrons of
  this category are forced to change their password after their first
  OPAC login" now

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-19 11:55:29 +01:00
Owen Leonard 6c95ae68be
Bug 39354: (follow-up) Override additional BS5 CSS for multiple-select
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-19 11:55:28 +01:00
Owen Leonard 09c79110a1
Bug 39354: Remove unintended Bootstrap 5 change to scroll-behavior
This patch updates the "variables" SCSS file in the OPAC and staff
interface in order to disable the "smooth scroll" behavior introduced in
Bootstrap 5. This was an unexpected and unintentional change.

The patch also corrects another unexpected side-effect of the BS5
upgrade: A change to the "cursor" property of elements with a
".placeholder" class. This class is used by the multiple-select jQuery
plugin found in some system preference controls.

To test, apply the patch and rebuild the staff and OPAC CSS.

- Clear your browser cache if necessary.
- In the staff interface, go to Administration -> System preferences ->
  Circulation, and click "Patron restrictions" in the left-hand sidebar.
  The page should jump immediately to that section without any scrolling
  effect.
- Go to the "Article requests" section of that page. Hover your cursor
  over a dropdown which doesn't have any option selected. Your cursor
  should not change to a "waiting" cursor.

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>
2025-03-19 11:55:27 +01:00
Lucas Gass 37c8c6606a
Bug 39270: Check to make sure checkouts are not already booked
To test:

1. Find an item that is bookable, I turned on Bookable at the item type level for BK. I am using biblionumber=28 in k-t-d with 3 items
2. Book item with barcode ( 39999000001297 ). I did March 7 - April 1
3. Book item with barcode ( 39999000001259 ). I did March 7 - April 1
4. Now checkout 39999000001297 to the patron is was booked to. When asked about early collection say yes.
5. Now item with barcode ( 39999000001273 ) is not checked out or booked. It should be bookable
6. Try to book it, it is not available till April 2, though it should be available right now.
7. APPLY PATCH
8. Try the bookings again.
9. You should correctly not be able to book 39999000001297 or 39999000001259.
10. You should be able to book 39999000001273.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-19 11:55:27 +01:00
Owen Leonard 1045dc1224
Bug 39357: Wrong sidebar menu on batch checkout page
This patch updates the batch checkout page template so that it shows the
patron detail sidebar instead of the circulation navigation sidebar.

To test, apply the patch and enable BatchCheckouts if necessary.

- Open a patron record for checkout.
- Click "Batch check out" in the left-hand sidebar.
- The sidebar should show patron details and links like "Check out,"
  "Details," etc.

Sponsored-by: Athens County Public Libraries

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-19 11:55:26 +01:00
David Gustafsson 7dc5f09030
Bug 39334: (follow-up) Preserve order when adding patron attributes
To test:
1) Run tests in t/db_dependent/api/v1/patrons_extended_attributes.t, serveral should fail
2) Apply patch
3) Run the tests in 1) again, all should now pass

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-19 11:55:26 +01:00
Owen Leonard ab2c692922
Bug 37250: (follow-up) More improvements to menus
- Add highlighting to new sidebar menu
- Make labels more consistent in menus, breadcrumbs, and titles
- Add 'Print barcode range' link to the labels home page and sidebar
  menu.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-17 11:59:55 +01:00
Owen Leonard c94c27ea34
Bug 37250: Redesign labels home page to match other module home pages
This patch changes the labels home page so that it shows the links which
previously were buried in a dropdown menu. Generally speaking we
shouldn't be using the button toolbar for navigation.

To test, apply the patch and go to Cataloging -> Label creator.

- You should see links styled like they are on the circulation or
  cataloging home page.
- If you follow any of those links you should see a new menu in the
  sidebar which has all the navigation items previously in the "Manage"
  dropdown menu.

Sponsored-by: Athens County Public Libraries
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>
2025-03-17 11:59:54 +01:00
Victor Grousset/tuxayo f6ed6fc62b
Bug 39130: (QA follow-up): Ignore useful untidy part of sample.tt
And fix a minor legit tidy issue above.

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-17 11:59:54 +01:00
Julian Maurice 6fcca08f41
Bug 39130: Add unit tests for xgettext.pl
Test plan:
1. Run `prove t/db_dependent/misc/translator/xgettext.pl.t`

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-17 11:59:53 +01:00
Jonathan Druart d85c6ec0b4
Bug 38993: Restore add patrons to list
Signed-off-by: Paul Derscheid <paul.derscheid@lmscloud.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-17 11:59:53 +01:00
Jonathan Druart 72c45bd209
Bug 38993: Use the @fetch alias
Signed-off-by: Paul Derscheid <paul.derscheid@lmscloud.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-17 11:59:52 +01:00
Paul Derscheid 27524f87e3
Bug 38993: (follow-up) Add 'fetch' alias to rspack config
Signed-off-by: Paul Derscheid <paul.derscheid@lmscloud.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-17 11:59:52 +01:00
Jonathan Druart 8bfb9451bf
Bug 38993: Merge 'fetch' directories
Signed-off-by: Paul Derscheid <paul.derscheid@lmscloud.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-17 11:59:51 +01:00
Lucas Gass 8f65d7f2be
Bug 15461: Fix typo in items/catalogue_detail.inc
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-17 11:59:51 +01:00
Lucas Gass 8d6842930b
Bug 15461: Add stand alone shelving location column to holdings table
To test:
1. APPLY patch and restart_all
2. Go the detail page for some records and see the shelving location column.
3. Make sure the data looks correct
4. Try Table settings to make sure the column can be properly hidden

NOTE: You cannot currently search the holdings table for AV descriptions, only the code.
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>
2025-03-17 11:59:50 +01:00
Martin Renvoize 914022d30d
Bug 26869: Use the default framework
The unit tests highlighted that without passing an frameworkcode to the
MarcSubfieldStructures->find call we throw errors as we can't identify
the correct subfield structure rules to apply.

This patch adds the default frameworkcode, empty string, to the lookup.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-17 11:59:50 +01:00
Martin Renvoize f47cd0fe2a
Bug 26869: Unit tests
This patch adds comprehensive unit tests for the two newly introduced
methods.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-17 11:59:49 +01:00
Pedro Amorim bf19d27f5b
Bug 26869: Add MARC modification template mapping validation
Follow the same test plan as above, but attempt to add an item without having at least homebranch, holdingbranch and type subfields.
Notice you now get an error with an appropriate message and the item is not added.

Signed-off by: Chris Rowlands <chris.rowlands6@nhs.net>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-17 11:59:49 +01:00
Pedro Amorim c225641cca
Bug 26869: Add items from MARC in BatchUpdateBiblio
Test plan, clean k-t-d:

Before test, pick a record and confirm it has no items, for this test we're using biblio 79:
<staff_url>/cgi-bin/koha/catalogue/detail.pl?biblionumber=79

1) Add a new MARC modification template, visit:
<staff_url>/cgi-bin/koha/tools/marc_modification_templates.pl
2) Click 'New template', enter a name and click 'Submit'
3) Click 'New action'
4) Pick 'Add new' and enter '952' as field and 'a' as subfield, enter 'CPL' as value
5) Click 'Add action'
6) Do a batch record modification, visit:
<staff_url>/cgi-bin/koha/tools/batch_record_modification.pl
7) Select the tab 'Enter a list of record numbers' and enter '79'
8) On the template, select the template previously created. Click 'continue'
9) Click 'Modify selected records'. Click 'View detail of the enqueued job'. Notice success message is shown with no errors
10) Check the biblio, visit:
<staff_url>/cgi-bin/koha/catalogue/detail.pl?biblionumber=79
11) Notice it now has an item with homebranch 'CPL'

test with 952 but with other subfields, without subfield 'a' -> confirm 'FK constraint' error is shown, no modification made
test with more than one occurrence of 952$a -> confirm 'FK constraint' error is shown, no modification made
test with 952$a too long e.g. 'aaaaaaaa' -> confirm 'too long' error is shown
test with no 952 mapping -> confirm things work as intended
test with 952 mapping plus other tags -> confirm things work as intended

prove koha/t/db_dependent/Koha/BackgroundJobs/BatchUpdateBiblio.t
prove koha/t/db_dependent/Koha/BackgroundJob/BatchUpdateBiblio.t

Signed-off by: Chris Rowlands <chris.rowlands6@nhs.net>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-17 11:59:48 +01:00
Jonathan Druart c952948a56
Bug 38944: Fix tidiness t/db_dependent/check_kohastructure.t
This is an odd one, why this change?

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-17 11:59:48 +01:00
Janusz Kaczmarek 6cffdc7005
Bug 39248: Wrong 007/5 label for # in Nonprojected graphic
According to https://loc.gov/marc/bibliographic/bd007k.html the label
for a blank in 007/5 for Nonprojected Graphic should be "No secondary
support". Currently, it sais wrongly "No attempt to code".

Test plan:
==========
1. Start editing a new record. For field 007 use the value builder.
   Choose Nonprojected graphic as Material type. Note that under
   position 05 you get wrong label 'No attempt to code.
2. Apply the patch ; restart_all.
3. Repeat p. 1. You should now see 'No secondary support' for #.

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>
2025-03-17 08:21:33 +01:00
phette23 5753d63a5c
Bug 39246: Patron category charge limit inputs should be larger
To test:
- From /cgi-bin/koha/admin/categories.pl open a patron category to editing
- Note the short length of the three consecutive 'charge limit' inputs
- Apply patch
- Edit a patron category; there is no space to put in a limit like 100.00

Sponsored-By: California College of the Arts
Signed-off-by: Magnus Enger <magnus@libriotech.no>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-17 08:21:32 +01:00
Owen Leonard c1b2f62b6b
Bug 39262: Don't pass string literals to setTimeout
This patch updates a few places in our code where we pass string
literals to JavaScript's setTimeout() function. This is not recommended:
https://developer.mozilla.org/en-US/docs/Web/API/Window/setTimeout#passing_string_literals

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

- In the OPAC, perform a catalog search. From the search results page,
  test adding some items to the cart. The "Item has been added to your
  cart" message should appear and disappear correctly.
- In the staff interface, view the contents of a list. Click the "Print
  list" button in the toolbar. A new tab should load and trigger the
  browser's print window. Printing the page or cancelling should
  automatically close the tab.
- Go to Acquisitions -> Vendor -> Basket groups. In the "Open" tab,
  click the "Close and export as PDF" button. This should trigger
  a page reload and the creation of a PDF. The basket group should now
  appear under the "Closed" tab.

Sponsored-by: Athens County Public Libraries
Signed-off-by: David Cook <dcook@prosentient.com.au>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-17 08:21:31 +01:00
Lucas Gass 6f084f7f3e
Bug 39308: Add space between preferred name and middle name
To test:
1. Find a patron with a middle name.
2. ON the checkout page or details page notice it displays like this:
   'EdnaMiddleName Acosta'
3. APPLY PATCH
4. Try again, middle name should include a space now.

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>
2025-03-17 08:21:31 +01:00
Owen Leonard b34d28e807
Bug 39189: (follow-up) Add missing container to moredetail.tt
Signed-off-by: Phil Ringnalda <phil@chetcolibrary.org>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-17 08:21:30 +01:00
Owen Leonard b29e0d20f2
Bug 39189: (follow-up) Add a missing container to patron entry form
Signed-off-by: Phil Ringnalda <phil@chetcolibrary.org>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-17 08:21:30 +01:00
Owen Leonard 20a6972ca4
Bug 39189: (follow-up) Add containers to the template markup
Some sections of the patron entry form do not have a single container to
be collapsed using the jQuery's next(). Since this patch converts it
from nextAll() it's necessary to have a single container to match.

Signed-off-by: Phil Ringnalda <phil@chetcolibrary.org>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-17 08:21:29 +01:00
Owen Leonard cc418bb101
Bug 39189: Fix collapsing panels on moredetail.tt
This patch removes a duplicate togglePanel function and a duplicate
click handler from moredetail.tt. Bug 38227 made both global by adding
them to staff-global.js.

Also fixed: Converted a mistaken use of "__" to "_".

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

- Perform a catalog search and view the details of a title with multiple
  items.
- On the bibliographic detail page, click "Items" in the sidebar.
- Click a "Barcode XXXX" heading to confirm that it collapses and
  expands that section correctly.
- Collapse all sections and then test the barcode links in the sidebar.
  Clicking any of them should expand the correct panel and scroll to
  that section.
- Test the other pages using the togglePanel function: Patron entry and
  the authority search from triggered from the MARC editor.

Signed-off-by: Phil Ringnalda <phil@chetcolibrary.org>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-17 08:21:29 +01:00
Katrin Fischer 713a23bb0a
Bug 39141: Fix page heading to read "Check out"
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-17 08:21:28 +01:00
Owen Leonard 20f42661fc
Bug 39141: (follow-up) Style input and add autocomplete
This patch adds some friendly styling to the new form and adds
autocomplete functionality.

Signed-off-by: Barbara Johnson <barbara.johnson@bedfordtx.gov>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-17 08:21:28 +01:00
Nick Clemens 3dcc194ff5
Bug 39141: Add a patron search box on Circulation - Checkout
This patch adds a search box when visiting the check out page before a patron has been
selected

To test:
1 - From Koha home browse to Circulation -> Check out
2 - Note an empty page, though you have the header search forms
3 - Apply patch
4 - Repeate above - now you have a patron search box
5 - Search by name or cardnumber
6 - Confirm search works as expected
7 - Sign off!

Signed-off-by: Barbara Johnson <barbara.johnson@bedfordtx.gov>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-17 08:21:27 +01:00
Katrin Fischer 5590baaf01
Bug 38615: DBRev 24.12.00.019
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-17 08:21:27 +01:00
Brendan Lawlor ed715a78a5
Bug 38615: (follow-up) Unit tests
Adds tests for the new HoldCancellationRequestSIP preference

Test plan:
1. prove t/db_dependent/SIP/ILS.t
2. prove t/db_dependent/SIP/Transaction.t

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
2025-03-17 08:21:26 +01:00
Lucas Gass 8c8c480db0
Bug 38615: Add ability to set hold cancellation request via SIP
To test:
1. APPLY PATCH, updatedatabase, restart_all
2. Search for the new system preference HoldCancellationRequestSIP, it should be set to 'Don't'. Leave it as is.
3. Make some holds, either in the staff client of via SIP.
    -/kohadevbox/koha/misc/sip_cli_emulator.pl -a localhost -p 6001 -l CPL -su term1 -sp term1 -m hold --patron 23529000035676 --item 39999000001310 --hold-mode +

4. Mark the hold as waiting.
5. Cancel it via SIP:
    -/kohadevbox/koha/misc/sip_cli_emulator.pl -a localhost -p 6001 -l CPL -su term1 -sp term1 -m hold --patron 23529000035676 --item 39999000001310 --hold-mode -

6. The hold is cancelled like normal, the screen msg should be "Hold Cancelled."
7. Change HoldCancellationRequestSIP to 'Do'.
8. Do steps 3-5 again.
9. Now the screen message is 'Hold Cancellation Requested.'
10. Now check Holds awaiting pickup. In the "Holds with cancellation requests" tab you should now see the hold from step 8.

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>
2025-03-17 08:21:26 +01:00
Lucas Gass abc532b90f
Bug 38615: Atomic update
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>
2025-03-17 08:21:25 +01:00