koha.git
7 months agoBug 23798: Convert OpacMaintenanceNotice system preference to additional contents
Owen Leonard [Thu, 12 Oct 2023 14:17:57 +0000 (14:17 +0000)]
Bug 23798: Convert OpacMaintenanceNotice system preference to additional contents

This patch moves the OpacMaintenanceNotice system preference into HTML
customizations, making it possible to have language-specific content.

The patch modifies the OPAC maintenance page template so that the
language selection menu can be shown correctly according to the
OpacLangSelectorMode preference.

To test you should have some content in the OpacMaintenanceNotice
system preference before applying the patch. Apply the patch and run the
database update process.

- In the staff client, go to Tools -> HTML customizations and verify
  that the content from OpacMaintenanceNotice is now stored there.
- The HTML customization entry form should offer OpacMaintenanceNotice
  as a choice under "Display location."
- Update and reinstall active translations (for instance fr-FR):
  - perl misc/translator/translate update fr-FR
  - perl misc/translator/translate install fr-FR
- Enable the translation if necessary under Administration -> System
  preferences -> language.
- Enable the "opaclanguagesdisplay" preference if necessary.
- Enable the "OpacMaintenance" system preference.
- Edit the OpacMaintenanceNotice HTML customization and add unique
  content to the "fr-FR" tab.

- Try to view any page in the OPAC. You should see the content you
  added to the OpacMaintenanceNotice HTML customization.
- Switch to your updated translation. The page should redisplay with
  your translated content.
- Go to Administration -> System preferences and search for
  "OpacMaintenanceNotice." The search should return no
  results.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35261: Update links for self registration avoiding "here"
Owen Leonard [Mon, 6 Nov 2023 14:48:59 +0000 (14:48 +0000)]
Bug 35261: Update links for self registration avoiding "here"

This patch updates several OPAC templates to change the wording of the
self registration link to "Create an account."

Minor adjustments to CSS have been made to make whitespace around the
links more comfortable.

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

- If necessary enable the PatronSelfRegistration system preference is
  enabled.
- Go to the OPAC and check the login form in the right-hand sidebar.
- Click the "Log in to your account" link in the header and check the
  form displayed in the modal window.
- Navigate directly to /cgi-bin/koha/opac-user.pl and check the link on
  the login page.
- Complete the self-registration process and check the link in the
  right-hand sidebar menu on the "Registration complete" page.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 21284: (QA follow-up) Fix QA script issues
Kyle M Hall [Fri, 3 Nov 2023 16:45:22 +0000 (16:45 +0000)]
Bug 21284: (QA follow-up) Fix QA script issues

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 21284: (QA follow-up) Rename itemonhold and recordonhold
Kyle M Hall [Fri, 3 Nov 2023 16:43:47 +0000 (16:43 +0000)]
Bug 21284: (QA follow-up) Rename itemonhold and recordonhold

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 21284: ILS-DI: Allow GetPatronInfo to tell if a loaned item is on hold by someone...
Matthias Meusburger [Fri, 27 Apr 2018 14:22:28 +0000 (16:22 +0200)]
Bug 21284: ILS-DI: Allow GetPatronInfo to tell if a loaned item is on hold by someone else.

This patch adds two new entries in the loans section of GetPatronInfo response:

 - itemonhold: number of holds on this specific item.
 - recordonhold: number of holds on the record.

It allows an ILS-DI client to know if a loaned item is already on hold by someone else, and how many holds there are.

Test plan:
1. Apply the patch.
2. Enable the ILS-DI system preference.
3. Check out an item for a patron and make sure there no other holds at either an item or record level.
4. Check that the new itemonhold and recordonhold entries displayed are equal to zero (example: http://127.0.0.1:8080/cgi-bin/koha/ilsdi.pl?service=GetPatronInfo&patron_id=19&show_contact=0&show_loans=1).
5. Add either a record or item level hold for the record used in step 2.
6. Check that itemonhold and recordonhold values are incremented accordingly.
   Note: a hold at an item level counts as a hold at a record level, but not vice-versa.
7. Run the tests and make sure they pass: prove t/db_dependent/ILSDI_Services.t
8. Sign-off!

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34977: (QA follow-up) Tidy code
Kyle M Hall [Fri, 3 Nov 2023 16:10:42 +0000 (12:10 -0400)]
Bug 34977: (QA follow-up) Tidy code

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34977: The "Patron Lists" only allows deleting one list at a time
Salah Ghedds [Wed, 4 Oct 2023 18:43:54 +0000 (14:43 -0400)]
Bug 34977: The "Patron Lists" only allows deleting one list at a time

In the patrons lists, it's only possible to delete on list at a time. This patch add the possibility to select lists and delete them at once.

TEST PLAN
1. Apply the patch.
2. Create at least 2 patron lists (Navigate to Tools > Patron lists > New patron list).
3. Select the lists you want to delete.
4. Click the "Delete selected lists" button.
5. Confirm that the selected lists have been deleted.
6. Ensure that the button cannot be used if no list is selected.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34938: (QA follow-up) Tidy code
Kyle M Hall [Fri, 3 Nov 2023 15:58:30 +0000 (11:58 -0400)]
Bug 34938: (QA follow-up) Tidy code

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34938: Add collection column to hold ratio report
Lucas Gass [Wed, 27 Sep 2023 18:38:31 +0000 (18:38 +0000)]
Bug 34938: Add collection column to hold ratio report

To test:
1. Create enough holds on items so that they will appear on the holds ratio report.
2. Visit circ/reserveratios.pl by going to Circulation > Holds ratios
3. No collection column.
4. Apply patch and restart services
5. Look again at circ/reserveratios.pl, now you should see a collection column.
6. Ensure that the data in the column looks correct.
7. Go to Administration > Table settings to ensure you can hide that column, and other columns in the table.

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 15157: (QA follow-up) Some more changes
Marcel de Rooy [Fri, 3 Nov 2023 09:33:39 +0000 (09:33 +0000)]
Bug 15157: (QA follow-up) Some more changes

Renamed some vars. Removed unused $success.
Extended die statement.
Added Modern::Perl.

Added verbose parameter.
Added some logic around the confirm parameter. Making it possible
to run the script in 'dry' mode.
Print totals at the end.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 15157: Add my $amount and fix options
Emmi Takkinen [Wed, 2 Feb 2022 13:32:00 +0000 (15:32 +0200)]
Bug 15157: Add my $amount and fix options

Variable my $amount was missing. Also option
amount has to be declared as integer and
option confirm is no longer string.

Sponsored by: Koha-Suomi Oy

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
[EDIT] Run perltidy to resolve one line.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 15157: (follow-up) Add ability to set lower limit
Martin Renvoize [Fri, 21 Jan 2022 16:21:29 +0000 (16:21 +0000)]
Bug 15157: (follow-up) Add ability to set lower limit

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 15157: Cronjob to debar Patrons with unpaid accountlines
Olli-Antti Kivilahti [Mon, 9 Nov 2015 11:19:07 +0000 (13:19 +0200)]
Bug 15157: Cronjob to debar Patrons with unpaid accountlines

If your library wants to debar all Borrower who haven't paid
their fines by the end of the year, this script will do that
trick :)

You can give the message from a file if the cronjob runner
doesn't deal with quotes, or as a command-line parameter.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Bug 15157: Update script

This patch updates debarrBorrowersWithFines.pl script to match
changes made in bug 15156.

To test:
1. Have patron(s) with unpaid fines
2. Run e.g debarrBorrowersWithFines.pl --confirm -m "This is a description of you bad deeds"
(test other options too)
3. Confirm patron(s) with fines has been debarred with the explanation

Sponsored-by: Koha-Suomi Oy
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Bug 15157: Modernise and Update for bug 15156

This patch updates the script to use filter_by_amount_owed, renames
it to debar_patrons_with_fines.pl and moves it to the cronjobs
directory whilst also adding a copyright notice and POD.

We could add a series of options to the script to allow more fine
grained control.

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
[EDIT] Run perltidy to resolve three lines.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 17617: DBRev 23.06.00.067
Tomas Cohen Arazi [Wed, 8 Nov 2023 14:31:25 +0000 (11:31 -0300)]
Bug 17617: DBRev 23.06.00.067

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 17617: Unify DBRev
Tomas Cohen Arazi [Wed, 8 Nov 2023 14:28:32 +0000 (11:28 -0300)]
Bug 17617: Unify DBRev

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 17617: Confirmation email to patron when hold is placed
Aleisha Amohia [Thu, 26 Oct 2023 21:06:56 +0000 (21:06 +0000)]
Bug 17617: Confirmation email to patron when hold is placed

This enhancement adds a new notice HOLDPLACED_PATRON that will be sent to a patron when a hold is placed for them. It depends on the new system preference EmailPatronWhenHoldIsPlaced to be enabled.

To test:
1) Update database and restart services
2) Go to Koha Administration -> System preferences and search for the new EmailPatronWhenHoldIsPlaced syspref. It should be disabled by default - leave it disabled for now.
3) Search for a record and go to the Holds tab. Place a hold for your patron.
4) Go to your patron's account and go to the Notices tab. Confirm the HOLDPLACED_PATRON notice was NOT queued.
5) Enable the EmailPatronWhenHoldIsPlaced syspref.
6) Repeat steps 3 and 4. Confirm the HOLDPLACED_PATRON notice WAS generated and queued.
7) Confirm tests pass t/db_dependent/Holds.t

Sponsored-by: Fire and Emergency New Zealand
Signed-off-by: Kelly <kelly@bywatersolutions.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 17617: Unit tests
Aleisha Amohia [Thu, 26 Oct 2023 21:06:35 +0000 (21:06 +0000)]
Bug 17617: Unit tests

Signed-off-by: Kelly <kelly@bywatersolutions.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 17617: Add HOLDPLACED_PATRON notice
Aleisha Amohia [Thu, 26 Oct 2023 02:37:01 +0000 (02:37 +0000)]
Bug 17617: Add HOLDPLACED_PATRON notice

A HOLDPLACED notice exists and is used by the emailLibrarianWhenHoldIsPlaced function, but libraries may want to use different wording when emailing patrons.

Signed-off-by: Kelly <kelly@bywatersolutions.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 17617: EmailPatronWhenHoldIsPlaced system preference
Aleisha Amohia [Thu, 26 Oct 2023 02:02:12 +0000 (02:02 +0000)]
Bug 17617: EmailPatronWhenHoldIsPlaced system preference

Signed-off-by: Kelly <kelly@bywatersolutions.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 25814: Tidy code
Kyle M Hall [Thu, 2 Nov 2023 16:33:52 +0000 (12:33 -0400)]
Bug 25814: Tidy code

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 25814: Add comment to example sip config file
Kyle M Hall [Thu, 2 Nov 2023 16:25:06 +0000 (16:25 +0000)]
Bug 25814: Add comment to example sip config file

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 25814: SIP: Add a message on successful checkin.
Matthias Meusburger [Thu, 17 Oct 2019 14:48:43 +0000 (16:48 +0200)]
Bug 25814: SIP: Add a message on successful checkin.

Currently, Koha does not return a message on successful SIP checkin.

This patchs adds the show_checkin_message option to SIPconfig.xml, disabled by
default. When enabled, the following message is displayed on SIP checkin:

"Item checked-in: {homebranch|permanent_location} - {location}"

The UseLocationAsAQInSIP system preference is used to determine whether the
homebranch or the permanent location will be used.

Test plan:

 - Perform a successful checkin using SIP
 - Check that the message is in the checkin response (AF field)
 - prove t/db_dependent/SIP/Transaction.t

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Edit (tcohen): tidied the whole subtest.
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 20755: DBRev 23.06.00.066
Tomas Cohen Arazi [Wed, 8 Nov 2023 13:49:37 +0000 (10:49 -0300)]
Bug 20755: DBRev 23.06.00.066

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 20755: (QA follow-up) Add descriptions to system preferences
Katrin Fischer [Wed, 25 Oct 2023 09:39:30 +0000 (09:39 +0000)]
Bug 20755: (QA follow-up) Add descriptions to system preferences

Updates both the atomic update file and the sysprefs.sql with
* explanations for each preference
* type = "Free"

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 20755: (QA follow-up) Fix capitalization in system preference description
Katrin Fischer [Tue, 24 Oct 2023 15:40:51 +0000 (15:40 +0000)]
Bug 20755: (QA follow-up) Fix capitalization in system preference description

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 20755: (QA follow-up) Add unit tests
Katrin Fischer [Tue, 24 Oct 2023 15:27:42 +0000 (15:27 +0000)]
Bug 20755: (QA follow-up) Add unit tests

prove t/db_dependent/Letters.t

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 20755: Add separate email configuration for acquisition and serial emails
Raphael Straub [Fri, 29 Sep 2023 08:48:31 +0000 (08:48 +0000)]
Bug 20755: Add separate email configuration for acquisition and serial emails

This patch allows every library to define the From and Reply-to email addresses for acquisition and serial emails (orders and claims) sent by Koha.
Especially in large libraries with dedicated acquisition departments we need a way that vendors/booksellers can reply directly to the acquisition team and not to the library default email. The library email in the library configuration can then be used for circulation purposes only.

1) Apply patch, run database update
2) Make sure you have set up Koha to send up email (SMTP server, KohaAdminEmailAdress, etc.)
3) Make sure you have a vendor set up with a valid email address.
4) Check that you have four new system preferences:
  - AcquisitionsDefaultEMailAddress
  - SerialsDefaultEMailAddress
  - AcquisitionsDefaultReplyTo
  - SerialsDefaultReplyTo
5) Check that there is no change in behaviour if the four new system preferences are left empty:
All acquisition and serial emails are sent from the library email (or KohaAdminEmailAddress if no library email is set)
6) Create an order with at least one order line. Send the order to your vendor by email.
7) Create an acquisition claim notice and send it to your vendor.
8) Create a subscription linked to your vendor and with at least one late issue. Claim the issue.
9) There should be no change in behaviour: emails should be sent from library email (or KohaAdminEmailAddress if nothing is set on library level)
10) Configure different email addresses for system preferences:
  - First email address: AcquisitionsDefaultEMailAddress, SerialsDefaultEMailAddress
  - Second email address: AcquisitionsDefaultReplyTo, SerialsDefaultReplyTo
11) Repeat steps 6-8
12) Verify that the library specific acquisition and serial email addresses are used as From and Reply-to.

Sponsored-by: Karlsruhe Institute of Technology (KIT)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 33390: (QA follow-up) Rephrase some preferences
Katrin Fischer [Tue, 9 May 2023 21:38:02 +0000 (21:38 +0000)]
Bug 33390: (QA follow-up) Rephrase some preferences

* to include 'authorised value' in text
* to keep sentences on one line (translation)
* to use sentences instead of just links in some places

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 33390: (follow-up) move ItemsDeniedRenewal links to less confusing place
Lucas Gass [Mon, 24 Apr 2023 23:01:06 +0000 (23:01 +0000)]
Bug 33390: (follow-up) move ItemsDeniedRenewal links to less confusing place

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 33390: Add links to various system preference descriptions
Lucas Gass [Mon, 3 Apr 2023 21:09:51 +0000 (21:09 +0000)]
Bug 33390: Add links to various system preference descriptions

To test:
1. Apply patch and look at the descriptions of the following system preferences. Make sure each link works and makes sense:

DefaultLongOverdueChargeValue
DefaultLongOverdueLostValue and DefaultLongOverdueDays
DefaultLongOverdueSkipLostStatuses
UpdateItemWhenLostFromHoldList

NewItemsDefaultLocation
UpdateItemLocationOnCheckin

SkipHoldTrapOnNotForLoanValue
UpdateNotForLoanStatusOnCheckin
Reference_NFL_Statuses

ItemsDeniedRenewal

Signed-off-by: Catrina <catrina@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35198: Sort database column names alphabetically on automatic item modification...
Owen Leonard [Tue, 31 Oct 2023 13:48:11 +0000 (13:48 +0000)]
Bug 35198: Sort database column names alphabetically on automatic item modification page

This patch modifies the automatic item modification by age page so that
the rule entry form sorts <select>s alphabetically, making it easier to
find the entry you need.

The [% FOR field IN... %] directives now include the "sort" method, e.g.

    [% FOR field IN agefields.sort %]

To test, apply the patch and go to Cataloging -> Item modifications by
age

- Click the "Add rules" button, then the "Add rule" button.
- Check the "Age field," "Conditions," and "Substitutions" dropdowns to
  confirm that the choices are listed alphabetically.
- Fill in the form and save the rule.
- Go back and edit the rule you created. Check that the dropdowns are
  still correct.

Signed-off-by: Andrew Auld <andrew.auld@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34438: DBIC schema
Tomas Cohen Arazi [Wed, 8 Nov 2023 13:38:18 +0000 (10:38 -0300)]
Bug 34438: DBIC schema

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34438: DBRev 23.06.00.065
Tomas Cohen Arazi [Wed, 8 Nov 2023 13:25:46 +0000 (10:25 -0300)]
Bug 34438: DBRev 23.06.00.065

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34438: Add lang field to OPAC patron self registration form
Lucas Gass [Thu, 27 Jul 2023 20:32:14 +0000 (20:32 +0000)]
Bug 34438: Add lang field to OPAC patron self registration form

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34438: Database update
Lucas Gass [Tue, 31 Oct 2023 17:52:51 +0000 (17:52 +0000)]
Bug 34438: Database update

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 33050: Tidy
Tomas Cohen Arazi [Wed, 8 Nov 2023 13:10:23 +0000 (10:10 -0300)]
Bug 33050: Tidy

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 33050: Allow to specify quote char in runreport.pl
Fridolin Somers [Thu, 23 Feb 2023 06:40:14 +0000 (20:40 -1000)]
Bug 33050: Allow to specify quote char in runreport.pl

Add to script misc/cronjobs/runreport.pl quote char arg (only for CSV).
See perl doc https://metacpan.org/pod/Text::CSV#new

This patch also adds missing '--separator' in POD.

Test plan :
1 - Write a SQL report
2 - perl misc/cronjobs/runreport.pl --format csv 1 (or correct report number)
3 - Note you get double quotes
4 - Apply patch
5 - Repeat #2 - no change
6 - perl misc/cronjobs/runreport.pl --format csv --quote "'" 1
7 - Now it is single quote delimited
8 - perl misc/cronjobs/runreport.pl --format tsv --separator "'" 1
9 - Error is reported, you cannot set quote unless csv
10 - Try empty string as quote

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34557: DBRev 23.06.00.064
Tomas Cohen Arazi [Wed, 8 Nov 2023 13:04:23 +0000 (10:04 -0300)]
Bug 34557: DBRev 23.06.00.064

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34557: (follow-up) Make link more like button in staff interface
Owen Leonard [Fri, 18 Aug 2023 07:02:24 +0000 (07:02 +0000)]
Bug 34557: (follow-up) Make link more like button in staff interface

This patch adds Bootstrap button style to the link and changes the text
from "Load your checkouts" to "Show your checkouts."

The patch adds an anchor to the link so that the browser jumps down the
page a bit making the checkouts more visible.

The patch also corrects the includes for Font Awesome files. No icons
were loading because of incorrect asset links.

To test, follow the previous patch's test plan, checking that the button
looks correctly styled and that the page reloads with the checkout form
at the top.

Confirm that Font Awesome icons are loading throughout the page.

Signed-off-by: AndrewA <andrew.auld@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34557: Add SCOLoadCheckoutsByDefault system preference
Nick Clemens [Thu, 17 Aug 2023 09:10:54 +0000 (09:10 +0000)]
Bug 34557: Add SCOLoadCheckoutsByDefault system preference

This patch adds a enw system preference SCOLoadCheckoutsByDefault

When enabled, a patron's list o fcurrent checkouts will be loaded when the sign in to the SCO
module. If disabled, they will see link to load their checkouts. In either case, a new section
is added to the SCO to show a brief display of the last checked out it

To test:
1 - Enable WebBasedSelfCheck system preference
2 - Browse to:
    http://localhost:8080/cgi-bin/koha/sco/sco-main.pl
3 - Sign in the SCO user (or enable AutoSelfCheck)
4 - Sign in as a user with several items checked out
5 - Confirm you see a list of items checked out
6 - Apply patches, updatedatabase, restart_all
7 - 'Finish' and login patron to SCO again
8 - Confirm you still see the list
9 - 'Finish'
10 - Chenge the system preference
11 - Sign in to SCO, confirm checkouts do not load
12 - Confirm you see 'Load your checkouts' link
13 - Check an item out
14 - Confirm you see the last checkout, but not a list
15 - Attempt to checkout an item that cannot be checked out
16 - Confirm "Return to account summary" does not load checkouts
17 - Click "Load your checkouts"
18 - Confirm they load
19 - Check out another item, confrim they remain and are updated
20 - Checkout an item that cannot be issued
21 - Confirm 'Return to account summary' loads the checkouts again

Signed-off-by: Andrew Auld <andrew.auld@ptfs-europe.com>
Signed-off-by: AndrewA <andrew.auld@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35253: Add classes to materials specfied message on check in and checkout
Lucas Gass [Fri, 3 Nov 2023 17:48:00 +0000 (17:48 +0000)]
Bug 35253: Add classes to materials specfied message on check in and checkout

To test:
1. APPLY PATCH
2. Add a materials specified message to an item. ( 952$3 )
3. Add the following CSS to your IntranetUserCSS:

    .mats_spec_label { color: white; background: purple;  }
    .mats_spec_message { color: white; background: green; }

4. Checkout that item. Notice the message should be green and the label (Note about the accompanying materials:) should be purple.
5. Check in that item. Notice the message should be green and the label (Note about the accompanying materials:) should be purple.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34704: Remove regex for adding additional line breaks to print templates
Katrin Fischer [Tue, 7 Nov 2023 22:31:31 +0000 (22:31 +0000)]
Bug 34704: Remove regex for adding additional line breaks to print templates

This makes sure that we don't change the line breaking for either
HTML nor plain text print notices.
For plain text, the <pre> is used to keep the line breaks as defined
in the notices template.
For HTML we require on the line breaks added by block elements in the
HTML notice, not adding any additional ones like before.
This gives the full control of the formatting to the notice editor.

To test:
* Make sure your patron doesn't have an email address
* Make sure to check the hold filled notice in messaging preferences
* Place a old on any item
* Checkin the item
* Confirm hold
* Verify notices tab shows the Hold (print) notice
* ./misc/cronjobs/gather_print_notices.pl ./ --html
* Verify the generated file has the HTML output wrapped in pre.
* Reformat the HOLD print notice to be HTML by setting the checkbox.
  Mmake sure to add some empty lines for (they should not print later)
  and some <br>, <p>, <div>  - They should be reflected in the notice later.
* Repeat test.
* All should be well :)

Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35280: Fix patron attributes "clear" link in OPAC patron entry form
Owen Leonard [Tue, 7 Nov 2023 17:07:17 +0000 (17:07 +0000)]
Bug 35280: Fix patron attributes "clear" link in OPAC patron entry form

This patch makes a minor correction to the JavaScript controlling the
behavior of the "clear" link which appears on the patron entry form next
to patron attribute <select>s or <textarea>s which are editable in the
OPAC.

To test, apply the patch and create patron attributes
which have both "Display in OPAC" and "Editable in OPAC" checked.

- Create one which is tied to an authorized value, and one which isn't.
- Log in to the OPAC and click the "Personal details" tab.
- In the entry form, find the patron attribute fields under the
  Additional information" heading..
- Select a value in the dropdown, and enter text in the textarea.
- Confirm that clicking the corresponding "Clear" link for each works as
  expected.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34857: Do not enable hidden select element (regression from bug 33233).
Andreas Jonsson [Tue, 7 Nov 2023 13:42:58 +0000 (14:42 +0100)]
Bug 34857: Do not enable hidden select element (regression from bug 33233).

Test plan:

Using Chrome as web browser:

* Go to opac advanced search
* Press "more options"
* Search for two keywords using "and" operator (on ktd search for idea AND behind, which matches 1 result)
* Search for two keywords using "or" operator (on ktd search for idea OR behind, which matches 4 results)
* Search for two keywords using "not" operator (on ktd search for idea NOT behind, which matches 2 results)

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35272: Add padding above vendor contracts section
Owen Leonard [Tue, 7 Nov 2023 11:54:56 +0000 (11:54 +0000)]
Bug 35272: Add padding above vendor contracts section

This patch makes minor updates to the CSS and markup of the vendor
detail page so that the different page sections have the correct
margins.

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

- In Acquisitions, locate a vendor and add at least one contract if
  necessary.
- View the vendor details page. Each section (Vendor details, Ordering
  information, Contracts) should have comfortable and consistent
  margins.

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 31041: (follow-up) Clean up and generalise
Martin Renvoize [Tue, 7 Nov 2023 11:35:22 +0000 (11:35 +0000)]
Bug 31041: (follow-up) Clean up and generalise

This patch cleans out the print media css rules that were originally
added for modalprinting.  The window.open method is simpler to maintain
and will more reliably print modal content as expected.

We factor out the printer code into it's own JS asset that we can apply
to other printable modals and then use it in the two existing places
where such modals have been defined already (cashup summary and bundle
confirmation).

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 31041: Prevent duplicate display of cashup summary when printing
Lucas Gass [Thu, 2 Nov 2023 19:56:00 +0000 (19:56 +0000)]
Bug 31041: Prevent duplicate display of cashup summary when printing

To test:
1. Have POS on.
2. Have some registers and items for sale. Make some sales to 'Cashup'.
3. If you have enough enough lines in the table so that 'register.pl' would print on 2 or more pages, the summary will be duplicated that same number of time.

If you are lazy like me and don't want to make that many transaction you can also add some content to the page like this:

for (let i = 0; i < 100; i++) {
  $('#register').append('<h1>TEST</h1>');
}

4. APPLY PATCH, clear browser cahche
5. Try printing again, you should only get one cashup summary when printing.

Signed-off-by: Juliet Heltibridle <jheltibridle@rcplib.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 31041: add modal_printer.js asset to registers.tt
Lucas Gass [Tue, 7 Nov 2023 22:32:47 +0000 (22:32 +0000)]
Bug 31041: add modal_printer.js asset to registers.tt

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34931: Remove fieldset/legend in favor of div/h3
Lucas Gass [Thu, 12 Oct 2023 22:14:10 +0000 (22:14 +0000)]
Bug 34931: Remove fieldset/legend in favor of div/h3

1. Create some PA_CLASS authorized values.
2. Create some custom patron attributes and add them to the newly created PA_CLASS's.
3.  Set CollapseFieldsPatronAddForm to collapse 'Additional attributes and identifiers'.
4. Go to a new or existing patron record.
5. At the top of the page click the checkbox for "Show collapsed fields:".
6. Scroll down to that section and notice the PA_CLASS <legend> element is shown but not the individual patron attributes within that PA_CLASS.
7. Apply patch
8. Try again, the Additional attributes and identifiers fieldset should display properly.

Signed-off-by: Brendan Lawlor <blawlor@clamsnet.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34404: Fix inconsistencies in Budgets and funds page titles, breadcrumbs, and...
Owen Leonard [Thu, 5 Oct 2023 15:18:33 +0000 (15:18 +0000)]
Bug 34404: Fix inconsistencies in Budgets and funds page titles, breadcrumbs, and headers

This patch fixes some inconsistencies in the budget and fund
administration templates, making sure the page title, breadcrumb
navigation, and page headers are consistent with each other.

Other changes: Bootstrap tooltips have been enabled in a few places
where the markup showed intent for the tooltips to be active but where
the JS was not being initiated.

Some translation imrovements have been added where budget planning
strings could be improved with context:

 '<span>by months</span>' ->
 '[% tp("Budget planning", "by months") | html %]'

To test, apply the patch and go to Administration -> Budgets. Test each
of these cases:

- Budgets list
  - New budget
  - Edit budget
  - Duplicate budget
  - Close budget
    - Close a budget with and without unreceived orders.
  - Delete budget
    - Test the delete button on a budget which has funds attached to
      confirm that the menu item is disabled and a tooltip shows with an
      explanation.
    - Delete a budget which has no funds attached.
  - Add fund
    - Test the add fund button on a budget which is locked. The menu
      item should be disabled and it should show a tooltip, "Budget is
      locked."
    - Test the add fund page for a budget which is not locked.
  - Click the name of a budget with funds attached to see the funds view
    - In this view, if the budget is locked, the "New" toolbar menu
      should have a disabled "New fund" item with a Bootstrap tooltip.
  - While viewing the funds on a budget, test the "Planning" button to
    confirm that the view of each planning type.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34375: Fix the option to provide no fund in budget dropdown
Matt Blenkinsop [Mon, 6 Nov 2023 10:40:33 +0000 (10:40 +0000)]
Bug 34375: Fix the option to provide no fund in budget dropdown

Currently it is not possible to use the No fund option as the dropwdown will default to the first budget in the list. This patch re-adds this option so that the defaulting behaviour is fixed

Test plan:
1) Go to a vendor record in Acquisitions and then Receive Shipment
2) Enter an invoice number
3) Leave the Shipping cost empty and Shipping Fund as 'No fund'
4) Receive some orders or go straight to Finish receiving
5) Notice the Shipping fund has defaulted to the first fund in the alphabetical list of funds.  It is not possible to select 'No fund' and the selected fund is recorded in shipmentcost_budgetid incorrectly.
6) Apply patch
7) Repeat steps 1-5 and this time the No fund option should be used correctly

Signed-off-by: Georgia Newman <g.newman@arts.ac.uk>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35269: Improve POD
Tomas Cohen Arazi [Mon, 6 Nov 2023 15:01:09 +0000 (12:01 -0300)]
Bug 35269: Improve POD

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35269: Rename `update_item_location` to `location_update_trigger`
Tomas Cohen Arazi [Mon, 6 Nov 2023 14:53:53 +0000 (11:53 -0300)]
Bug 35269: Rename `update_item_location` to `location_update_trigger`

This patch renames all occurences of the method.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35218: (QA follow-up) Perltidy and file permissions
Katrin Fischer [Mon, 6 Nov 2023 19:30:42 +0000 (19:30 +0000)]
Bug 35218: (QA follow-up) Perltidy and file permissions

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35218: Add unit tests for the counter registry API
Matt Blenkinsop [Mon, 6 Nov 2023 14:14:45 +0000 (14:14 +0000)]
Bug 35218: Add unit tests for the counter registry API

This patch adds two unit tests to cover the integration with the Counter Registry API in the Usage Statistics module. This is to prevent regressions caused either by changes to the Koha endpoint, or by changes to the Counter Registry API that might require changes in Koha to handle.

Test plan:
1) prove t/db_dependent/api/v1/erm_counter_registries.t
2) prove t/db_dependent/api/v1/erm_sushi_services.t

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35263: (QA follow-up) Update code
Pedro Amorim [Tue, 7 Nov 2023 10:25:18 +0000 (10:25 +0000)]
Bug 35263: (QA follow-up) Update code

Thank you Jonathan. I first tried with '||' but it would fallback to 1
for either undef or 0 (we want the first case, but not the second).
But using '//' instead, it only falls back to 1 if undef, and not when 0.
Today I learned between '||' and '//'! Thanks!

From perldoc.perl.org (relating to '//'):
'In fact, it's exactly the same as ||, except that it tests the left hand
side's definedness instead of its truth.'

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35263: Default 'can_place_ill_in_opac' to 1
Pedro Amorim [Mon, 6 Nov 2023 09:39:52 +0000 (09:39 +0000)]
Bug 35263: Default 'can_place_ill_in_opac' to 1

If ILLModule sys pref is 'off', this input param is undef. The database does not allow it to be nullable causing an error.
Check if its defined (i.e. the option was submitted) and use that, if not default to 1

Test plan, k-t-d:
1) Edit an existing patron category, visit:
/cgi-bin/koha/admin/categories.pl?op=add_form&categorycode=B
2) Click 'Save' at the bottom of the form
3) Notice a yellow box is shown with an error message
4) Apply patch. Repeat steps 1-3. Notice it now updates successfully.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35263: Add selenium tests
Pedro Amorim [Mon, 6 Nov 2023 10:13:48 +0000 (10:13 +0000)]
Bug 35263: Add selenium tests

Test plan, on k-t-d selenium (ktd --selenium up):
1) Apply just this tests patch
2) Run: prove t/db_dependent/selenium/administration_tasks.t
3) Notice it fails. Apply the other patch. Restart plack
4) Repeat step 2. Notice it passes.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35258: Remove uneeded comment and fix po:update
Jonathan Druart [Tue, 7 Nov 2023 21:16:31 +0000 (22:16 +0100)]
Bug 35258: Remove uneeded comment and fix po:update

This comment was breaking gulp po:update on D11
koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/LicensesShow.vue:82: warning: unterminated string
Aborted (core dumped)

    at ChildProcess.exithandler (node:child_process:419:12)
    at ChildProcess.emit (node:events:514:28)
    at ChildProcess.emit (node:domain:552:15)
    at maybeClose (node:internal/child_process:1091:16)
    at Socket.<anonymous> (node:internal/child_process:449:11)
    at Socket.emit (node:events:514:28)
    at Socket.emit (node:domain:552:15)
    at Pipe.<anonymous> (node:net:323:12)
    at Pipe.callbackTrampoline (node:internal/async_hooks:130:17)
[19:23:07] 'po:update' errored after 1.14 s

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34275: Add toggle switch for basic/advanced cataloging editors
Lucas Gass [Thu, 13 Jul 2023 17:51:13 +0000 (17:51 +0000)]
Bug 34275: Add toggle switch for basic/advanced cataloging editors

To test:
1. Apply patch and regenerate CSS. (https://wiki.koha-community.org/wiki/Working_with_SCSS_in_the_OPAC_and_staff_interface)
2. Turn on EnableAdvancedCatalogingEditor.
3. Go to cataloging > 'New record'
4. In the upper left notice a new toggle switch labeled 'Editor:'.
5. Try toggling the switch back and forth to move between editors. Verify it works correecly.
6. Try editing an existing record and make sure the toggle works well when editing records.
7. Try the other method of switch editors, Settings > Switch to basic/advanced editor. Make sure it works the same as always
8. Turn off EnableAdvancedCatalogingEditor, make sure the toggle button is no longer present.

Signed-off-by: Eesther <esther@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 21159: DBRev 23.06.00.063
Tomas Cohen Arazi [Mon, 6 Nov 2023 14:34:32 +0000 (11:34 -0300)]
Bug 21159: DBRev 23.06.00.063

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 21159: Add Koha::Item->update_item_location tests
Tomas Cohen Arazi [Mon, 6 Nov 2023 14:00:04 +0000 (11:00 -0300)]
Bug 21159: Add Koha::Item->update_item_location tests

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 21159: Remove redundant mock
Tomas Cohen Arazi [Mon, 6 Nov 2023 12:59:27 +0000 (09:59 -0300)]
Bug 21159: Remove redundant mock

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 21159: (QA follow-up) Add say to database update, perltidy, fix tests
Katrin Fischer [Wed, 1 Nov 2023 11:10:24 +0000 (11:10 +0000)]
Bug 21159: (QA follow-up) Add say to database update, perltidy, fix tests

* Perltidies to pass the QA script
* Adds missing say statement to the database update
* Makes sure the tests pass on a database, where UpdateItemLocaton*
  system preferences are not empty

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 21159: Update item location on checkout
Alex Buckley [Wed, 10 Aug 2022 00:54:20 +0000 (00:54 +0000)]
Bug 21159: Update item location on checkout

This patchset shifts the logic for changing the item location on checkin
(controlled by the UpdateItemLocationOnCheckin system preference) to a
new subroutine in Koha/Items.pm

That subroutine logic is shared with the UpdateItemLocationOnCheckout
system preference.

Test plan:
1. Apply patches, update databases and restart services

2. Set the following system preferences:
- UpdateItemLocationOnCheckin:
FIC: PROC

- UpdateItemLocationOnCheckout:
PROC: FIC

3. Checkout an an item with items.location = 'PROC'. Observe it's
location is changed to 'FIC'

4. Return the item. Observe it's location is changed to 'PROC'

5. Change UpdateItemLocationOnCheckout to:
PROC: _BLANK_

6. Issue the item with items.location = 'PROC' and confirm it's location
is blanked on checkout

7. Issue and return an item with a different location e.g. 'REF' (don't
use 'CART' as this is blanked by bug 14576 on checkout).
Observe the location does not change on issue or return.

8. Run unit tests
sudo koha-shell kohadev
prove t/db_dependent/Circulation/issue.t

Sponsored-by: Toi Ohomai Institute of Technology, New Zealand
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 21159: Template and yaml changes
Alex Buckley [Wed, 10 Aug 2022 20:57:10 +0000 (20:57 +0000)]
Bug 21159: Template and yaml changes

Sponsored-By: Toi Ohomai Institute of Technology, New Zealand
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 21159: Database changes
Alex Buckley [Tue, 9 Aug 2022 15:38:37 +0000 (15:38 +0000)]
Bug 21159: Database changes

Sponsored-by: Toi Ohomai Institute of Technology, New Zealand
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34529: (QA follow-up) Tidy OfflineCirculation.t
Kyle M Hall [Fri, 3 Nov 2023 10:48:39 +0000 (10:48 +0000)]
Bug 34529: (QA follow-up) Tidy OfflineCirculation.t

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34529: (QA follow-up) Add unit tests
Kyle M Hall [Fri, 3 Nov 2023 10:46:58 +0000 (06:46 -0400)]
Bug 34529: (QA follow-up) Add unit tests

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34529: (QA follow-up) Update column heading to "Card number or username"
Katrin Fischer [Tue, 31 Oct 2023 15:45:58 +0000 (15:45 +0000)]
Bug 34529: (QA follow-up) Update column heading to "Card number or username"

Updates the column heading on the table of uploaded transactions
to read "Card number or username".

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34529: Offline circulation should be able to accept userid as well as cardnumber
Kyle M Hall [Mon, 14 Aug 2023 14:55:09 +0000 (10:55 -0400)]
Bug 34529: Offline circulation should be able to accept userid as well as cardnumber

Like everywhere else in Koha, offline circulation should be able to use userid as well as cardnumber to look up the patron for a transaction ( checkouts and fine payments ).

Test Plan:
1) Apply this patch
2) Restart all the things!
3) Download the test.koc file attached to this bug
4) Verify you have an item with the barcode 39999000001396
   create it if needed
5) Set a patron's username to "hacevedo"
6) Upload and import the test.koc file into offline circ
7) Verify the item was checked out and the payment was made

Signed-off-by: Philip Orr <philip.orr@lmscloud.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35188: Show checkout override for all noisseus statuses
Nick Clemens [Mon, 30 Oct 2023 12:47:31 +0000 (12:47 +0000)]
Bug 35188: Show checkout override for all noisseus statuses

This patch moves the override button up one level into the list of noissues in order to allow
overriding any blocking status

To test:
1 - Log in to Koha with a user with force_checkout permission (superlibrarian ok too)
2 - Mark a patron as expired, lost card, gone no address
3 - Go to 'Check out' page for the patorn
4 - Note you cannot override the restrictions
5 - Add a manual restriction/debarment
6 - Go to checkout again, now you can override
7 - Remove the debarment
8 - Add manually ot URL of checkout page '&foreallow=1'
9 - Note you can now override the other restrictions
10 - Apply patch
11 - Reload patron
12 - Note you now see the override button on the check out screen
13 - Add a debarment
14 - Confirm the button is still there
15 - Confirm overriding allows the checkout (with or without a debarment)

Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35241: Fix markup errors in point of sale template
Owen Leonard [Thu, 2 Nov 2023 18:36:06 +0000 (18:36 +0000)]
Bug 35241: Fix markup errors in point of sale template

This patch makes several markup corrections to the Point of Sale page,
fixing duplicate ids, invalid "selected" attributes*, a broken comment
tag, and an invalid "href" attribute.

* The "selected" attribute in this template is on a disabled <option>,
  so it can't be selected.

The patch also changes <div class="action"> to <fieldset class="action">
for consistency and better layout.

It makes some changes to the "Payment received" dialog in order to
improve visual consistency.

To test, apply the patch and make sure the EnablePointOfSale preference
is turned on.

- Go to Point of Sale.
- Test the process of adding items for purchase and collecting payment.
- After you submit the payment the confirmation dialog should look
  correct, and the "Print" and "Email" buttons should both work
  correctly.

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34866: Use template wrapper for breadcrumbs: OPAC part 4
Owen Leonard [Thu, 21 Sep 2023 15:17:34 +0000 (15:17 +0000)]
Bug 34866: Use template wrapper for breadcrumbs: OPAC part 4

This patch updates several OPAC templates so that they
use a new WRAPPER for displaying breadcrumbs.

Apply the patch and log in to the OPAC. Test each of the following pages
and their variations. Breadcrumbs should look correct, and each link
should be correct:

- Recent comments
- Most popular
- Enable "PatronSelfRegistration" and set "PatronSelfRegistrationVerifyByEmail"
  to "Don't require."
  - In the OPAC, go to "Register here." Fill out the form and submit
    your registration.
  - Check the "Registration complete" page.
- Set "PatronSelfRegistrationVerifyByEmail" to "Require"
  - Submit another registration and check the "Confirm your
    registration" page.
- Visit the registration page passing an invalid token:
  /cgi-bin/koha/opac-registration-verify.pl?token=foo
  Check the "Registration invalid" page.
- Enable the "ArticleRequests" system preference and log in to the
  OPAC.
  - Perform a search which will return results.
    - Check the search results page
    - View the detail page for one of the results.
     - Click "Request article."
    - Return to the detail page and click "Place hold."
      - Complete each step of the hold process.
- Enable the "OpacAllowSharingPrivateLists" system preference.
  - Create a private list if necessary.
  - Click the "Share" link
- Locate a serial record and view the detail page.
  - Click the "More details" link under the "Subscriptions" plan
- Enable the system preference "suggestion."
  - From the logged-in user summary page click "Purchase suggestions"
    - Click the "New purchase suggestion" link
- Enable the "AnonSuggestions" and "OPACViewOthersSuggestions" system
  preferences and log out of the OPAC.
  - View the purchase suggestions page.
- Enable the "OpacCloud" system preference and go to the "Subject cloud"
  page. (the feature doesn't need to be configured to test).
- Populate the "RestrictedPageTitle" and "RestrictedPageContent" system
  preferences and navigate directly to /cgi-bin/koha/opac-restrictedpage.pl
  - Remove the contents of "RestrictedPageTitle" and check the page
    again.
- This patch also updates svc/suggestion.tt but I don't know how to test
  it!

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35187: (follow-up) Use <br> consistently over <br />
Martin Renvoize [Mon, 6 Nov 2023 11:42:02 +0000 (11:42 +0000)]
Bug 35187: (follow-up) Use <br> consistently over <br />

The first patch highlighted a minor inconsistency to me and this patch
just brings us closer to html5 consistency throughout the notices by
replacing any existing occurences of `<br />` and `<br/>` with the
recommended `<br>`.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35187: Make sure HTML notices use explicit line breaks
Katrin Fischer [Sun, 29 Oct 2023 16:10:25 +0000 (16:10 +0000)]
Bug 35187: Make sure HTML notices use explicit line breaks

When a notices is marked as HTML, we need to use block elements
(p, div, li, etc.) or explicit line breaks.
This adds the line breaks where required.

Affects:

* ISSUEQSLIP
* ISSUESLIP
* TRANSFERSLIP
* CHECKINSLIP
* HOLD_SLIP
* WELCOME

The biggest change is the WELCOME notices. With this patch
it appears no longer on only one line, but properly formatted.

To test:

WELCOME
* Without patch
* Make sure your Koha can send email (set up SMTP server, KohaAdminLibraryAddress)
* Make sure your patron has an email set
* In patron account, use "More > Welcome email"
* Verify all text is on one line
* Apply patch
* reset_all to install new sample notice templates
* Repeat test, verify welcome notice is now nice

ISSUESLIP, ISSUEQSLIP
* Checkout at least 2 items
* Print > Print slip
* Print > Print quick slip
* Verify both look nice!

CHECKINSLIP
* Return both items
* Print checkin slip (button in list of checkouts)
* Verfiy... you know, that it looks nice!

TRANSFERSLIP
* Checkin an item from another library
* "Print transfer slip"
* Verify again.

HOLD_SLIP
* Place a hold on a record
* Return an item that can fill the hold
* "Print slip and confirm"
* Verify.
* Note: if you compare to before, this also removes a <> appearing instead
  of the city.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 27992: (QA follow-up) Terminology: returned -> checked in
Katrin Fischer [Sun, 5 Nov 2023 12:39:13 +0000 (12:39 +0000)]
Bug 27992: (QA follow-up) Terminology: returned -> checked in

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 27992: (QA follow-up) Perltidy
Katrin Fischer [Sun, 5 Nov 2023 12:07:25 +0000 (12:07 +0000)]
Bug 27992: (QA follow-up) Perltidy

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 27992: Unit test
Lucas Gass [Mon, 30 Oct 2023 16:45:54 +0000 (16:45 +0000)]
Bug 27992: Unit test

Signed-off-by: Emily Lamancusa <emily.lamancusa@montgomerycountymd.gov>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 27992: Call AddReturn on stats patron
Lucas Gass [Fri, 27 Oct 2023 23:36:05 +0000 (23:36 +0000)]
Bug 27992: Call AddReturn on stats patron

To test:
1. Create a Statistical Patron
2. Check out an item to the Stat Patron, that is checked out to another user
3. See that the local use is recorded, but the item does not get checked in
4. Check out an item that has a lost status and note that the local use is recorded, and the lost status is cleared.
5. Item is NOT checked in
6. Apply patch
7. Repeat steps 2 - 4. Item is checked in.
8. Set BlockReturnOfLostItems to Block.
9. Have a checkout to another patron then mark it as lost.
10. Check it out to the Statistical Patron. You should see the message "Item was lost, cannot be returned."
12. Conform the item remains on the patron's account.
13. Turn off BlockReturnOfLostItems, check out the same item to the Statistical Patron. You should see a message "Item was lost, now found."
14. Conform the item was actually checked in.

15. Set BlockReturnOfWithdrawnItems to Block.
16. Have a checkout to another patron then mark it as withdrawn.
17. Check it out to the Statistical Patron. You should see the message "Item was withdrawn, cannot be returned."
18. Conform the item remains on the patron's account.
19. Turn off BlockReturnOfWithdrawnItems, check out the same item to the Statistical Patron. You should see a message "Item was withdrawn."
20. Conform the item was actually checked in.

21. Have an item on a regular patron account that has a hold on it.
22. Check it out to the Statistical Patron
23. See the message "Item on hold, please checkin."

24. Have an item on a regular patron account that has a claim return on it.
25. Checkit it out to the Statistical Patron.
26. See the message "Item claimed returned, please checkin."

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

Signed-off-by: Emily Lamancusa <emily.lamancusa@montgomerycountymd.gov>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35245: Set default width for select2 in authorities
Pedro Amorim [Fri, 3 Nov 2023 10:17:23 +0000 (10:17 +0000)]
Bug 35245: Set default width for select2 in authorities

Test plan:
1) Edit a authority Marc framework, e.g. 'CHRON_TERM', visit:
   /cgi-bin/koha/admin/auth_tag_structure.pl?authtypecode=CHRON_TERM
2) Pick any field to turn into a AV field, e.g. 371, and edit its subfields:
   /cgi-bin/koha/admin/auth_subfields_structure.pl?tagfield=371&authtypecode=CHRON_TERM
3) Pick a subfield e.g. 'd' and click edit, visit:
   /cgi-bin/koha/admin/auth_subfields_structure.pl?op=add_form&tagfield=371&tagsubfield=d&authtypecode=CHRON_TERM#subdfield
4) Pick a Authorized value list e.g. DEPARTMENT, click Submit
5) Create a new authority of the same type 'CHRON_TERM', visit:
   /cgi-bin/koha/authorities/authorities.pl?authtypecode=CHRON_TERM
6) Click on Tab '3' and click on field 371 ADDRESS to expand it
7) Notice field 'd' select2 width is very narrow
8) Apply patch. Repeat. Notice its not narrow anymore

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35264: Add "protected" column to patron import
David Cook [Mon, 6 Nov 2023 05:31:29 +0000 (05:31 +0000)]
Bug 35264: Add "protected" column to patron import

This change adds the "protected" column to patron import.

Test plan:
0. Apply the patch and run "restart_all"
1. prove -v t/db_dependent/Koha/Patrons/Import.t
2. Go to http://localhost:8081/cgi-bin/koha/tools/import_borrowers.pl
3. Note "protected" is listed in the "fields you want to supply"
on the right side of the screen
4. Note "protected" appears in file downloaded by clicking
"Download a Starter CSV file with all the columns"
5. Note that "Protected" appears after clicking "Enter default values"
and after clicking "Preserve existing values"

6. For bonus marks, use the "Starter CSV file" to import a test patron
(remember surname, branchcode, and categorycode are the required fields)

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34993: (QA follow-up) Perltidy
Katrin Fischer [Sun, 5 Nov 2023 11:50:17 +0000 (11:50 +0000)]
Bug 34993: (QA follow-up) Perltidy

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34993: Pass context parameters to generate_subfield_form
Emily Lamancusa [Thu, 2 Nov 2023 16:56:35 +0000 (12:56 -0400)]
Bug 34993: Pass context parameters to generate_subfield_form

Pass necessary parameters from the UI to ensure that the basic
MARC editor can correctly identify when a framework is changed,
a bib is being duplicated, or a bib is being imported with Z39.50 -
for purposes of filling in default values according to the settings
of ApplyFrameworkDefaults.

To test:
1. Set the system preference ApplyFrameworkDefaults - Select All
2. Create or edit a MARC bibliographic framework with a default value in
   one of the fields (such as 500$a)
3. Go to the Cataloguing module and create a new record using the
   framework from step 2
   --> Confirm that the default value is filled in
4. Search for an existing bib record
5. Click Edit > Edit record to open the basic editor
6. If the field from step 2 already has data, clear it
7. Switch the framework to the framework from step 2
   --> Confirm that the default value is filled in
8. Clear the field again, and save the edit
9. Click Edit > Edit as new (duplicate)
   --> Confirm that the default value is filled in
10. Go to the cataloguing module and do a Z39.50 search
11. Find a record that does not have a value for the subfield from step 2
12. Import the record using the framework from step 2
    --> Confirm that the default value is filled in

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35215: Add few assumptions in Suggestions.t around emailing
Marcel de Rooy [Wed, 1 Nov 2023 14:50:47 +0000 (14:50 +0000)]
Bug 35215: Add few assumptions in Suggestions.t around emailing

Test plan:
Without this patch, set pref ReplytoDefault or EmailAddressForSuggestions.
Run t/db_dependent/Suggestions.t (FAIL)
Fill branch email and reply for CPL branch.
Run t/db_dependent/Suggestions.t (FAIL: more errors)
Apply patch.
Run t/db_dependent/Suggestions.t (PASS)

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35212: Correct mismatched label on identity provider entry form
Owen Leonard [Wed, 1 Nov 2023 10:21:41 +0000 (10:21 +0000)]
Bug 35212: Correct mismatched label on identity provider entry form

This patch corrects the identity provider form so that the label for the
"Allow staff" field has the correct "for" attribute. Currently it is a
duplicate of the one for the "Allow OPAC" field.

To test, apply the patch and go to Administration -> Identity providers.

- Click "New identity provider"
- Near the bottom of the form, look for the "Allow staff" field.
- Clicking the "Allow staff" label should activate the corresponding
  dropdown.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35205: Fix duplicate id attribute in desks search form
Owen Leonard [Tue, 31 Oct 2023 16:58:48 +0000 (16:58 +0000)]
Bug 35205: Fix duplicate id attribute in desks search form

This patch updates the header search form for desks administration so
that it doesn't contain an HTML id attribute which duplicates one on the
desks entry form.

To test, apply the patch and make sure the "UseCirculationDesks" system
preference is enabled.

- Go to Administration -> Circulation desks -> New desk.
- Click the "Desk" label in the entry form. Cursor focus should move to
  the adjacent input field.
- Click the "Search desks" label in the header search form to confirm
  that your cursor moves to the header search form.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35181: Don't pass undef to header
Nick Clemens [Thu, 2 Nov 2023 10:56:30 +0000 (10:56 +0000)]
Bug 35181: Don't pass undef to header

It seems passing an undef value causes the headers to be malformed.

To test:
1 - Visit http://localhost:8081/cgi-bin/koha/svc/bib/303
2 - Note 'Invalid-metadata' at top of page, as well as other headers
3 - Apply patch, restart all
4 - Visit http://localhost:8081/cgi-bin/koha/svc/bib/303
5 - Page should now appear as xml
6 - Edit record 303, or any record with valid metadata in the advanced cataloging editor
7 - Confirm there is no error or alert
8 - Edit record 369 in the advanced cataloging editor
9 - Confirm there is an alert

Signed-off-by: Phil Ringnalda <phil@chetcolibrary.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 33928: Improve translation of title tags: Various
Owen Leonard [Fri, 6 Oct 2023 17:16:20 +0000 (17:16 +0000)]
Bug 33928: Improve translation of title tags: Various

This patch updates various templates so that title tags can be more
easily translated. Some templates have been updated for consistency as
well: Harmonizing page title, breaddrumb navigation, and page headers.

To test, apply the patch and confirm that the following pages have the
correct title tags:

- Staff interface -> Log in
  - Staff interface home page
  - Error page (e.g. for a missing page 404 error)
  - About page

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34773: (follow-up) Missed templates
Owen Leonard [Fri, 15 Sep 2023 13:39:15 +0000 (13:39 +0000)]
Bug 34773: (follow-up) Missed templates

This patch fixes three templates I missed the first time around:
Inventory, MARC diff view, and Upload local cover images.

- Cataloging -> Inventory and the results page after submitting a
  batch of barcodes.
- Cataloging -> Manage staged records -> Select a batch which includes
  record matches: Click the "View" link in the "Diff" column for a
  record which has a match.
- Cataloging -> Upload local cover image (with LocalCoverImages enabled)

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34773: Improve translation of title tags: Cataloging tools
Owen Leonard [Tue, 12 Sep 2023 18:02:43 +0000 (18:02 +0000)]
Bug 34773: Improve translation of title tags: Cataloging tools

This patch modifies cataloging tools templates so that title tags can be
more easily translated. The patch also makes some modifications to
titles, breadcrumb navigation, and page headers in order to make them
more consistent with each other and with other similar pages.

Note that stockrotation.pl has been modified so that rota information is
available to the template in more cases for the purpose of showing that
information in navigation and headings.

To test, apply the patch and go to Cataloging. Test each page and each
variation of the page to confirm that titles, breadcrumbs, and page
headers look correct.

- Export catalog data
- Stage records for import
  - Main page
  - Upload file -> Stage for import
- Manage staged records
  - Main page
    - Batch details
      - Import batch
- Batch item modification and batch item deletion
  - Main page
    - Submit batch
      - Save
- Batch record modification
  - Main page
    - Submit batch
      - Modify selected
- Batch record deletion
  - Main page
    - Submit batch
      - Delete selected
- MARC modification templates
  - Main page
    - Edit actions for a template
- Item modifications by age
  - Main page
    - Add rules
- Stock rotation
  - Main page
    - New rota
    - Edit rota
    - Manage stages for rota
      - New stage
      - Edit stage
    - Manage items for rota
      - Add items

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35221: TrackLastPatronActivityTriggers description is misleading
Caroline Cyr La Rose [Wed, 1 Nov 2023 21:04:26 +0000 (17:04 -0400)]
Bug 35221: TrackLastPatronActivityTriggers description is misleading

This patch updates the description for the TrackLastPatronActivityTriggers system preference to specify that each time an action occurs, the date last seen is updated, as opposed to once per day.

This patch also uniformizes the options and corrects terminology for
checking in/returning.

To test:
1. Apply patch
2. Go to Administration > System preferences
3. Search for TrackLastPatronActivityTriggers
4. Read the description, make sure it makes sense and the spelling and
   grammar are correct
5. Open the drop down of options, make sure the spelling and grammar are
   correct

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 34397: Fix inconsistencies in Classification sources page titles, breadcrumbs...
Owen Leonard [Tue, 3 Oct 2023 16:24:07 +0000 (16:24 +0000)]
Bug 34397: Fix inconsistencies in Classification sources page titles, breadcrumbs, and headers

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

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

- Administration -> Classification configuration
  - New classification source
  - Edit classification source
  - New filing rule
  - Edit filing rule
  - New splitting rule
  - Edit splitting rule

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 17798: (follow-up) Adjust color of fieldset nested in .dialog.alert
Owen Leonard [Fri, 3 Nov 2023 12:22:34 +0000 (12:22 +0000)]
Bug 17798: (follow-up) Adjust color of fieldset nested in .dialog.alert

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 17798: Add fieldset for 'Yes, check out (Y)'
Nick Clemens [Thu, 2 Nov 2023 19:10:02 +0000 (19:10 +0000)]
Bug 17798: Add fieldset for 'Yes, check out (Y)'

With the increased text, the buttons don't arrange neatly. Adding a
fieldset around the options for 'Yes' mitigates this somewhat - it
could do with a bit more styling, however, it also fixes bug 23953

To test:
Confirm the 'Yes' options are more clear that they only affect the yes
button
Confirm the other buttons arrange nicely

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 17798: Confirm hold when printing slip from another patron's account
Nick Clemens [Thu, 2 Nov 2023 19:05:16 +0000 (19:05 +0000)]
Bug 17798: Confirm hold when printing slip from another patron's account

This patch adds a few pieces of information to the print slip button
and makes the code confirm the hold

As we are printing before the confirm, we also add the ability to pass
in the itemnumber to 'ReserveSlip'

This is slightly hacky, however, I don't see another way to allow
printing without an additional page reload.

To test:
 1 - Place a title level hold for patron A, for delivery to library B
 2 - Attempt to checkout an item from the record above to Patron B from
     library A
 3 - You receive an alert about the hold
 4 - Click "Don't check out, confirm hold, and print slip"
 5 - Confirm the slip looks correct and has item info
 6 - Confirm that item is in transit to fill hold
 7 - Revert transit status
 8 - Attempt to checkout the item to Patron B from Library B
 9 - Click "Don't check out, confirm hold, and print slip"
10 - Confirm slip is correct
11 - Confirm item is marked waiting

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 32379: Add check on existing item
Marcel de Rooy [Thu, 2 Nov 2023 10:47:50 +0000 (10:47 +0000)]
Bug 32379: Add check on existing item

Simplest fix; bail out with output_error.

Test plan:
Try /cgi-bin/koha/cataloguing/additem.pl?biblionumber=1&op=saveitem&itemnumber=999999
Note: Replace 1 by existing biblionumber, and iitem 999999 should not exist.
You should get the 404 screen now.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35219: Fix ERM usage endpoints to show in docs
Matt Blenkinsop [Thu, 2 Nov 2023 14:01:33 +0000 (14:01 +0000)]
Bug 35219: Fix ERM usage endpoints to show in docs

This patch fixes the tags and also adds the tags to the swagger.yaml
file to allow the endpoints to be documented correctly.

One endpoint has also been deleted as it is no longer required.

Test plan:
Check the attached files to see that all tags are now prefixed with
'erm_' and that the swagger file now includes an entry for all of these
files

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 35059: (follow-up) Get authorised value description from koha field
Katrin Fischer [Sat, 28 Oct 2023 22:31:57 +0000 (22:31 +0000)]
Bug 35059: (follow-up) Get authorised value description from koha field

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
7 months agoBug 28805: (follow-up) Fix non-printable char that breaks tests
Katrin Fischer [Sat, 4 Nov 2023 13:45:56 +0000 (13:45 +0000)]
Bug 28805: (follow-up) Fix non-printable char that breaks tests

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>