koha.git
21 months agoBug 30718: Apply flatpickr changes to OPAC
Jonathan Druart [Fri, 5 Aug 2022 09:10:42 +0000 (11:10 +0200)]
Bug 30718: Apply flatpickr changes to OPAC

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 30718: Prevent 'reset' icon to appear twice
Jonathan Druart [Tue, 19 Jul 2022 12:33:24 +0000 (14:33 +0200)]
Bug 30718: Prevent 'reset' icon to appear twice

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 30718: Fix time display
Jonathan Druart [Tue, 19 Jul 2022 12:23:10 +0000 (14:23 +0200)]
Bug 30718: Fix time display

Especifically when timeformat=12h

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 30718: Fix scheduler
Jonathan Druart [Mon, 18 Jul 2022 13:27:22 +0000 (15:27 +0200)]
Bug 30718: Fix scheduler

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 30718: Fix holidays
Jonathan Druart [Mon, 18 Jul 2022 13:13:17 +0000 (15:13 +0200)]
Bug 30718: Fix holidays

Template process failed: undef error - The given date (07/18/2022) does not match the date format (iso)

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 30718: Add missing USE KohaDates
Jonathan Druart [Mon, 18 Jul 2022 13:10:59 +0000 (15:10 +0200)]
Bug 30718: Add missing USE KohaDates

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 30718: Fix serials/showpredictionpattern.pl
Jonathan Druart [Mon, 18 Jul 2022 13:10:02 +0000 (15:10 +0200)]
Bug 30718: Fix serials/showpredictionpattern.pl

Can't locate object method "ymd" via package "2022-02-01" (perhaps you forgot to load "2022-02-01"?) at /kohadevbox/koha/serials/showpredictionpattern.pl line 100
eval {...} at /kohadevbox/koha/serials/showpredictionpattern.pl line 2

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 30718: Fix today's date on overdue
Jonathan Druart [Mon, 18 Jul 2022 13:09:42 +0000 (15:09 +0200)]
Bug 30718: Fix today's date on overdue

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 30718: Pass DT to filter_by_lates
Jonathan Druart [Thu, 14 Jul 2022 13:24:19 +0000 (15:24 +0200)]
Bug 30718: Pass DT to filter_by_lates

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 30718: Use flatpickr's altInput
Jonathan Druart [Mon, 11 Jul 2022 14:14:38 +0000 (16:14 +0200)]
Bug 30718: Use flatpickr's altInput

The idea rely on the KohaDates TT plugin for the date formatting. We
should not have any output_pref calls in pl or pm (there are some
exceptions, for ILSDI for instance).

Also flatpickr will deal with the places where dates are inputed. We
will pass the raw SQL value (what we call 'iso' in Koha::DateUtils), and
the controller will receive the same value, no need to additional
conversion.
Note that DBIC has the capability to auto-deflate DateTime objects,
which makes things way easier. We can either pass the value we receive
from the controller, or pass a DT object to our methods.

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 30779: Remove _update_import_record_marc and update tests
Nick Clemens [Wed, 17 Aug 2022 11:56:37 +0000 (11:56 +0000)]
Bug 30779: Remove _update_import_record_marc and update tests

This patch removes the now unused: _update_import_record_marc

Additionally, as items are already present in import biblio we no longer need to embed
them, so that parameter is removed and the option removed from the sub and pod and everywhere
it was used

In all cases, we were embedding, so we don't need a way to get without

Tests updated

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 30779: Do not update import marc after importing items
Nick Clemens [Mon, 16 May 2022 19:57:23 +0000 (19:57 +0000)]
Bug 30779: Do not update import marc after importing items

We are stripping the marc item tags at import - we save them when not importing items, but
strip when importing items

I think we can save on writes by leaving them in the record. This also allows comparison to what was staged
versus items created

To test:
 1 - Stage a marc record with items, but do not look for items
 2 - Confirm the item tags remain in staged marc
 3 - Import the record
 4 - Confirm items are nto in imported marc record
 5 - Stage the record again, but look for items
 6 - Confirm the item tags are stipped from imported record
 7 - Import and confirm imported record has no item tags
 8 - Apply patch and repeat 1-5
 9 - Confirm item tags remain in record
10 - Import and confirm item tags not in imported marc

Signed-off-by: Andrew <andrewfh@dubcolib.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 30684: (follow-up) Use log_warning_msg for the "not running" warning
Alex Buckley [Wed, 17 Aug 2022 13:50:01 +0000 (13:50 +0000)]
Bug 30684: (follow-up) Use log_warning_msg for the "not running" warning

Also, return 0 rather than return 1 in else clause of koha-zebra

Sponsored-by: Catalyst IT, New Zealand
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 30684: When a service isn't running koha-* scripts --restart should start it
Alex Buckley [Tue, 7 Jun 2022 05:42:20 +0000 (05:42 +0000)]
Bug 30684: When a service isn't running koha-* scripts --restart should start it

Test plan:
1. Stop plack, indexer, sip, worker, z3950 and zebra.

Note: To test Z39.50 restarting you will need to setup the server: https://wiki.koha-community.org/wiki/Setting_up_the_Z39.50_and_SRU_Server#Setting_up_the_Z39.50_and_SRU_Server

2. Run restart command for each service:
- [Plack] sudo koha-plack --restart {instance}
- [Indexer] sudo koha-indexer --restart {instance}
- [SIP] sudo koha-sip --restart {instance}
- [Worker] sudo koha-worker --restart {instance}
- [z3950] sudo koha-z3950-responder --restart {instance}
- [Zebra] sudo koha-zebra --restart {instance}

3. Observe the services do not get restarted.
Instead you get an error saying the service is not running

4. Apply patch

5. If you are using kohadevbox you must copy koha-* scripts to /usr/sbin/:
sudo cp debian/scripts/koha-plack /usr/sbin/koha-plack
sudo cp debian/scripts/koha-indexer /usr/sbin/koha-indexer
sudo cp debian/scripts/koha-sip /usr/sbin/koha-sip
sudo cp debian/scripts/koha-worker /usr/sbin/koha-worker
sudo cp debian/scripts/koha-z3950-responder /usr/sbin/koha-z3950-responder
sudo cp debian/scripts/koha-zebra /usr/sbin/koha-zebra

6. Repeat step 2

7. This time confirm that each service is restarted

Sponsored-by: Catalyst IT
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31217: OPAC coce.js is not hiding the coce-coverimg div for single-pixel images
Alex Buckley [Tue, 26 Jul 2022 04:38:29 +0000 (16:38 +1200)]
Bug 31217: OPAC coce.js is not hiding the coce-coverimg div for single-pixel images

This is because opac-detail.tt has coce-coverimg as an ID, but OPAC
coce.js targets coce-coverimg as a class.

opac-detail.tt should be changed to have coce-coverimg as a class.

Test plan:
1. Set your system preferences:
- CoceHost = https://coce.mykoha.co.nz
- CoceProviders = Select all
- OpacCoce = Enable

2. Add the ISBN of '9780262336499' to a biblio

3. Open a "Incognito" window in your browser (recommended to use Google
Chrome to test this)

4. View the biblio detail page in the OPAC. Observe a 'Coce image from
Amazon' box loads with a spinner

5. Apply patch and restart services

6. Clear your browser cache

7. Reload the same biblio detail page in the OPAC. Observe no image is
displayed.

8. View another OPAC biblio detail page that does have a successfully
loading coce image and confirm the source of that image is listed: For
example 'Coce image from Amazon.com' is displayed

Sponsored-by: Toi Ohomai Institute of Technology, New Zealand
Signed-off-by: Paul Derscheid <paul.derscheid@lmscloud.de>
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 28854: (follow-up) Remove errant warning
Martin Renvoize [Thu, 18 Aug 2022 08:44:03 +0000 (09:44 +0100)]
Bug 28854: (follow-up) Remove errant warning

Oops, I left in a bare warn from debugging.. this simply removes it; it
is unrequired.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31382: Pass password_has_expired param to templte
Nick Clemens [Wed, 17 Aug 2022 11:09:14 +0000 (11:09 +0000)]
Bug 31382: Pass password_has_expired param to templte

This patch restores the param, while still leaving the check against invalid
login credentials to ensure we don't leak information.

To test:
 1 - enable  EnableExpiredPasswordReset
 2 - Edit a patron to set password to expire in the past
 3 - Attempt opac login as patron
 4 - It fails, but you are redirected to login screen with no info
 5 - Apply patch
 6 - Attempt login
 7 - You are notified password expired and given reset link
 8 - Go back to login screen
 9 - Login with correct username,, wrong password
10 - You are notified of incorrect credentials, not password expiration

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31382: Regression tests
Tomas Cohen Arazi [Wed, 17 Aug 2022 18:40:07 +0000 (15:40 -0300)]
Bug 31382: Regression tests

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31222: Reduce query size for batchMod
Nick Clemens [Fri, 22 Jul 2022 14:47:36 +0000 (14:47 +0000)]
Bug 31222: Reduce query size for batchMod

The object search is currently:
Koha::Items->search({ barcode => \@contentlist }

Which generate code like:
barcode = 1 OR barcode = 2 OR barcode = 3 ....

This can get quite large

We can reduce the query size by using -in:
Koha::Items->search({ barcode => { -in => \@contentlist } }

Which generates code like:
barcode in ( 1, 2, 3 )

To test:
1 - Apply patch
2 - Perform batch modifications
3 - Confirm nothing has changed

Signed-off-by: Rachael Laritz <rachael.laritz@inlibro.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 29782: Fix handling records without title or content
Marcel de Rooy [Tue, 16 Aug 2022 12:02:13 +0000 (12:02 +0000)]
Bug 29782: Fix handling records without title or content

Test plan:
Save a new record with only a title in the non-default tab (english).
Check if you see it on the list. Edit.
Save a new record without title but only content in non-default lang.
Check if you see it.
Do the same 2 edits on the default tab only. Verify too.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 27342: Fix C4::ILSDI::Services::AuthenticatePatron
Tomas Cohen Arazi [Wed, 17 Aug 2022 13:33:07 +0000 (10:33 -0300)]
Bug 27342: Fix C4::ILSDI::Services::AuthenticatePatron

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31228: Intranet coce.js is not hiding the coce-coverimg div for single-pixel...
Alex Buckley [Wed, 10 Aug 2022 15:32:24 +0000 (15:32 +0000)]
Bug 31228: Intranet coce.js is not hiding the coce-coverimg div for single-pixel image

This is because the intranet detail.tt has coce-coverimg as an ID.
Intranet results.tt has coce-coverimg as a class. Intranet coce.js
targets coce-coverimg as a class.

Intranet detail.tt should be changed to have coce-coverimg as a class.
This is inline with the change made to the OPAC in bug 31217

Test plan:
1. Set your system preferences:
- CoceHost = https://coce.mykoha.co.nz
- CoceProviders = Select all
- IntranetCoce = Enable

2. Add the ISBN of '9780262336499' to a biblio

3. Open a "Incognito" window in your browser (recommended to use Google
Chrome to test this)

4. View the biblio detail page in the intranet. Observe a 'Coce image
from Amazon' box loads with a spinner

5. Apply patch and restart services

6. Clear your browser cache

7. Reload the same biblio detail page in the intranet. Observe no image
is displayed.

8. Do an intranet search to get the biblio returned in search results
page. Confirm no cover image box is displayed

9. View the intranet search result and detail pages for a different
biblio that you know Coce should be displaying the cover image of and
confirm that it is correctly displayed with the source of that image
listed: For example 'Coce image from Amazon.com' is displayed

Sponsored-by: Catalyst IT, New Zealand
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 19540: Tell the patron why a hold cannot be placed on items
Jonathan Druart [Thu, 7 Jan 2021 12:44:33 +0000 (13:44 +0100)]
Bug 19540: Tell the patron why a hold cannot be placed on items

This patch adds an explanation when a hold cannot be placed, in some situation:
tooManyReserves
tooManyHoldsForThisRecord
tooManyReservesToday
itemAlreadyOnHold

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 26632: Remove two more occurrences
Nick Clemens [Mon, 16 May 2022 19:37:59 +0000 (19:37 +0000)]
Bug 26632: Remove two more occurrences

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 26632: (Bug 22532 follow-up) Remove random variables
Nick Clemens [Mon, 16 May 2022 19:32:03 +0000 (19:32 +0000)]
Bug 26632: (Bug 22532 follow-up) Remove random variables

AddBiblioToBatch and AddAuthToBatch were btoh passing a random number for the
parameter $update_counts

This simply removes that value as should have been done on 22532

To test:
1 - Stage a marc file
2 - Confirm it works befor and after patch

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 23202: Fix screen freeze when ordereing several items
Johanna Raisa [Tue, 26 Jul 2022 09:01:56 +0000 (12:01 +0300)]
Bug 23202: Fix screen freeze when ordereing several items

This patch fixes adding multiple items on order acquisitions

The error is: Uncaught TypeError: $(...).parent(...).attr(...) is undefined

Test plan:
1) Set dateaccessioned.pl plugin to ACQ framework's 952$d field.
2) Create basket to a vendor and add order from a new empty record.
3) Add date acquired value from calendar.
4) Add multiple items and see that the view freezes.
5) Apply the patch
6) Reload the page and repeat the steps 3 and 4.
7) See that the items are added.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
JD Amended patch: adjust commit title
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31313: Fix holds_count and priority
Jonathan Druart [Wed, 17 Aug 2022 08:16:26 +0000 (10:16 +0200)]
Bug 31313: Fix holds_count and priority

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 15326: (follow-up) Fix staff permissions and consider library limits
Aleisha Amohia [Mon, 15 Aug 2022 05:31:57 +0000 (17:31 +1200)]
Bug 15326: (follow-up) Fix staff permissions and consider library limits

To test:
1. Take note of what your logged in library is
2. Add a new page that can be viewed on the OPAC and staff interface.
Limit the library to a different library, not your logged in library
3. Use a News item to create a hyperlink to your new page on the OPAC
and staff interface.
4. Confirm that a page error shows if you try to view the new page.
5. Edit the new page and set the library to All libraries.
6. Try to go to the new page again and confirm it shows.
7. Log out and log back into the staff interface as a staff user that
isn't a superlibrarian
8. Confirm you can view the new page as this user

Sponsored-by: Horowhenua Libraries Trust
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 15326: (follow-up) Hide RSS feed if no news items
Aleisha Amohia [Tue, 2 Aug 2022 00:40:04 +0000 (12:40 +1200)]
Bug 15326: (follow-up) Hide RSS feed if no news items

If there are pages but no news items showing on the OPAC, the RSS feed container
should not show.

Sponsored-by: Horowhenua Libraries Trust
Signed-off-by: Lisette Scheer <lisettePalouse+Koha@gmail.com>
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 15326: Using AdditionalContents for custom pages on OPAC
Aleisha Amohia [Fri, 17 Dec 2021 02:06:51 +0000 (02:06 +0000)]
Bug 15326: Using AdditionalContents for custom pages on OPAC

This page utilises the Additional Contents feature to add custom pages
to the staff client and the OPAC in the user's desired language.

To test:
1. Apply patch and restart services
2. In the staff client, go to Tools, then go to the new 'Pages' page
3. Add a new page to display on both the staff client and OPAC.
4. Confirm the URLs in the Page URL column work as expected.
5. Confirm that any pages made for the staff client only do not show in
the OPAC, and that any pages made for the OPAC only do not show in the
staff client.
6. Confirm that pages do not show on the OPAC main page where news items
show. Confirm news items show on the OPAC main page as expected.

Sponsored-by: Chartered Accountants Australia and New Zealand
Signed-off-by: Thibault Kero <thibault.keromnes@univ-paris8.fr>
Signed-off-by: Lisette Scheer <lisettePalouse+Koha@gmail.com>
Signed-off-by: Lisette Scheer <lisettePalouse+Koha@gmail.com>
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31294: Show "Required" label on mandatory fields
David Cook [Thu, 11 Aug 2022 05:40:45 +0000 (05:40 +0000)]
Bug 31294: Show "Required" label on mandatory fields

This patch adds "Required" label on mandatory fields for Article Requests

0. Apply the patch
1. koha-plack --restart kohadev
2. Change syspref 'ArticleRequests' to 'Enable'
3. Change syspref 'ArticleRequestsMandatoryFields' to '[Select all]'
4. Go to http://localhost:8080/cgi-bin/koha/opac-search.pl?idx=&q=test&weight_search=1
5. Click "Request article" for "Gairm"
6. Note that "Title", "Author", "Volume", "Issue", "Date", "Pages", and
   "Chapters" all say required
7. Change syspref 'ArticleRequestsMandatoryFields' to 'Title' and
   'Author'
8. Go to http://localhost:8080/cgi-bin/koha/opac-request-article.pl?biblionumber=29
9. Note that only "Title" and "Author" say required

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 27342: (QA follow-up) Fix test
Tomas Cohen Arazi [Tue, 16 Aug 2022 13:50:47 +0000 (10:50 -0300)]
Bug 27342: (QA follow-up) Fix test

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 27342: (QA follow-up) Remove dbh from new tests
Martin Renvoize [Wed, 10 Aug 2022 07:12:53 +0000 (08:12 +0100)]
Bug 27342: (QA follow-up) Remove dbh from new tests

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 27342: Remove dbh from C4::Auth
Jonathan Druart [Tue, 5 Jan 2021 10:28:16 +0000 (11:28 +0100)]
Bug 27342: Remove dbh from C4::Auth

We must not pass $dbh but retrieve it when needed instead

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 27342: Improve test for OPAC
Jonathan Druart [Tue, 5 Jan 2021 10:18:26 +0000 (11:18 +0100)]
Bug 27342: Improve test for OPAC

We don't need to build allowed_scripts_for_private_opac for staff

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 30901: Add Unit Tests
Kyle Hall [Wed, 29 Jun 2022 19:01:38 +0000 (15:01 -0400)]
Bug 30901: Add Unit Tests

Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 30901: Add POD for Koha::Template::Plugin::CirculationRules
Kyle M Hall [Fri, 3 Jun 2022 17:34:53 +0000 (13:34 -0400)]
Bug 30901: Add POD for Koha::Template::Plugin::CirculationRules

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 30901: Add Renewals method to CirculationRules template plugin
Kyle M Hall [Fri, 3 Jun 2022 17:14:06 +0000 (13:14 -0400)]
Bug 30901: Add Renewals method to CirculationRules template plugin

It would be useful to be able to report renewals used/remaining in some notices and slips.

Test Plan:
1) Apply this patch
2) Add the following to the RENEWAL notices:
--
[% USE CirculationRules %]
[% SET renewals = CirculationRules.Renewals( borrower.id, item.id ) %]
You have used [% renewals.count %] of [% renewals.allowed %], you have [% renewals.remaining %] renewals left.
--
3) Trigger a renewal notice
4) Verify the text is correct!

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31312: Remove GetItemsInfo from misc/migration_tools/rebuild_zebra.pl
Jonathan Druart [Thu, 2 Jun 2022 09:38:02 +0000 (11:38 +0200)]
Bug 31312: Remove GetItemsInfo from misc/migration_tools/rebuild_zebra.pl

Hum... Item2Marc ok here?

Bug 27272 is going to remove C4::Items::GetItemsInfo in favour of Koha::Items->search.

Here we are going to deal with misc/migration_tools/rebuild_zebra.pl

Test plan:
I am not sure, what do we want to test here? Items' info indexed
correctly?

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 30922: Make the "Relative's checkouts" table configurable by the table settings
Shi Yao Wang [Wed, 6 Jul 2022 14:47:03 +0000 (10:47 -0400)]
Bug 30922: Make the "Relative's checkouts" table configurable by the table settings

Adds "relatives-issues-table" in table settings.

Test plan:
1- Apply the patch
2- Check out an item to a patron with a guarantor
3- Go to the guarantor's "details" and "check out" page > relatives'
checkouts and look at the different columns (you should see collection
and location)
4- Go to
    admin > table settings > patron > moremember > relatives-issues-table
 or
    admin > table settings > circulation > circulation >
relatives-issues-table
to hide some columns (e.g. collection and location) and click save
5- Do step 3 again and notice some columns (e.g. collection and location) are hidden
6- Also notice the "Columns" and "Export" buttons that should work as
intended

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 29673: Allow English sql localization script
Marcel de Rooy [Thu, 9 Dec 2021 15:07:18 +0000 (16:07 +0100)]
Bug 29673: Allow English sql localization script

Test plan:
You might want to add a simple SQL statement to your English
custom.sql in order to verify the execution.
Run a Koha install (in English).
Check if the data shows your custom sql action.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 29723: (QA follow-up) _ vs __
Tomas Cohen Arazi [Tue, 16 Aug 2022 13:19:56 +0000 (10:19 -0300)]
Bug 29723: (QA follow-up) _ vs __

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 29723: (QA follow-up) Ensure ID's match Module names
Martin Renvoize [Wed, 10 Aug 2022 13:52:53 +0000 (14:52 +0100)]
Bug 29723: (QA follow-up) Ensure ID's match Module names

There was a disparity between module codes and how it was used to
construct ID's for various elements.. this patch updates ID's to match
codes for circulation and illrequests.

Signed-off-by: Andrew <andrewfh@dubcolib.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 29723: (QA follow-up) Correct scroll to table
Martin Renvoize [Wed, 10 Aug 2022 11:14:35 +0000 (12:14 +0100)]
Bug 29723: (QA follow-up) Correct scroll to table

This patch enabled scrolling directly to the correct table configuration when clicking the 'Configure this table'
button from any KohaTable/kohaTable table in Koha.

Test plan
1. Navigate to Administration > Cities
2. Click 'Configure this table'
3. Confirm the result is the table settings page and you are scrolled to
   the cities table configuration

Signed-off-by: Andrew <andrewfh@dubcolib.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 29723: (QA follow-up) Switch to using ID's on column settings
Martin Renvoize [Wed, 10 Aug 2022 10:27:18 +0000 (11:27 +0100)]
Bug 29723: (QA follow-up) Switch to using ID's on column settings

This patch updates the column settings page to use ID's instead of
Indexes to restor the open accordian card after a setting change.

Test plan
1 Go to Administration -> Table settings.
2 All panels should be collapsed.
3 Test expanding and collapsing panels to confirm it's working
  correctly.
4 Make a change to one of the table configurations. After clicking
  "Save" the page should reload with the same panel expanded.

Signed-off-by: Andrew <andrewfh@dubcolib.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 29723: (QA follow-up) Make button text translatable
Martin Renvoize [Wed, 10 Aug 2022 07:36:18 +0000 (08:36 +0100)]
Bug 29723: (QA follow-up) Make button text translatable

This patch makes the button text translatable. Whilst we're here I also added a wrench icon,
set the title attribute and added a class.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Andrew <andrewfh@dubcolib.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 29723: Add a "Configure table" button for KohaTable tables
Jonathan Druart [Fri, 17 Dec 2021 09:19:35 +0000 (10:19 +0100)]
Bug 29723: Add a "Configure table" button for KohaTable tables

This patch suggests to have a "Configure table" button when a table can
be configured in the "Table settings" administraition area.

Test plan:
Go to different views where the table can be configured (you an
exhaustive list on bug 29648), notice the "Configure table" button (if
you have the 'manage_column_config' subpermission.

Note that the link is correct but the scrollbar is not adjusted at the
correct position. Maybe we could improve that switching to the bootstrap
accordion plugin?

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Andrew <andrewfh@dubcolib.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31313: Unit tests
Tomas Cohen Arazi [Tue, 16 Aug 2022 13:10:03 +0000 (10:10 -0300)]
Bug 31313: Unit tests

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31318: Remove GetItemsInfo from serials/routing-preview
Jonathan Druart [Fri, 3 Jun 2022 06:26:41 +0000 (08:26 +0200)]
Bug 31318: Remove GetItemsInfo from serials/routing-preview

Bug 27272 is going to remove C4::Items::GetItemsInfo in favour of Koha::Items->search_ordered.

Here we are going to deal with serials/routing-preview

Test plan:
List items on the modified view and confirm that all the info is
displayed correctly

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31314: (QA follow-up) Prefetch and make routines use result objects
Nick Clemens [Fri, 12 Aug 2022 15:33:45 +0000 (15:33 +0000)]
Bug 31314: (QA follow-up) Prefetch and make routines use result objects

This reduces lookups for the related items that we now fetch in the templates

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31314: (QA follow-up) Search Koha::Items not $biblio->items
Nick Clemens [Fri, 12 Aug 2022 15:04:30 +0000 (15:04 +0000)]
Bug 31314: (QA follow-up) Search Koha::Items not $biblio->items

To get the host items we need to search all items, not those limited to the
same biblionumber

To test:
1 - Enable EasyAnalytics
2 - Attach an item to a record
3 - Confirm it is listed in the items list on opac reserve

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31314: Remove GetHostItemsInfo and GetItemsInfo from opac-reserve
Jonathan Druart [Fri, 3 Jun 2022 05:44:46 +0000 (07:44 +0200)]
Bug 31314: Remove GetHostItemsInfo and GetItemsInfo from opac-reserve

Bug 27272 is going to remove C4::Items::GetItemsInfo in favour of Koha::Items->search_ordered.

Here we are going to deal with opac-reserve

Test plan:
List items on the modified view and confirm that all the info is
displayed correctly

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31313: (QA follow-up) Prefetch checkouts and branches
Nick Clemens [Mon, 15 Aug 2022 11:34:59 +0000 (11:34 +0000)]
Bug 31313: (QA follow-up) Prefetch checkouts and branches

This prefetches objects we are using in templates to avoid extar DB calls

The branch fetches won't actually be used without the extra patch on 31314 that
adapts home_branch and holding_branch routines to use result objects

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31313: (QA follow-up) Search Koha::Items
Nick Clemens [Mon, 15 Aug 2022 11:32:03 +0000 (11:32 +0000)]
Bug 31313: (QA follow-up) Search Koha::Items

This ensures host items from otehr biblios are returned as well

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31313: Fix availability - OPAC opac-detail
Jonathan Druart [Mon, 1 Aug 2022 06:59:53 +0000 (08:59 +0200)]
Bug 31313: Fix availability - OPAC opac-detail

Has to move some code to a method

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31313: Remove GetItemsInfo from opac-detail
Jonathan Druart [Fri, 3 Jun 2022 04:50:44 +0000 (06:50 +0200)]
Bug 31313: Remove GetItemsInfo from opac-detail

Bug 27272 is going to remove C4::Items::GetItemsInfo in favour of Koha::Items->search_ordered.

Here we are going to deal with opac-detail

Test plan:
List items on the modified view and confirm that all the info is
displayed correctly

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31320: Remove GetItemsInfo from virtualshelves/sendshelf.pl
Jonathan Druart [Fri, 3 Jun 2022 06:33:00 +0000 (08:33 +0200)]
Bug 31320: Remove GetItemsInfo from virtualshelves/sendshelf.pl

And GetItemsLocationInfo from shelves.pl

Bug 27272 is going to remove C4::Items::GetItemsInfo in favour of Koha::Items->search_ordered.

Here we are going to deal with virtualshelves/sendshelf.pl

Test plan:
List items on the modified view and confirm that all the info is
displayed correctly

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Joonas Kylmälä <joonas.kylmala@iki.fi>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31317: Remove GetItemsInfo import from opac-tags
Jonathan Druart [Fri, 3 Jun 2022 06:23:55 +0000 (08:23 +0200)]
Bug 31317: Remove GetItemsInfo import from opac-tags

Bug 27272 is going to remove C4::Items::GetItemsInfo in favour of Koha::Items->search_ordered.

Here we are going to deal with opac-tags

Test plan:
List items on the modified view and confirm that all the info is
displayed correctly

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Joonas Kylmälä <joonas.kylmala@iki.fi>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31310: Remove GetItemsInfo from catalogue/imageviewer
Jonathan Druart [Thu, 2 Jun 2022 09:34:46 +0000 (11:34 +0200)]
Bug 31310: Remove GetItemsInfo from catalogue/imageviewer

Bug 27272 is going to remove C4::Items::GetItemsInfo in favour of Koha::Items->search_ordered.

Here we are going to deal with catalogue/imageviewer

Test plan:
List items on the modified view and confirm that all the info is
displayed correctly

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Joonas Kylmälä <joonas.kylmala@iki.fi>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31309: Remove GetItemsInfo from basket/sendbasket
Jonathan Druart [Thu, 2 Jun 2022 09:33:40 +0000 (11:33 +0200)]
Bug 31309: Remove GetItemsInfo from basket/sendbasket

Why are we display with $raw?
Why are we display the location code instead of the AV's lib?

Bug 27272 is going to remove C4::Items::GetItemsInfo in favour of Koha::Items->search_ordered.

Here we are going to deal with basket/sendbasket

Test plan:
List items on the modified view and confirm that all the info is
displayed correctly

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Joonas Kylmälä <joonas.kylmala@iki.fi>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31328: Call get_transfers from get_transfer
Jonathan Druart [Wed, 10 Aug 2022 13:33:13 +0000 (15:33 +0200)]
Bug 31328: Call get_transfers from get_transfer

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31328: Make Koha::Item->get_transfer* use Koha::Item::Transfers->filter_by_current
Tomas Cohen Arazi [Tue, 9 Aug 2022 11:40:45 +0000 (08:40 -0300)]
Bug 31328: Make Koha::Item->get_transfer* use Koha::Item::Transfers->filter_by_current

This patch makes the get_transfer and get_transfers methods internally
use the new ->filter_by_current method.

To test:
1. Run:
   $ kshell
  k$ prove t/db_dependent/Koha/Item.t
=> SUCCESS: Tests pass!
2. Apply this rewriting patch
3. Repeat 1
=> SUCCESS: Tests still pass!
4. Sign off :-D

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31302: Fix spelling in sample_notices.yml
Alex Buckley [Tue, 9 Aug 2022 07:26:07 +0000 (07:26 +0000)]
Bug 31302: Fix spelling in sample_notices.yml

Test plan:
1. Apply patch
2. Confirm 'URL(s)', rather than urls(s), is in the line:
You can download the scanned materials via the following URL(s)

Sponsored-by: Catalyst IT, New Zealand
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31308: (QA follow-up) use count to see if no items present
Nick Clemens [Wed, 10 Aug 2022 11:53:13 +0000 (11:53 +0000)]
Bug 31308: (QA follow-up) use count to see if no items present

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31308: Remove GetItemsInfo from basket/basket
Jonathan Druart [Thu, 2 Jun 2022 09:31:38 +0000 (11:31 +0200)]
Bug 31308: Remove GetItemsInfo from basket/basket

Bug 27272 is going to remove C4::Items::GetItemsInfo in favour of
Koha::Items->search_ordered.

Here we are going to deal with basket/basket.pl

Test plan:
List items on the modified view and confirm that all the info is
displayed correctly

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31158: (bug 23991 follow-up) Fix suggestion search by dates
Jonathan Druart [Mon, 1 Aug 2022 06:14:27 +0000 (08:14 +0200)]
Bug 31158: (bug 23991 follow-up) Fix suggestion search by dates

Search suggestions by date is broken, we don't remove the '_from' CGI
params for the DBIC query
DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::mysql::st execute failed: Unknown column 'suggesteddate_from' in 'where clause' at /kohadevbox/koha/Koha/Objects.pm line 394
 at /usr/share/perl5/DBIx/Class/Exception.pm line 77

Test plan:
Create some suggestions, search for them using date range (suggested
date, managed date and accepted date)

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31276: Report results are limited to 999,999 no matter the actual number of results
Kyle Hall [Mon, 1 Aug 2022 14:47:04 +0000 (10:47 -0400)]
Bug 31276: Report results are limited to 999,999 no matter the actual number of results

In Koha, any report that uses C4::Reports::Guided will be limited to 999,999 rows. This is causing problems for larger libraries where some reports may have over a million results.

Test Plan:
1) Create a report "SELECT * FROM borrowers" and run it, note the number
   of results
2) Apply this patch
3) Add the line `<report_results_limit>3</report_results_limit>`
   within the <config> block of your koha-conf.xml
4) Restart all the things!
5) Run the report, download the results as a CSV
6) Note your CSV only has 4 lines, the header and 3 patrons

Signed-off-by: Rachael Laritz <rachael.laritz@inlibro.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31325: Fix koha-preferences get
Magnus Enger [Tue, 9 Aug 2022 06:49:54 +0000 (06:49 +0000)]
Bug 31325: Fix koha-preferences get

To reproduce:
$ perl koha/misc/admin/koha-preferences get MarcFlavour
This will output something like "HASH(0x55dd4d432840)".

To test:
Apply this patch and run the command again:
$ perl koha/misc/admin/koha-preferences get MarcFlavour
This should output something like "MARC21".

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31281: Use correct reply-to email when sending overdue mails
Katrin Fischer [Sun, 7 Aug 2022 16:14:37 +0000 (16:14 +0000)]
Bug 31281: Use correct reply-to email when sending overdue mails

Overdue emails are either sent from the issuing or the home
library of an item. We never use the patron's home library,
so the reply-to address must explicitly be set in EnqueueLetter.

To test:
- Set up 2 branches (A and B) with different email addresses.
- Set up an SMTP server for each to use
- Set up an overdue notice trigger for the patron category you'll use
  First letter: 1 day delay, any notice
- Check out an item with home branch B to a patron from A
- Run the the script with:
  overdue_notices.pl -t --frombranch item-homebranch
  overdue_notices.pl -t --frombranch item-issuebranch
- Confirm for each setting that the correct email headers have been
  used. You can see the reply-to address and to-address in the
  message queue:
  SELECT * FROM message_queue;

Signed-off-by: Nason Bimbe <nason.bimbe@ptfs-europe.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31346: Fix broken Syndetics links on OPAC detail page
Lucas Gass [Thu, 11 Aug 2022 22:56:49 +0000 (22:56 +0000)]
Bug 31346: Fix broken Syndetics links on OPAC detail page

To test:
-Have some Syndetics credentials
-Turn on SyndeticsCoverImages
-Look at some and you'll notice that Syndetics cover images dont always load
-If you view the page source you'll see why. The links are built like this:
https://secure.syndetics.com/index.aspx?isbn=/LC.GIF&amp;amp;client=bedf&amp;type=xw10&amp;upc=843501038123&amp;oclc=1311289389

-Apply patch
-Cover images should load properly.

Signed-off-by: Barbara Johnson <barbara.johnson@bedfordtx.gov>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31331: Add data-order attribute for better sorting of dates
Lucas Gass [Tue, 9 Aug 2022 14:31:05 +0000 (14:31 +0000)]
Bug 31331: Add data-order attribute for better sorting of dates

To test:
1. I used the following suggestiondates:

MariaDB [koha_kohadev]> select suggesteddate from suggestions;
+---------------+
| suggesteddate |
+---------------+
| 2022-01-03    |
| 2022-08-09    |
| 2022-02-22    |
| 2021-01-21    |
+---------------+

2. Set the dateformat system preference to 'mm/dd/yyyy'.
3. Try sorting the suggestion table by date, ascending and descending,
   it is not right.
4. Apply patch
5. Try sorting by date again, ascending and descending, it should now
   sort correctly.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31245: Do not try to report results if task not started
Tomas Cohen Arazi [Tue, 26 Jul 2022 13:12:05 +0000 (10:12 -0300)]
Bug 31245: Do not try to report results if task not started

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Andrew <andrewfh@dubcolib.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31245: Do not call report for job detail view if job not started
Jonathan Druart [Wed, 27 Jul 2022 08:35:08 +0000 (10:35 +0200)]
Bug 31245: Do not call report for job detail view if job not started

We should not generate the report if the job hasn't started yet

Test plan:
Stop the koha-worker processes, modify a new item using the batch mod
tool, then see the detail page of the job

Without this patch an error is generated:
Can't use an undefined value as an ARRAY reference at /kohadevbox/koha/Koha/BackgroundJob/BatchUpdateItem.pm line 175

Signed-off-by: Andrew <andrewfh@dubcolib.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 24857: No words
Tomas Cohen Arazi [Tue, 9 Aug 2022 17:00:40 +0000 (14:00 -0300)]
Bug 24857: No words

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 24857: (QA follow-up) Add spec description
Tomas Cohen Arazi [Tue, 9 Aug 2022 16:56:05 +0000 (13:56 -0300)]
Bug 24857: (QA follow-up) Add spec description

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 28787: (QA follow-up) Add spec description
Tomas Cohen Arazi [Tue, 9 Aug 2022 16:48:52 +0000 (13:48 -0300)]
Bug 28787: (QA follow-up) Add spec description

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 28787: DBRev 22.06.00.035
Tomas Cohen Arazi [Tue, 9 Aug 2022 16:42:21 +0000 (13:42 -0300)]
Bug 28787: DBRev 22.06.00.035

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 28787: (QA follow-up) Remove unused variable
Kyle M Hall [Fri, 5 Aug 2022 12:31:26 +0000 (12:31 +0000)]
Bug 28787: (QA follow-up) Remove unused variable

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 28787: Fix misleading tests in two_factor_auth.t
Jonathan Druart [Tue, 26 Jul 2022 09:43:36 +0000 (11:43 +0200)]
Bug 28787: Fix misleading tests in two_factor_auth.t

We were having a "Patron is not authenticated yet" comment, but it was not correct,
we set 'number' and 'id' in session, and waiting-for-2FA was not set => the patron is fully authenticated.
The test returned 401 because we fully authenticated user cannot request
an otp token when not waiting for the second auth step.

This situation is already covered (last test of the subtest).

Test plan:
  prove t/db_dependent/api/v1/two_factor_auth.t
must return green

Sponsored-by: Rijksmuseum, Netherlands
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 28787: (follow-up) Typo and additional test
Marcel de Rooy [Fri, 8 Jul 2022 09:38:55 +0000 (09:38 +0000)]
Bug 28787: (follow-up) Typo and additional test

Adding a test for a 403 status when lowering authorization.
The Auth mock for check_cookie_auth is not needed here.
Reading back the session after flush either.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Sponsored-by: Rijksmuseum, Netherlands
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 28787: Comment selenium test that will fail if no SMTP server is defined
Jonathan Druart [Fri, 8 Jul 2022 07:08:40 +0000 (09:08 +0200)]
Bug 28787: Comment selenium test that will fail if no SMTP server is defined

This is a deadlock I think. Any ideas how we could continue to test that
in any conditions?

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Sponsored-by: Rijksmuseum, Netherlands
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 28787: Mock send_or_die
Jonathan Druart [Fri, 8 Jul 2022 07:05:26 +0000 (09:05 +0200)]
Bug 28787: Mock send_or_die

To make the tests pass even if no SMTP server is defined.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Sponsored-by: Rijksmuseum, Netherlands
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 28787: Don't request a token if no email address defined
Jonathan Druart [Fri, 8 Jul 2022 06:53:22 +0000 (08:53 +0200)]
Bug 28787: Don't request a token if no email address defined

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Sponsored-by: Rijksmuseum, Netherlands
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 28787: Don't send the notice if we are not waiting for 2FA
Jonathan Druart [Thu, 7 Jul 2022 17:28:38 +0000 (19:28 +0200)]
Bug 28787: Don't send the notice if we are not waiting for 2FA

If we are fully logged-in or haven't pass the password phase, don't send
the notice!

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Sponsored-by: Rijksmuseum, Netherlands
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 28787: Rename the REST API route to /auth/otp/token_delivery
Jonathan Druart [Thu, 7 Jul 2022 07:34:08 +0000 (09:34 +0200)]
Bug 28787: Rename the REST API route to /auth/otp/token_delivery

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Sponsored-by: Rijksmuseum, Netherlands
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 28787: Fix t/db_dependent/api/v1/two_factor_auth.t
Marcel de Rooy [Thu, 7 Jul 2022 06:44:04 +0000 (06:44 +0000)]
Bug 28787: Fix t/db_dependent/api/v1/two_factor_auth.t

Changing flags to 20 to include the required Staff access for
intranet login.
This changes the http status. The API raises an exception now.

Test plan:
Run t/db_dependent/api/v1/two_factor_auth.t

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Sponsored-by: Rijksmuseum, Netherlands
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 28787: Typo authenticaction
Marcel de Rooy [Mon, 27 Jun 2022 11:39:43 +0000 (11:39 +0000)]
Bug 28787: Typo authenticaction

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Sponsored-by: Rijksmuseum, Netherlands
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 28787: (follow-up) Changes in API auth, moved otp out of Letters
Marcel de Rooy [Mon, 27 Jun 2022 11:06:34 +0000 (11:06 +0000)]
Bug 28787: (follow-up) Changes in API auth, moved otp out of Letters

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Sponsored-by: Rijksmuseum, Netherlands
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 28787: Send a notice with the TOTP token
Jonathan Druart [Mon, 23 May 2022 20:51:26 +0000 (22:51 +0200)]
Bug 28787: Send a notice with the TOTP token

Bug 28786 let librarians enable a Two-factor authentication but force them to use
an application to generate the TOTP token.

This new enhancement add the ability to send an email containing the token to the
patron once it's authenticaed

The new notice template has the code '2FA_OTP_TOKEN'

Test plan:
- Setup the two-factor authentication (you need the config entry and the
syspref ON)
- Enable it for your logged in patron
- Logout
- Login and notice the new link "Send the code by email"
- Click on it and confirm that you received an email with the code
- Use the code to be fully logged in

QA question: Is 400 the correct error code to tell the email has not
been sent?

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Sponsored-by: Rijksmuseum, Netherlands
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31265: (QA follow-up) Align time selection controls like other inputs
Owen Leonard [Tue, 9 Aug 2022 16:12:08 +0000 (16:12 +0000)]
Bug 31265: (QA follow-up) Align time selection controls like other inputs

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31265: Update style of time selection controls
Jonathan Druart [Sun, 31 Jul 2022 07:45:38 +0000 (09:45 +0200)]
Bug 31265: Update style of time selection controls

This patch updates the style of the time selection controls so that it
is clearer that they are elements which the user can interact with. The
times are now styled as buttons, and a check-mark icon is added when a
time is selected.

Also changed: Pickup date and notes fields are hidden until a library
has been selected. The count of existing appointments has been removed
in favor of showing the count of available appointments. A tooltip has
been added: "Appointments available: X"

I also changed the way the date selection event is fired. I found that
jQuery's "change" event on the input itself was not reliable for some
reason. I implemented instead an "onClose" event using the flatpickr
instance.

Note: The patch contains some indentation changes.

To test, apply the patch and enable and configure curbside pickups if
necessary. You should have at least two libraries with curbside hours
defined.

- Log in to the OPAC and go to "your curbside pickups."
- Under the "Schedule a pickup" tab you should see only the option to
  select a library.
- When you select a library the "Pickup date" field should appear.
- When you select a date the time-selection buttons and the notes field
  should appear.
- Hovering over a time should trigger the "Appointments available"
  tooltip.
- Clicking a time should cause the "button" to turn green with a
  check-mark icon.
- Submit a pickup request and confirm that it is saved correctly.
- Return to the "Schedule a pickup" form and confirm that selecting the
  same library again triggers a message, "You already have a pickup
  scheduled for this library."
- Select another library and another date.
- Switch your library selection to the library you already have a
  request for. The date, time, and notes fields should be hidden again
  and the same message triggered about already having a pickup
  scheduled.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 28909: Fix handling if backend doesn't support
Andrew Isherwood [Tue, 31 Aug 2021 09:06:03 +0000 (10:06 +0100)]
Bug 28909: Fix handling if backend doesn't support

If a backend hasn't been updated to support this functionality, we need
to handle that gracefully

Also, this commit fixes some indentation.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 28909: Allow illview to use backend template
Andrew Isherwood [Fri, 27 Aug 2021 10:53:00 +0000 (11:53 +0100)]
Bug 28909: Allow illview to use backend template

This commit allows illview to use an intranet template supplied by the backend, as
per other stages. The template must be named illview.inc

Test plan:
- Apply the patch
- Install FreeForm backend (https://github.com/PTFS-Europe/koha-ill-freeform)
- Create a request
- On the resulting "Manage ILL request" note the display is normal
- Create a new file in the FreeForm backend directory: /intra-includes/illview.inc
  with the following content:

  [% BLOCK backend_jsinclude %]
  <script>(function() { alert("Working!"); })()</script>
  [% END %]

- Restart Plack if enabled
- Reload the page
=> TEST: Observe that the alert specified in the template is displayed

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31307: Remove 'already_reserved' flag from opac-reserve.pl
Jonathan Druart [Fri, 3 Jun 2022 05:32:35 +0000 (07:32 +0200)]
Bug 31307: Remove 'already_reserved' flag from opac-reserve.pl

It was never set (was set before 14695)

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31311: Remove GetItemsInfo labels/label-item-search
Jonathan Druart [Thu, 2 Jun 2022 09:35:13 +0000 (11:35 +0200)]
Bug 31311: Remove GetItemsInfo labels/label-item-search

It was commented anyway

Hey, nothing to do here!

Amended patch removes refactor comment that referred to this line, maybe?

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31316: (QA follow-up) Remove stray template close tag
Nick Clemens [Tue, 9 Aug 2022 12:44:54 +0000 (12:44 +0000)]
Bug 31316: (QA follow-up) Remove stray template close tag

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31316: Remove GetItemsInfo from opac-sendbasket
Jonathan Druart [Fri, 3 Jun 2022 06:20:17 +0000 (08:20 +0200)]
Bug 31316: Remove GetItemsInfo from opac-sendbasket

Bug 27272 is going to remove C4::Items::GetItemsInfo in favour of Koha::Items->search.

Here we are going to deal with opac-sendbasket

Test plan:
List items on the modified view and confirm that all the info is
displayed correctly

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31319: (QA follow-up) Search items directly (biblio not used yet)
Nick Clemens [Tue, 9 Aug 2022 13:21:05 +0000 (13:21 +0000)]
Bug 31319: (QA follow-up) Search items directly (biblio not used yet)

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
JD amended patch: add 'me' prefix to prevent failure if biblio is linked
with a subscription
DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::mysql::st execute failed: Column 'biblionumber' in where clause is ambiguous at /kohadevbox/koha/Koha/Objects.pm line 394

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31319: Remove GetItemsInfo from tags/list.pl
Jonathan Druart [Fri, 3 Jun 2022 06:29:19 +0000 (08:29 +0200)]
Bug 31319: Remove GetItemsInfo from tags/list.pl

Bug 27272 is going to remove C4::Items::GetItemsInfo in favour of Koha::Items->search_ordered.

Here we are going to deal with tags/list

Test plan:
List items on the modified view and confirm that all the info is
displayed correctly

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
21 months agoBug 31306: (QA follow-up) Add comments to test
Nick Clemens [Tue, 9 Aug 2022 12:57:24 +0000 (12:57 +0000)]
Bug 31306: (QA follow-up) Add comments to test

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