]> git.koha-community.org Git - koha.git/log
koha.git
19 months agoBug 31028: Unit tests for ticket update api's
Martin Renvoize [Mon, 6 Feb 2023 09:47:02 +0000 (09:47 +0000)]
Bug 31028: Unit tests for ticket update api's

This patch adds the missing unit tests for the ticket updates api
endpoints.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31028: Unit tests for ticket create notice triggers
Martin Renvoize [Fri, 3 Feb 2023 13:23:45 +0000 (13:23 +0000)]
Bug 31028: Unit tests for ticket create notice triggers

This patch adds unit tests for the two notices that can be triggered
upon ticket creation.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31028: Update patron and biblio includes to remove whitespace
Martin Renvoize [Wed, 14 Dec 2022 17:16:05 +0000 (17:16 +0000)]
Bug 31028: Update patron and biblio includes to remove whitespace

These includes used lots of [% %] blocks instead of [%- -%] and as such
the produced markup contains superflous spacing.  This is OK in the
browser, but for some reason does affect rendering in HTML email.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Helen Oliver <HOliver@tavi-port.ac.uk>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31028: (follow-up) Fix notices whitespace
Martin Renvoize [Wed, 9 Nov 2022 11:18:08 +0000 (11:18 +0000)]
Bug 31028: (follow-up) Fix notices whitespace

We we're using [% %] rather than [%- -%] in our the notice template
introduced with this patchset.  This leads to some interesting rendering
results in some email clients.  Using the proper whitespace ignoring
template markup fixes the situation.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Helen Oliver <HOliver@tavi-port.ac.uk>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31028: (follow-up) Add <br> to notices
Martin Renvoize [Fri, 4 Nov 2022 15:14:14 +0000 (15:14 +0000)]
Bug 31028: (follow-up) Add <br> to notices

This should resolve the lack of linebreaks in resulting emails

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Helen Oliver <HOliver@tavi-port.ac.uk>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31028: (follow-up) Fix permissions names
Martin Renvoize [Fri, 4 Nov 2022 12:02:48 +0000 (12:02 +0000)]
Bug 31028: (follow-up) Fix permissions names

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Helen Oliver <HOliver@tavi-port.ac.uk>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31028: Add feedback to the patron on submission
Martin Renvoize [Thu, 3 Nov 2022 15:55:39 +0000 (15:55 +0000)]
Bug 31028: Add feedback to the patron on submission

This patch adds a success alert box when a patron submits a concern
sucessfully.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Helen Oliver <HOliver@tavi-port.ac.uk>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31028: (follow-up) Consistently style help-block
Martin Renvoize [Wed, 2 Nov 2022 11:37:09 +0000 (11:37 +0000)]
Bug 31028: (follow-up) Consistently style help-block

This patch updates the opac and staff modals to set the help-block
inside a div instead of a paragraph element allowing for the wysiwyg
edited content to display as prescribed.

We move the scss inside the fieldset definition to ensure we are
specific enough to catch only the intended elements.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Helen Oliver <HOliver@tavi-port.ac.uk>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31028: (follow-up) Update notice module codes
Martin Renvoize [Wed, 2 Nov 2022 10:50:28 +0000 (10:50 +0000)]
Bug 31028: (follow-up) Update notice module codes

This patch updates the notice codes from 'catalog' to 'catalogue' to be
consistent with the existing codebase.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Helen Oliver <HOliver@tavi-port.ac.uk>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31028: (follow-up) Rename TICKET_ACKNOWLEDGE
Martin Renvoize [Wed, 2 Nov 2022 08:34:35 +0000 (08:34 +0000)]
Bug 31028: (follow-up) Rename TICKET_ACKNOWLEDGE

TICKET_ACKNOWLEDGEMENT was too long for the database field size, drop
the 'MENT' to ensure it fits.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Helen Oliver <HOliver@tavi-port.ac.uk>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31028: Only show pending concerns if there are some
Martin Renvoize [Tue, 1 Nov 2022 15:21:24 +0000 (15:21 +0000)]
Bug 31028: Only show pending concerns if there are some

This patch adds logic to catch when pending_biblio_tickets equals zero.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Helen Oliver <HOliver@tavi-port.ac.uk>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31028: (follow-up) System preference terminology
Martin Renvoize [Tue, 1 Nov 2022 15:16:30 +0000 (15:16 +0000)]
Bug 31028: (follow-up) System preference terminology

Capitalise NOTE and swap 'client' for 'interface'.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Helen Oliver <HOliver@tavi-port.ac.uk>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31028: Add display to details page
Martin Renvoize [Tue, 25 Oct 2022 15:02:09 +0000 (16:02 +0100)]
Bug 31028: Add display to details page

This patch adds the display of biblio specific concerns to the biblio
detail display page.

Test plan
1) Enable the feature as in prior patch test plans
2) Add a concern as per prior patch test plans
3) Confirm that a new tab appears at the bottom of the catalog record
   details display and all functionality from the concern management
   page is precent.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Helen Oliver <HOliver@tavi-port.ac.uk>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31028: Add ability to report concerns from the staff interface
Martin Renvoize [Tue, 25 Oct 2022 14:33:04 +0000 (15:33 +0100)]
Bug 31028: Add ability to report concerns from the staff interface

This patch brings the CatalogConcerns feature to the staff client
allowing non-cataloguers to report issues with catalog records from the
record details page.

Test plan
1) Enable the new `CatalogConcerns` system preference
2) Confirm that without the `edit_catalogue` permission your user can
   submit a catalog concern via `New -> New catalog concern` from the
   toolbar on a records detail display.
3) Confirm that the right user was recorded as the reporter on the
   catalog concern management page (You must have logged in again as a
   user with the `edit_catalogue` permission to see this page.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Helen Oliver <HOliver@tavi-port.ac.uk>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31028: Add email notification of cataloguers on submissions
Martin Renvoize [Tue, 25 Oct 2022 14:26:33 +0000 (15:26 +0100)]
Bug 31028: Add email notification of cataloguers on submissions

This patch adds an optional cataloger notification to email the
cataloging team whenever a new catalog concern is reported.

Test plan
1) Enable `OpacCatalogConcerns`
2) Add at least one email address to the new `CatalogerEmails`
   prefernce (a comma delimited list is also allowed).
3) Confirm that a default template has been added to the Notices
   management, `TICKET_NOTIFY`.
4) Submit a new concern using the OPAC
5) Confirm that an email is sent to those email addresses listed in
   CatalogerEmails.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Helen Oliver <HOliver@tavi-port.ac.uk>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31028: Add catalog concern management page to staff
Martin Renvoize [Tue, 25 Oct 2022 13:03:11 +0000 (14:03 +0100)]
Bug 31028: Add catalog concern management page to staff

This patch adds a catalog concern management page to the staff client
accessible via the cataloging home page and a new 'Pending catalog
concerns' link on the front page.

This includes added the requisit ticket_updates api endpoints and notice
triggers and templates for notifying patrons of changes to their
reported concerns.

Test plan
1) Enable the `OpacCatalogConcerns` system preference
2) Catalog concern management is tied to your users ability to edit the
   catalog, `editcatalogue`.
3) Confirm that you can see 'Catalog concerns' listed on the cataloging
   home page if you have the `editcatalogue` permission and not if you
   do not.
4) Add a new concern as an opac user.
5) Confirm that once a concern is present in the system you see a count
   of 'catalog concerns pending' on the intranet main page if you have
   the `editcatalogue` permission.
6) Click through either the cataloging home page or pending concerns
   link on the main page to view the new concerns management page.
7) Confirm the table displays as one would expect.
8) Confirm clicking on details or the concern title exposes a 'details'
   modal with the option to add an update or resolve the concern.
9) Verify that if selecting 'notify' when updateing or resolving a
   concern triggers a notice to be sent to the opac user who first
   reported the issue.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Helen Oliver <HOliver@tavi-port.ac.uk>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31028: Add acknowledgement notice
Martin Renvoize [Tue, 25 Oct 2022 12:50:58 +0000 (13:50 +0100)]
Bug 31028: Add acknowledgement notice

This patch adds an acknowledgement notice that will be sent to the opac
user upon submission of a catalog concern report.

Test plan
1) Confirm that a new notice template is added to the notices management
   page.
2) If using a sandbox, check the 'email log' from the management UI to
   see the resultant notice has been 'sent'

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Helen Oliver <HOliver@tavi-port.ac.uk>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31028: Add configurable help text and templates
Martin Renvoize [Tue, 25 Oct 2022 12:40:32 +0000 (13:40 +0100)]
Bug 31028: Add configurable help text and templates

This patch adds configurable help text and a template option to the
catalog concern report modal in the OPAC.

Test plan
1) Enable `OpacCatalogConcerns` preference
2) Build the CSS for the OPAC
3) Check that there is a 'CatalogConcernHelp' block listed in the HTML
   Customisations page.
4) On the OPAC navigate to a record and click the 'Report a concern'
   button.
5) Confirm that the content of 'CatalogConcernHelp' displays beneath the
   detail entry box and that it displays as expected.
6) Check that there is a 'CatalogConcernTemplate' block listed in the
   HTML customisations page.
7) On the OPAC 'Report a concern' modal, you should see the content of
   the 'CatalogConcernTemplate' block pre-filled in the details
textarea.

Note: There is a caveat to the template.. as textarea can only be used
to submit plaintext with this patch and as such the template needs to
not utilise the WYSIWYG editor else you will be faced with raw HTML
inside your textarea.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Helen Oliver <HOliver@tavi-port.ac.uk>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31028: Add ability to report catalog concerns from the OPAC
Martin Renvoize [Tue, 25 Oct 2022 12:34:40 +0000 (13:34 +0100)]
Bug 31028: Add ability to report catalog concerns from the OPAC

This patch adds the ability for patrons to report catalog concerns via
the opac.

Test plan
1) Enable the new `OpacCatalogConcerns` system preference
2) Navigate to the record details page of a biblio record on the OPAC
3) You should see a new 'Report a concern' option in the right side
   actions box
4) If not logged in you should have the login modal displayed and upon a
   successful login you should be redirected back to the details page
   with a new model displayed for entering concern details
5) Submit your concern with a title and details.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Helen Oliver <HOliver@tavi-port.ac.uk>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31028: Add `OpacCatalogConcerns` preference
Martin Renvoize [Tue, 25 Oct 2022 12:30:57 +0000 (13:30 +0100)]
Bug 31028: Add `OpacCatalogConcerns` preference

Enabling this preference should allow catalog concerns to be added by
logged in patrons on the opac.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Helen Oliver <HOliver@tavi-port.ac.uk>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31028: Add API's for tickets
Martin Renvoize [Tue, 25 Oct 2022 12:14:19 +0000 (13:14 +0100)]
Bug 31028: Add API's for tickets

This patch adds basic CRUD API's for the ticket endpoints.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Helen Oliver <HOliver@tavi-port.ac.uk>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31028: Add new Koha::Object(s) classes
Martin Renvoize [Tue, 25 Oct 2022 12:07:44 +0000 (13:07 +0100)]
Bug 31028: Add new Koha::Object(s) classes

This patch adds new Koha::Object(s) for the newly introduced tables,
including updateing existing Koha::Objects adding new relations as
required.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Helen Oliver <HOliver@tavi-port.ac.uk>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31028: New DBIC Schema files
Martin Renvoize [Tue, 25 Oct 2022 12:04:33 +0000 (13:04 +0100)]
Bug 31028: New DBIC Schema files

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Helen Oliver <HOliver@tavi-port.ac.uk>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31028: Add `tickets` and `ticket_updates` tables
Martin Renvoize [Tue, 25 Oct 2022 11:59:10 +0000 (12:59 +0100)]
Bug 31028: Add `tickets` and `ticket_updates` tables

This patch adds the new `tickets` and `ticket_updates` tables for
tracking catalog concern tickets.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Helen Oliver <HOliver@tavi-port.ac.uk>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 32472: Fix wrong POD for bookseller->subscriptions
Marcel de Rooy [Thu, 15 Dec 2022 10:04:14 +0000 (10:04 +0000)]
Bug 32472: Fix wrong POD for bookseller->subscriptions

You should not call this in list context anymore after
bug 29844.

Test plan:
Check pod of Bookseller.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Emmi Takkinen <emmi.takkinen@koha-suomi.fi>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 32678: Add new line in authorized values tests in search_for_data_inconsistencies.pl
Fridolin Somers [Thu, 19 Jan 2023 07:12:48 +0000 (21:12 -1000)]
Bug 32678: Add new line in authorized values tests in search_for_data_inconsistencies.pl

In search_for_data_inconsistencies.pl, the test for authorized values is a list in one line :
* The Framework *VR* is using the authorised value's category *LOC*, but the following items.location do not have a value defined ({itemnumber => value }):
 {94 => AV} {95 => AV} {96 => AV} {97 => AV} {98 => AV} {99 => AV} {100 => AV} {101 => AV} {102 => AV} {103 => AV}

It would be more clear with new lines, especially for scripts (grep, awk ...) :
* The Framework *VR* is using the authorised value's category *LOC*, but the following items.location do not have a value defined ({itemnumber => value }):
 {94 => AV}
 {95 => AV}
 {96 => AV}
 {97 => AV}
 {98 => AV}
 {99 => AV}
 {100 => AV}
 {101 => AV}
 {102 => AV}
 {103 => AV}

Test plan :
1) In koha-testing-docker
2) Delete in authorized values LOC the value AV
3) Run misc/maintenance/search_for_data_inconsistencies.pl
=> You see the new line in result

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 32811: Remove useless lines for indexer.log
Marcel de Rooy [Fri, 3 Feb 2023 09:55:27 +0000 (09:55 +0000)]
Bug 32811: Remove useless lines for indexer.log

See also bug 32612.
The output option includes the stdout.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31665: Set today date for date cataloguing plugin
Jonathan Druart [Wed, 1 Feb 2023 09:47:27 +0000 (10:47 +0100)]
Bug 31665: Set today date for date cataloguing plugin

dateaccessioned.pl must pick today's date when the input gets the focus
on.

Test plan:
Edit an item, or create a new one.
Confirm that today's date is prefilled into the date's input when it's
empty and that it gets the focus on

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Michael Adamyk <madamyk@ckls.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 32819: Fix cataloguing/value_builder/stocknumberam123.pl
Julian Maurice [Fri, 3 Feb 2023 10:58:51 +0000 (11:58 +0100)]
Bug 32819: Fix cataloguing/value_builder/stocknumberam123.pl

Use event parameter

This is part of the refactoring happening in bug 30975

Test plan:
1. Verify that the plugin continues to work as before

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 32815: Fix cataloguing/value_builder/callnumber.pl
Julian Maurice [Fri, 3 Feb 2023 10:58:51 +0000 (11:58 +0100)]
Bug 32815: Fix cataloguing/value_builder/callnumber.pl

Use event parameter

This is part of the refactoring happening in bug 30975

Test plan:
1. Verify that the plugin continues to work as before

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31471: Send multiple ISBN with 'OR' for FindDuplicate
Nick Clemens [Fri, 24 Feb 2023 14:04:34 +0000 (14:04 +0000)]
Bug 31471: Send multiple ISBN with 'OR' for FindDuplicate

When a record has multiple ISBNs the database stores them seperated by a
pipe

Zebra interprets a string like "isbn:1600213510 | 9781600213519" as an 'OR' search, but for
Elasticsearch we need to explicitly send "OR" - and Zebra support this
as well

To test:
1 - Make sure you are using Elasticsearch
2 - Cataloging->Add a new record from Z3950
3 - Choose target: LOC
4 - Search for: Control number: 14455023
5 - Import and save
6 - Search for the record again
7 - Import and save - duplicate check isn't been triggered
8 - Apply patch
9 - restart_all
10 - repeat 2-7
11 - this time you should get a duplicate notification
12 - Sitch SearchEngine syspref to 'Zebra'
13 - repeat 2-7
14 - Ensure you still get duplicate notification

Signed-off-by: Michaela Sieber <michaela.sieber@kit.edu>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 33044: Return job id if there is no connection to rabbit
Nick Clemens [Wed, 22 Feb 2023 18:13:35 +0000 (18:13 +0000)]
Bug 33044: Return job id if there is no connection to rabbit

This patch simply ensures we return the job id even if we couldn't send
the job to rabbit.

To test:
1 - In KTD: sudo service rabbitmq-server stop
2 - sudo koha-worker --stop kohadev; sudo koha-worker --queue long_tasks --stop kohadev
3 - In staff client enqueue a batch item modification - note the link to view the enqueued job has no id in the url and takes you to the main background jobs viewer
4 - Run t/db_dependent/Koha/BackgroundJob.t and notice that it fails.
5 - Apply patch
6 - Restart all
7 - Enqueue a new batch item modification
8 - Confirm the link works and has the correct id
9 - Run t/db_dependent/Koha/BackgroundJob.t; it should pass now.

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>
19 months agoBug 32674: Fix placing a hold at the OPAC for serials
Jonathan Druart [Tue, 28 Feb 2023 08:13:19 +0000 (09:13 +0100)]
Bug 32674: Fix placing a hold at the OPAC for serials

Placing a hold at the OPAC explodes with a 500 when the record is a
serial
DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::mysql::st execute failed: Column 'biblionumber' in where clause is ambiguous at /usr/share/koha/lib/Koha/Objects.pm line 394

Test plan:
* Create a serial subscription for an existing bibliographic record
* Place a hold on this record at the OPAC

Signed-off-by: Janusz Kaczmarek <januszop@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 33145: Fix ERM swagger specs
Martin Renvoize [Mon, 6 Mar 2023 10:02:04 +0000 (10:02 +0000)]
Bug 33145: Fix ERM swagger specs

This patch adds the missing 'Provider name' parameter definition to the
various ERM paths that were missing it.

Test plan
1) Run:
   docker run --rm -v $PWD/api/v1/swagger:/swagger \
          jeanberu/swagger-cli \
          swagger-cli validate swagger/swagger.yaml
=> FAIL: The spec is not valid!
2) Apply this patch
3) Repeat 1
=> SUCCESS: Tests pass!

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Edit: tcohen edited the test plan because of the failure to install
swagger-cli cleanly
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 32518: (QA follow-up) Fix alignment
Victor Grousset/tuxayo [Mon, 27 Feb 2023 08:50:27 +0000 (09:50 +0100)]
Bug 32518: (QA follow-up) Fix alignment

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 32518: Add reason option to cancel_unfilled_holds cronjob
Nick Clemens [Thu, 22 Dec 2022 21:02:56 +0000 (21:02 +0000)]
Bug 32518: Add reason option to cancel_unfilled_holds cronjob

This adds a reaosn parameter and passes it into the cancellation if supplied

To test:
1 - Place a hold for a patron in your system
2 - Run script with --days 0 -v
3 - verify that it would cancel the reserves (and that you are okay with cancelling the ones it found)
4 - Make sure you have a notice in the holds module with code 'HOLD_CANCELLATION'
5 - Set content of the notice like:
[% IF hold.cancellation_reason=='too_old' %]
Canceled old
[% END %]
6 - Run script with --days 0 -v --reason too_bad -c
7 - Confirm hold cancelled, no notice sent to patron
8 - Place another hold
9 - Run script with --days 0 -v --reason too_old -c
10 - Confirm hold cancelled, notice sent to patron

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 32663: Limit streetnumber to 10 characters in OPAC
David Cook [Wed, 18 Jan 2023 01:28:38 +0000 (01:28 +0000)]
Bug 32663: Limit streetnumber to 10 characters in OPAC

This change harmonizes the patron streetnumber input between
the staff interface and the OPAC, so that you can only enter 10
characters into the streetnumber for the OPAC. Without this change,
a fatal error will be thrown trying to save the too long data.

Test plan:
0. Apply the patch
1. Go to http://localhost:8080/cgi-bin/koha/opac-memberentry.pl
2. Note that you can only enter 10 characters into the "Street number"
field as a self-registration patron
3. Log into Koha
4. Go to http://localhost:8080/cgi-bin/koha/opac-memberentry.pl
5. Note that you can only enter 10 characters into the "Street number"
field when editing logged in patron details too
6. Go to http://localhost:8081/cgi-bin/koha/members/memberentry.pl?op=add&categorycode=S
7. Note that you can only enter 10 characters into the "Street number"
field as a staff member

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Solene Ngamga <solene.ngamga@inLibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 32983: Use REST API route to retrieve authorised values
Pedro Amorim [Thu, 23 Feb 2023 12:28:18 +0000 (12:28 +0000)]
Bug 32983: Use REST API route to retrieve authorised values

Make one API call for all AV categories+values instead of one API call per AV category required

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 32983: ERM - Retrieve AVs from an endpoint
Jonathan Druart [Thu, 16 Feb 2023 13:38:46 +0000 (14:38 +0100)]
Bug 32983: ERM - Retrieve AVs from an endpoint

Bug 32981 let us retrieve the authorised values from a REST API route,
instead of injecting them from the template. Let us that for the ERM module!

Test plan:
You will notice a "Loading" screen when refreshing the ERM module
Then you should not notice any other UI changes. Dropdown list should be
populated like before this patch.

Some technical notes:
I am expecting this to be slower than before, but it feels better to use
a REST API route to retrieve the AV
Future improvement will be to lazy load the AVs, to speed up the landing
page. However it needs more changes, and this gets big enough.
I would like to see a follow-up that move the code from ERM/Main.vue to
the authorised value store (I've failed at that), but that should
certainly be done after the lazy loading is implemented anyway)

Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 30069: (QA follow-up) Use pure DBIC for select and delete with single query
Kyle Hall [Thu, 2 Mar 2023 12:58:13 +0000 (07:58 -0500)]
Bug 30069: (QA follow-up) Use pure DBIC for select and delete with single query

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 30069: (QA follow-up) Rebase and add filter
Matt Blenkinsop [Wed, 1 Mar 2023 15:13:48 +0000 (15:13 +0000)]
Bug 30069: (QA follow-up) Rebase and add filter

This patch now checks the status of messages and ignores any message
with a status of 'new'. It is also rebased to account for changes made
to cleanup_database.pl in bug 17350.

Test plan:
1) Ensure you have some EDI orders or even just some dummy messages in the edifact_messages table with a mixture of statuses including 'new'
2) Run perl misc/cronjobs/cleanup_database.pl --edifact-messages 100 --verbose (Change the number of days according to the data in your table)
3) The response should show a number of messages that would have been deleted
4) Run perl misc/cronjobs/cleanup_database.pl --edifact-messages 100 --verbose --confirm
5) The response should now show the same number of messages have been deleted
6) Check your edifact_messages table to confirm that the data has been deleted
7) Confirm that no messages marked 'new' have been deleted

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 30069: (QA follow-up) Fix capitalization for edifact
Katrin Fischer [Mon, 20 Feb 2023 21:28:05 +0000 (21:28 +0000)]
Bug 30069: (QA follow-up) Fix capitalization for edifact

Changes a few occurrences of edifact in the output messages
to EDIFACT.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 30069: Add edifact-messages to cleanup_database.pl
Matt Blenkinsop [Wed, 15 Feb 2023 14:20:54 +0000 (14:20 +0000)]
Bug 30069: Add edifact-messages to cleanup_database.pl

This patch allows users to clear out old edifact_messages using the cleanup_database script. The number of days can either be set in the CLI or the default value of 365 can be used.

Test plan:
1) Ensure you have some EDI orders or even just some dummy messages in the edifact_messages table
2) Run perl misc/cronjobs/cleanup_database.pl --edifact-messages 100 --verbose (Change the number of days according to the data in your table)
3) The response should show a number of messages that would have been deleted
4) Run perl misc/cronjobs/cleanup_database.pl --edifact-messages 100 --verbose --confirm
5) The response should now show the same number of messages have been deleted
6) Check your edifact_messages table to confirm that the data has been deleted

Sponsored-by: PTFS Europe
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31221: Buttons overflow in OPAC search results in mobile view
Hammat Wele [Wed, 14 Dec 2022 12:39:54 +0000 (12:39 +0000)]
Bug 31221: Buttons overflow in OPAC search results in mobile view

To reproduce:
1- Have at least 10 record of the same type that can be viewed from OPAC
2- Go to administration > system preferences > OPACnumSearchResults and set it to 1
3- Go to the OPAC and search for the type from step 1
4- Notice top and bottom page selections are numbered from 1 to 10 + Next >> + Last >>
5- Inspect the webpage and switch to mobile view
6- Reduce display width and notice the buttons (of step 4) on the right are overflowing the screen
7- Apply the patch
8- compile the .scss file 'yarn build --view opac'
9- Clear your navigator caches
10- repeat step 3,5 and 6
11- Notice the buttons (of step 4) are no more overflowing the screen

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Bug 31221: (fix) Adding "flex-wrap: wrap" to the pagination links in opac.scss

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 32960: Add option "not checked out" to item search
Katrin Fischer [Sat, 18 Feb 2023 11:15:35 +0000 (11:15 +0000)]
Bug 32960: Add option "not checked out" to item search

This enhances the availability search option on item search
to have a third option: ignore, checked out and not checked out.
I chose 'not checked out' as available could be misleading,
the item might still be lost or withdrawn and not on the shelf.

To test:
* Apply patch
* Make sure some items are checked out
* Search with 'ignore' - note number of results
* Search with 'checked out' - note number of results
* Search with 'not checked out' - number of results should
  match ignore minus checked out

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 32997: (QA follow-up) values => authorised_values
Tomas Cohen Arazi [Thu, 2 Mar 2023 14:45:12 +0000 (11:45 -0300)]
Bug 32997: (QA follow-up) values => authorised_values

This patch renames that for consistency, and also makes use of the
->authorised_values accessor on the category.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 32997: Add tests
Pedro Amorim [Thu, 23 Feb 2023 14:37:20 +0000 (14:37 +0000)]
Bug 32997: Add tests

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 32997: Add REST API endpoint to list authorised values for multiple given categories
Pedro Amorim [Mon, 20 Feb 2023 16:17:41 +0000 (16:17 +0000)]
Bug 32997: Add REST API endpoint to list authorised values for multiple given categories

This patch adds /api/v1/authorised_value_categories endpoint that
retrieves authorised value categories for the given names and their
authorised values if x-koha-embed: authorised_values is also given.

To test:
Apply patch
curl -u koha:koha --request GET \"http://localhost:8081/api/v1/authorised_value_categories?q=%7B%22me.category_name%22%3A%5B%22LOC%22%2C%22YES_NO%22%5D%7D\" --header \"x-koha-embed:authorised_values\"

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 32981: (QA follow-up) Fix POD and file permissions
Nick Clemens [Fri, 24 Feb 2023 14:47:44 +0000 (14:47 +0000)]
Bug 32981: (QA follow-up) Fix POD and file permissions

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 32981: Add endpoint to get AV for given category
Jonathan Druart [Thu, 16 Feb 2023 10:45:20 +0000 (11:45 +0100)]
Bug 32981: Add endpoint to get AV for given category

For, at least, the ERM module we would like to retrieve the authorised
values for a given category to build a dropdown list with the different options.

It has been decided on bug 17390 to use
GET /authorised_value_categories/:authorised_value_category_id/values

Test plan:
curl -v -s -u koha:koha --request GET  http://kohadev-intra.mydnsname.org:8081/api/v1/authorised_value_categories/LOC/values
Should display the list of LOC

curl -v -s -u koha:koha --request GET  http://kohadev-intra.mydnsname.org:8081/api/v1/authorised_value_categories/xLOCx/values
Should return a 404

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 32803: EnableItemGroups and EnableItemGroupHolds options are wrong
Caroline Cyr La Rose [Thu, 2 Feb 2023 17:45:04 +0000 (12:45 -0500)]
Bug 32803: EnableItemGroups and EnableItemGroupHolds options are wrong

This patch corrects the options for the EnableItemGroups and
EnableItemGroupHolds system preferences.

To test:
1. Enable EnableItemGroups and EnableItemGroupHolds system preferences
   1.1. Go to Administration > Global system preferences
   1.2. Search for EnableItemGroup (no s, to get both)
   1.3. Enable both EnableItemGroups and EnableItemGroupHolds
   1.4. Click Save all Circulation preferences
2. Go to About Koha > System information
   --> There is a warning message
3. Go to a bibliographic record with at least one item
   --> The item group tab is displayed
4. Create an item group
   4.1. Click New item group
   4.2. Enter a name
   4.3. Click Submit
   4.4. In the Holdings tab, select the item
   4.5. Click on Add/move to item group
   4.6. Click Set item group
5. Place a hold on the item group
   5.1. Click Place hold
   5.2. Search for a patron
   5.3. In the 'Hold next available item from an item group' section, select the item group
   5.4. Click Place hold
   --> Placing a hold is possible
6. Disable EnableItemGroups and EnableItemGroupHolds system preferences
   1.1. Go to Administration > Global system preferences
   1.2. Search for EnableItemGroup (no s, to get both)
   1.3. Disable both EnableItemGroups and EnableItemGroupHolds
   1.4. Click Save all Circulation preferences
7. Go to About Koha > System information
   --> There is a warning message
8. Apply patch
9. Redo steps 1 and 2
   --> There is no warning
10. Redo step 3
   --> The item group tab is displayed
11. Redo steps 4 and 5
   --> Placing a hold is possible
12. Redo steps 6 and 7
   --> There is no warning

Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
JD Amended commit message: * Commit title does not start with 'Bug XXXXX: '
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 31453: Add ability to filter messages to process using process_message_queue...
Kyle M Hall [Wed, 24 Aug 2022 17:54:49 +0000 (13:54 -0400)]
Bug 31453: Add ability to filter messages to process using process_message_queue.pl via a command line parameter

It would be very useful to be able to tell process_message_queue.pl to skip processing some messages. This is particularly useful where a plugin handles sending some message using the before_send_messages hook, but while that plugin is processing, more messages meant for the plugin might be queued. At that point, control moves back to the script and SendQueuedMessages is called, and those messages end up being processed there instead of by the plugin.

Test Plan:
1) Apply this patch
2) Queue two messages, each with a unique word
3) Run process_message_queue --where "content NOT LIKE '%WORD%'"
   where WORD is a unique word in one of the two message
4) Note the message containing "WORD" was not processed
5) prove t/db_dependent/Letters.t

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 32576: Replace panels with page-sections
Martin Renvoize [Fri, 6 Jan 2023 15:33:29 +0000 (15:33 +0000)]
Bug 32576: Replace panels with page-sections

This patch replaces the bootstrap panels with the more modern koha
page-section cards layout.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomás Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 32576: Move page-section outside of table include
Martin Renvoize [Fri, 6 Jan 2023 15:17:06 +0000 (15:17 +0000)]
Bug 32576: Move page-section outside of table include

This patch drops the superflous div from the ill-list-table include and
instead opts to wrap calls to it with a more appropriately positioned
div instead.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomás Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 33003: Show the vendor type on vendor detail page
Katrin Fischer [Sat, 18 Feb 2023 10:25:04 +0000 (10:25 +0000)]
Bug 33003: Show the vendor type on vendor detail page

When using an authorised value VENDOR_TYPE for the
vendor type, we should show the AV description
everywhere instead of the code. It already works on
the vendor search, but not on the vendor detail page.
With this patch it will also work there.

To test:
1. Add at least one authorized value in VENDOR_TYPE
   1.1. Go to Administration > Authorized values
   1.2. Search for VENDOR_TYPE
   1.3. Click 'Add'
   1.4. Fill out the form
        - Authorized value: BOOK
        - Description: Print books
   1.5. Click 'Save'
2. Add a new vendor
   2.1. Go to Acquisitions
   2.2. Click 'New vendor'
   2.3. Fill out the form
        - Name: ABC Bookstore
        - Vendor type: Print books
   2.4. Click 'Save'
3. Go to the vendor page
   3.1. Click on the vendor name
   --> The value in "Type" is BOOK, it should be "Print books"
4. Apply patch
   4.1. Repeat test, now it should show the description

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomás Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 33101: Restore OPAC basket detailed view
Frédéric Demians [Wed, 1 Mar 2023 08:22:22 +0000 (09:22 +0100)]
Bug 33101: Restore OPAC basket detailed view

The OPAC basket detailed view display is broken since since bug 32445.
This patch restore the usual operation.

TO TEST:

1. Add a biblio recor into the OPAC basket.
2. Click on the cart to display its content.
3. Click on More details
   => error 500
4. Apply the patch, and repeat 3.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomás Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 32639: Send opac-search.osdx without doing an empty search
David Cook [Mon, 16 Jan 2023 06:03:13 +0000 (06:03 +0000)]
Bug 32639: Send opac-search.osdx without doing an empty search

This patch sends out opac-search.osdx without running the entirety
of opac-search.pl without any search query.

This prevents unnecessary computations and warnings from appearing
in the logs.

Test plan:
1. Apply patch
2. Go to
http://kohadev.myDNSname.org:8080/cgi-bin/koha/opac-search.pl?format=opensearchdescription
3. Note that no errors appear in
/var/log/koha/kohadev/plack-opac-error.log
4. Verify that opac-search.pl still works as expected when
doing a search via the web UI

Signed-off-by: David Nind <david@davidnind.com>
JD Amended patch: remove ref to bug number, we use git!

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 33055: (bug 32624 follow-up) Don't send a screen message if not blocked
Nick Clemens [Thu, 23 Feb 2023 15:33:00 +0000 (15:33 +0000)]
Bug 33055: (bug 32624 follow-up) Don't send a screen message if not blocked

To test:
0 - Apply first patch
1 - prove -v t/db_dependent/SIP/Patron.t
2 - It fails
3 - Apply second patch
4 - prove -v t/db_dependent/SIP/Patron.t
5 - It passes!

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 33055: (bug 32624 follow-up) Unit tests
Nick Clemens [Thu, 23 Feb 2023 15:32:21 +0000 (15:32 +0000)]
Bug 33055: (bug 32624 follow-up) Unit tests

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 32495: (follow-up) Remove required property
Matt Blenkinsop [Wed, 1 Mar 2023 10:46:20 +0000 (10:46 +0000)]
Bug 32495: (follow-up) Remove required property

This follow-up removes the required property from the text area as this
was missed previously.

Test plan:
1) In the ERM module, add a new agreement and observe that the Description field is required
2) Apply patch
3) Repeat step 1 but this time the Required flag will not be visible.
4) Submit the form with the Description field blank - the submission
   should work

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 32728: Fix warning
Jonathan Druart [Tue, 28 Feb 2023 09:59:53 +0000 (10:59 +0100)]
Bug 32728: Fix warning

There is a couple of wrong things from the previous patch:

* There is a warning in the console
Firefox
[Vue Router warn]: Unexpected error when starting the router: TypeError: document.getElementById(...) is null
Chrome
[Vue Router warn]: Unexpected error when starting the router: TypeError: Cannot read properties of null (reading 'click')
That's because the tabs are not initialized yet, and so the tab is not
correctly selected when the app is loaded.

* "Search titles" is selected when on packages, and "Search packages" is
selected when on titles

This patch remove the warning and fix the second problem.

However the tab is still wrong when the app is loaded. Will see later if
that can be fixed, but it's not trivial at first glance.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
19 months agoBug 32594: (QA follow-up) Fix POD
Tomas Cohen Arazi [Wed, 1 Mar 2023 13:55:03 +0000 (10:55 -0300)]
Bug 32594: (QA follow-up) Fix POD

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 32594: (QA follow-up) Adjust tests
Tomas Cohen Arazi [Mon, 27 Feb 2023 16:11:54 +0000 (13:11 -0300)]
Bug 32594: (QA follow-up) Adjust tests

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 32799: DBRev 22.12.00.009
Tomas Cohen Arazi [Mon, 27 Feb 2023 16:01:30 +0000 (13:01 -0300)]
Bug 32799: DBRev 22.12.00.009

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 32799: Rename ILLSTATUS authorised value category to ILL_STATUS_ALIAS
Katrin Fischer [Thu, 9 Feb 2023 21:08:53 +0000 (21:08 +0000)]
Bug 32799: Rename ILLSTATUS authorised value category to ILL_STATUS_ALIAS

To test:
1) Activate the IllModule system preference
2) Install a backend (BLDSS or FreeForm) following the wiki instructions:
3) Configure some authorised values for ILLSTATUS
4) Apply patch
5) Run database update
6) Verify your configured values have been updated to ILL_STATUS_ALIAS
7) Add another ILL_STATUS_ALIAS: there should now be an explanation in the
   categories list
8) Go to the ILL module and add a new request
9) Edit the request, verify that your status alias show in the status list
10) Set one of your status and save
11) Verify that the ILL requests list search filters show your status alias
12) Manage the request again and verify that the ILL request log shows the
    status descriptions correctly
13) Verify the description of the ILLHiddenRequestStatuses has
    been updated with the new authorised value category

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 32159: Fix heading hierarchy on uncertain prices page
Katrin Fischer [Thu, 9 Feb 2023 21:52:07 +0000 (22:52 +0100)]
Bug 32159: Fix heading hierarchy on uncertain prices page

This makes sure we don't have 2 level 1 headings on the same page.

To test:
* Create a new order for a basket in the acq module,
  make sure the uncertain price checkbox is checked bevor saving
* Go to uncertain prices using the link in the toolbar on the
  basket summary page
* Verify that there are 2 almost identical h1 headings and a "/ Fax:"
  reference at the top of the page
* Apply patch
* Verify that we now have one level 1 heading and a level 2 heading
  for each section. The fax reference is also gone.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 32585: (bug 32583 follow-up) Fix some variable references
Michael Hafen [Fri, 6 Jan 2023 23:11:01 +0000 (16:11 -0700)]
Bug 32585: (bug 32583 follow-up) Fix some variable references

Bug 32583 change the $item variable from a hash to an object.  Trivial patch
to change some hash references to object method calls.

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>
20 months agoBug 33004: DBRev 22.12.00.008
Tomas Cohen Arazi [Mon, 27 Feb 2023 15:00:37 +0000 (12:00 -0300)]
Bug 33004: DBRev 22.12.00.008

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 33004: Add VENDOR_TYPE to default authorised value categories
Katrin Fischer [Sat, 18 Feb 2023 11:01:54 +0000 (11:01 +0000)]
Bug 33004: Add VENDOR_TYPE to default authorised value categories

To test:
* Go to administration > authorised values
* Verify that VENDOR_TYPE doesn't show in the list
* Apply patch
* Run database update
* Verify that VENDOR_TYPE does now appear and has a nice
  description (not added by this patch)
* Bonus: start over and run the web installer, VENDOR_TYPE
  should now be already there

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 17350: Add note about how the saved reports data is created in first place
Katrin Fischer [Fri, 27 Jan 2023 11:29:49 +0000 (11:29 +0000)]
Bug 17350: Add note about how the saved reports data is created in first place

This amends the documentation of the cleanup_database.pl script
to include a hint for how the saved reports data is created.

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 17350: Purge old saved reports via cleanup_database
Andrew Fuerste-Henry [Mon, 21 Nov 2022 20:00:57 +0000 (20:00 +0000)]
Bug 17350: Purge old saved reports via cleanup_database

To test:
apply patch
1 - have or create a report
2 - run your report via the command line with --store-results. Do this twice.
3 - update the saved_reports table to set date_run for one of your two saved results set to a datetime more than 5 days ago
4 - perl misc/cronjobs/cleanup_database.pl --reports 5 --verbose --confirm
5 - Koha tells you its deleting saved reports data from more than 5 days ago
6 - confirm in the database and the staff interface that it's done so

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 32904: Check if responseJSON is defined for dataTable error
Aleisha Amohia [Tue, 7 Feb 2023 22:00:18 +0000 (22:00 +0000)]
Bug 32904: Check if responseJSON is defined for dataTable error

This patch checks if responseJSON is defined before checking if
responseJSON.errors is defined.

Sponsored-by: Education Services Australia SCIS
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 31056: Restore closeandprint function on basketgroups page
Katrin Fischer [Thu, 9 Feb 2023 22:57:12 +0000 (23:57 +0100)]
Bug 31056: Restore closeandprint function on basketgroups page

Bug 13614 removed the basketgroup.js asset from the basket group
page. This file includes the closeandprint function used for
closing and printing the PDF from the open basket groups tab.
The patch restores just this function directly in the file where
it's needed as this is the only spot and it's only a few lines.
The rest of basketgroup.js appears unused.

To test:
* Create a basket with one or more oder lines
* Close the basket and check the checkbox to add it to a
  basket group
* Reopen the basket group from the basket groups page
* Verify the close and print only leads to a JS error and
  nothing happens
* Apply patch
* Repeat and verify you can now 'Close and print' from the
  open basket group tab
* Verify all other buttons work as expected as well

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
JD Amended patch: fix indentation and spacing

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 32611: Not for loan items don't show the specific not for loan value in OPAC...
Owen Leonard [Thu, 23 Feb 2023 17:10:32 +0000 (17:10 +0000)]
Bug 32611: Not for loan items don't show the specific not for loan value in OPAC detail page

This patch corrects what appear to be some copy-paste errors which
resulted in the "not for loan" authorized value description not
displaying, instead the generic "Not for loan" is shown.

The patch also adds another case for displaying the item restricted
status. Previously items.restricted would only display if the item
*also* had a notforloan value.

To test it's probably easiest to find a record with multiple items and
set various item statuses (damaged, notforloan, lost, restricted) and
confirm that the right description is shown.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 32973: Use template wrapper for breadcrumbs: about, main, and error page
Owen Leonard [Thu, 5 Jan 2023 17:16:30 +0000 (17:16 +0000)]
Bug 32973: Use template wrapper for breadcrumbs: about, main, and error page

This patch updates the staff interface home page, the about page, and
the error page template so that they use the new template WRAPPER for
breadcrumbs.

To test, apply the patch and view each page to confirm that the
breadcrumbs are correct:

- Staff interface home page
- About page
- Error page (the easiest example is a 404 error)

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>
20 months agoBug 32293: Fix terminology in warning when creating orders from staged file
Katrin Fischer [Sun, 5 Feb 2023 01:49:21 +0000 (01:49 +0000)]
Bug 32293: Fix terminology in warning when creating orders from staged file

When you are ordering from a staged file and the
fund is missing, there is a warning:

Some budgets are not defined in item records

Budgets shoudl be funds here.

To test:
* Add a new basket
* Add an order from a staged file or from a file
* Leave the fund values of some selected items empty
* Make sure default fund entry is also empty
* Warning message should be triggered on saving
* Apply patch, repeat, verify it is correct now.

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>
20 months agoBug 32205: Remove unnecessary syspref template params for failed OPAC auth
David Cook [Tue, 15 Nov 2022 01:25:42 +0000 (01:25 +0000)]
Bug 32205: Remove unnecessary syspref template params for failed OPAC auth

This patch removes some unnecessary syspref template params for
failed OPAC auth. The templates handle these syspref using the
Koha.Preference() TT plugin function, so they're completely redundant
and just make checkauth() longer than it needs to be.

Test plan:
1) Apply patch
2) Enable OpacCloud, OpacBrowser, and OpacTopissue sysprefs
3) koha-plack --restart kohadev
4) Log out of Koha if you're logged in
5) Go to http://localhost:8080/cgi-bin/koha/opac-user.pl
6) Note that you can see the Cart as well as links for the following:
Browse by hierarchy, Authority search, Tag cloud, Subject cloud,
Most popular

Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Solene Ngamga <solene.ngamga@inLibro.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 33015: Fix some 'Cancel' links to point to cataloging start page
Katrin Fischer [Mon, 20 Feb 2023 22:15:48 +0000 (22:15 +0000)]
Bug 33015: Fix some 'Cancel' links to point to cataloging start page

Some 'cancel' links of tools moved to the cataloguing module still
pointed to the tools start page. This adds some more consistency.

To test:
* Go to cataloguing
  * Batch item editing
  * Batch record deletion
  * Batch record modification (create a MARC modification template first)
* Verify the 'cancel' link on each page points to tools
* Apply patch: cancelling should not take you to the cataloging start page

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
JD Amended patch: indentation + fix typo
-        <a class="cancel" href="/cgi-bin/koha/catalouging/cataloging-home.pl">Cancel</a>
+        <a class="cancel" href="/cgi-bin/koha/cataloguing/cataloging-home.pl">Cancel</a>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 32215: Remove unused "Your searched for" lines from patron restrictions admin...
Katrin Fischer [Mon, 20 Feb 2023 23:08:51 +0000 (23:08 +0000)]
Bug 32215: Remove unused "Your searched for" lines from patron restrictions admin page

To test:
* Go to administration > patron restrictions
* Search for a specific restrictions
* Verify you can't make the 'You searched for' above the results table show
* Apply patch
* Everything should appear unchanged

Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 33048: Fix email link on error page when opac login not allowed
David Cook [Thu, 23 Feb 2023 00:43:31 +0000 (00:43 +0000)]
Bug 33048: Fix email link on error page when opac login not allowed

This change replaces a non-existent variable with the
KohaAdminEmailAddress syspref.

Test plan:
0. Apply the patch
1. Go to http://localhost:8081/cgi-bin/koha/admin/preferences.pl?op=search&searchfield=opacuserlogin
2. Set to "Don't allow"
3. In an incognito window, go to http://localhost:8080/cgi-bin/koha/opac-reportproblem.pl
4. Note that the "mailto" link for "Email" has the value from KohaAdminEmailAddress syspref

Signed-off-by: Sally <sally.healey@cheshiresharedservices.gov.uk>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 32503: Use first cancellation for date ordering
Martin Renvoize [Wed, 4 Jan 2023 10:59:55 +0000 (10:59 +0000)]
Bug 32503: Use first cancellation for date ordering

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 32503: (follow-up) Move data-order attributes
Martin Renvoize [Thu, 29 Dec 2022 11:33:47 +0000 (11:33 +0000)]
Bug 32503: (follow-up) Move data-order attributes

It looks like the data-order attributes were at the wrong level to me,
i.e. not part of the 'td' but instead part of the cell content.

This patch moves those data-order attributes where possible and drops
the data-type definitions on the headers.

However, for the cancellation case, this isn't as clear cut as we may
well display more than one cancellation request date in the same cell.
For this case I've left Katrins data-type="@data-order" trick.

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 32503: Fix date sorting for holds awaiting pickup tables
Katrin Fischer [Wed, 28 Dec 2022 22:39:43 +0000 (22:39 +0000)]
Bug 32503: Fix date sorting for holds awaiting pickup tables

This patch is a little experimental, but seems to do the trick.

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>
20 months agoBug 33032: Remove alternateholdings_count
Jonathan Druart [Thu, 23 Feb 2023 14:46:48 +0000 (15:46 +0100)]
Bug 33032: Remove alternateholdings_count

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 33032: Fix alternate holdings in staff interface search results
Fridolin Somers [Tue, 21 Feb 2023 20:03:25 +0000 (10:03 -1000)]
Bug 33032: Fix alternate holdings in staff interface search results

If system preference AlternateHoldingsField is used, one can see a display in OPAC search results.
This display does not appear in staff interface search results anymore.

Test plan :
1) Enable feature with system preference 'AlternateHoldingsField', ie 852abc
2) Edit a record to add some datas in field 852
3) Perform a search in staff interface
=> You see the alternate holdings datas

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 32685: Correct authority match display on import
Nick Clemens [Thu, 19 Jan 2023 20:47:31 +0000 (20:47 +0000)]
Bug 32685: Correct authority match display on import

Bug 22785 updated the import records table, but mixed javascript variables and template toolkit, this means all matches are treated as biblios

To test:
1 - Export some authority records form Koha
2 - Create a matching rule based on 'Local-number' and field 001
3 - Stage the records for import using above rule
4 - Note the match links point to authorities, but the citations point to biblios
5 - Apply patch
6 - Reload the page
7 - Confirm the links have the correct text

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>
20 months agoBug 33020: (QA follow-up) POD and chmod
Nick Clemens [Fri, 24 Feb 2023 21:01:43 +0000 (21:01 +0000)]
Bug 33020: (QA follow-up) POD and chmod

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 33020: Add missing Koha::Logger->history
Jonathan Druart [Wed, 22 Feb 2023 10:02:39 +0000 (11:02 +0100)]
Bug 33020: Add missing Koha::Logger->history

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 33020: Add test
Jonathan Druart [Wed, 22 Feb 2023 09:20:56 +0000 (10:20 +0100)]
Bug 33020: Add test

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 32925: Rename isSubmitting with submitting
Jonathan Druart [Wed, 15 Feb 2023 13:17:16 +0000 (14:17 +0100)]
Bug 32925: Rename isSubmitting with submitting

Asking to do somthing, not asking if it's being done

Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 32925: Add test
Jonathan Druart [Wed, 15 Feb 2023 11:26:39 +0000 (12:26 +0100)]
Bug 32925: Add test

Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 32925: Handle submission notification at fetch level
Jonathan Druart [Wed, 15 Feb 2023 11:02:31 +0000 (12:02 +0100)]
Bug 32925: Handle submission notification at fetch level

This is done in a single place now!

Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 32925: Use a new state for this message
Jonathan Druart [Thu, 9 Feb 2023 15:17:09 +0000 (16:17 +0100)]
Bug 32925: Use a new state for this message

The previous patch didn't work, there is a validation step that make the
form non-accessible after it's greyed out.

This patch is using a new state is_submitting, like the other messages.

Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 32925: Display loading info when a form is submitted
Jonathan Druart [Thu, 9 Feb 2023 13:56:43 +0000 (14:56 +0100)]
Bug 32925: Display loading info when a form is submitted

With this new ButtonSubmit component all our submit buttons will look
and behave identically.
Here we need a "submitting" information to be displayed, and the form to
be "deactivated".

This patch is a POC and use the new component on the add agreement and
delete agreement forms

Test plan:
It's easier to test if you add a sleep in the relevant place
(Koha/REST/V1/ERM/Agreements.pm for list and add/update)
Confirm that you see a "Submitting..." in the middle of the screen

Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 32939: (follow-up) Use APIClient to fetch vendors
Jonathan Druart [Fri, 24 Feb 2023 12:23:32 +0000 (13:23 +0100)]
Bug 32939: (follow-up) Use APIClient to fetch vendors

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 32939: Use APIClient to replace PATCH requests
Jonathan Druart [Tue, 21 Feb 2023 12:09:23 +0000 (13:09 +0100)]
Bug 32939: Use APIClient to replace PATCH requests

Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 32939: Use APIClient to replace some more fetch calls
Jonathan Druart [Tue, 21 Feb 2023 11:50:02 +0000 (12:50 +0100)]
Bug 32939: Use APIClient to replace some more fetch calls

Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 32939: Remove fetch/erm.js
Jonathan Druart [Tue, 21 Feb 2023 11:42:29 +0000 (12:42 +0100)]
Bug 32939: Remove fetch/erm.js

Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 32939: Use APIClient to fetch EBSCO eHoldings
Jonathan Druart [Tue, 21 Feb 2023 11:42:15 +0000 (12:42 +0100)]
Bug 32939: Use APIClient to fetch EBSCO eHoldings

Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
20 months agoBug 32939: Use APIClient to fetch local eHoldings
Jonathan Druart [Tue, 21 Feb 2023 10:59:01 +0000 (11:59 +0100)]
Bug 32939: Use APIClient to fetch local eHoldings

Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>