koha.git
4 years agoBug 23403: Remove cardnumber from SIP
Jonathan Druart [Thu, 21 Nov 2019 17:39:15 +0000 (18:39 +0100)]
Bug 23403: Remove cardnumber from SIP

== Test plan ==
1 - Have two patrons with userids and no cardnumber
2 - Note which of these has the higher borrower number
3 - Use the SIP cli emulator to connect and checkout a book to the patron with higher borrowernumber
      See example after
4 - Note the book may checkout to the wrong patron!
5 - Apply patch
6 - Checkout to both patrons via sip
7 - The patrons get the correct checkouts

=== SIP CLI emulator ===
./misc/sip_cli_emulator.pl -a 127.0.0.1 -p 6001 -su term1 -sp term1 \
-l CPL --patron 23529001000463 -m checkout --item 39999000001259

translation: via the koha user term1, checkout item 39999000001259 to
patron 23529001000463

Signed-off-by: Bouzid Fergani <bouzid.fergani@inlibro.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24458: Use the ViewPolicy filter on search results
Tomas Cohen Arazi [Mon, 11 May 2020 13:10:39 +0000 (10:10 -0300)]
Bug 24458: Use the ViewPolicy filter on search results

This patch implements the use of the ViewPolicy record processor filter
inside C4::Search::searchResults. The idea is that the $record_processor
is instantiated once and reused inside the loop. This leaves options for
further optimizations I will do on a follow-up bug.

The filter is applied to the MARC data before it is passed to the XSLT
processor.

To test:
1. Apply the regression tests patch
2. Run:
   $ kshell
  k$ prove t/db_dependent/Search.t
=> FAIL: This is not implemented, tests fail
3. Apply this patch
4. Repeat 2
5. Feel the joy in your body from a long standing bug being solved
6. Sign off :-D

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24458: Regression tests
Tomas Cohen Arazi [Mon, 11 May 2020 13:08:36 +0000 (10:08 -0300)]
Bug 24458: Regression tests

This patch introduces tests for searchResults. The idea is to set a
subfield as hidden in OPAC and another on the staff interface, and see
if searchResults honours this on the XSLTResultsRecord contents.

To test:
1. Apply this patch
2. Run:
   $ kshell
  k$ prove t/db_dependent/Search.t
=> FAIL: This is not really implemented

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25416: (follow-up) Remove useless use statement
Tomas Cohen Arazi [Tue, 12 May 2020 12:09:22 +0000 (09:09 -0300)]
Bug 25416: (follow-up) Remove useless use statement

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25416: Unit tests
Tomas Cohen Arazi [Mon, 11 May 2020 11:38:49 +0000 (08:38 -0300)]
Bug 25416: Unit tests

This patch adds tests for the new 'feature': i.e. searchResults passes
the added $xslt_variables to the XSLTParse4Display method.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25416: Let OPAC XSLTs know if the context is an anonymous session
Tomas Cohen Arazi [Thu, 7 May 2020 17:23:40 +0000 (14:23 -0300)]
Bug 25416: Let OPAC XSLTs know if the context is an anonymous session

This patch makes use of the 'variables' parameter in XSLTParse4Display
method in the different places that it is used in the OPAC. It does by
passing this parameter with

    anonymous_session => 1|0

The value will depend on the output from get_template_and_user (i.e. if
there's a returned borrowernumber).

A special case takes place in search results, as the call to
XSLTParse4Display happens in C4::Search::searchResults. So a new
parameter 'xslt_variables' is added to it.

To test:
1. Apply the [DO NOT PUSH] patch
2. Open the OPAC in your browser
3. Try detail pages, search results, tags and lists/shelves pages with
   or without an active session
=> FAIL: It always says (somewhere) 'Anonymous session: Yes'
4. Apply this patch, restart_all
5. Repeat 3
=> SUCCESS: It will tell the Yes/No correctly regarding anonymous
sessions!
6. Sign off :-D

Sponsored-by: Universidad ORT Uruguay
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 23794: (RM follow-up) Remove warnings from updatedatabase
Martin Renvoize [Wed, 13 May 2020 15:52:47 +0000 (16:52 +0100)]
Bug 23794: (RM follow-up) Remove warnings from updatedatabase

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24161: (follow-up) Fix failing test (when running slow)
Jonathan Druart [Wed, 13 May 2020 14:10:34 +0000 (16:10 +0200)]
Bug 24161: (follow-up) Fix failing test (when running slow)

The previous assumption was wrong, we just need to return the last one.
The tests mean to have 2 different values in the claimed_on dates.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 23794: (follow-up) Remove extra carriage return
Jonathan Druart [Wed, 13 May 2020 14:02:35 +0000 (16:02 +0200)]
Bug 23794: (follow-up) Remove extra carriage return

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25389: DBRev 19.12.00.089
Martin Renvoize [Wed, 13 May 2020 09:34:10 +0000 (10:34 +0100)]
Bug 25389: DBRev 19.12.00.089

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25389: Catch errant cases of LOST_RETURNED
Martin Renvoize [Mon, 11 May 2020 10:39:00 +0000 (11:39 +0100)]
Bug 25389: Catch errant cases of LOST_RETURNED

For upgrades taking place after the fix for the update in bug 24592 was
pushed, we need to catch any last remaining error cases and correct
them.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25389: Catch LOST_RETURNED in DB update 19.12.00.021
Martin Renvoize [Mon, 11 May 2020 10:33:32 +0000 (11:33 +0100)]
Bug 25389: Catch LOST_RETURNED in DB update 19.12.00.021

An errant update from bug 22563 could lead to cases of LOST_RETURNED as
aposed to LOST_RETURN as an account_credit_type. This patch adds code to
deal with those cases to the update for bug 24592

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25389: Correct stray cases of LOST_RETURNED
Martin Renvoize [Mon, 11 May 2020 10:30:35 +0000 (11:30 +0100)]
Bug 25389: Correct stray cases of LOST_RETURNED

The original DB update for bug 22563 incorrectly mapped CR to
LOST_RETURNED as aposed to LOST_RETURN.  This patch catches such cases
and updates them in the update for bug 23805

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25389: Correct original DB update for bug 22563
Martin Renvoize [Mon, 11 May 2020 10:27:16 +0000 (11:27 +0100)]
Bug 25389: Correct original DB update for bug 22563

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24368: Comprehensive tests for Koha::Template::Plugin::Branches::pickup_locations
Tomas Cohen Arazi [Fri, 8 May 2020 19:04:17 +0000 (16:04 -0300)]
Bug 24368: Comprehensive tests for Koha::Template::Plugin::Branches::pickup_locations

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24368: Remove Koha::Libraries->pickup_locations
Tomas Cohen Arazi [Fri, 8 May 2020 19:01:58 +0000 (16:01 -0300)]
Bug 24368: Remove Koha::Libraries->pickup_locations

This patch removes the unused method, and cleans the tests.
To test:
1. Verify Koha::Libraries->pickup_locations is not used in the code:
   $ git grep 'Koha::Libraries\->pickup_locations'
=> SUCCESS: no uses
2. Apply this patch
3. Run:
   $ kshell
  k$ prove t/db_dependent/Koha/Libraries.t
=> SUCCESS: Tests pass!
4. Sign off :-D

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24161: Fix failing test (when running slow)
Jonathan Druart [Wed, 13 May 2020 07:57:40 +0000 (09:57 +0200)]
Bug 24161: Fix failing test (when running slow)

We "mocked" the claim date to make sure we were not going to hit this
problem, but it's not done on the correct claim, it should be done on
the last one (so second).

from Koha::Acq::Order->claimed_date

294     my $last_claim = $self->claims->last;
295     return unless $last_claim;
296     return $last_claim->claimed_on;

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25417: (QA follow-up) Add integration test for AddReturn
Martin Renvoize [Tue, 12 May 2020 08:24:28 +0000 (09:24 +0100)]
Bug 25417: (QA follow-up) Add integration test for AddReturn

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25417: (QA follow-up) Restore 'fixing' of fines
Martin Renvoize [Mon, 11 May 2020 20:14:24 +0000 (21:14 +0100)]
Bug 25417: (QA follow-up) Restore 'fixing' of fines

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25417: (QA follow-up) Clarify _FixOverduesOnReturn test
Martin Renvoize [Mon, 11 May 2020 20:13:47 +0000 (21:13 +0100)]
Bug 25417: (QA follow-up) Clarify _FixOverduesOnReturn test

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25417: Prevent negative debit amount on backdating returns
Jonathan Druart [Fri, 8 May 2020 10:28:46 +0000 (12:28 +0200)]
Bug 25417: Prevent negative debit amount on backdating returns

Koha::Account->add_credit is expecting a positive amount.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Didier Gautheron <didier.gautheron@biblibre.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25417: Add unit test
Kyle M Hall [Thu, 7 May 2020 18:21:59 +0000 (14:21 -0400)]
Bug 25417: Add unit test

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Didier Gautheron <didier.gautheron@biblibre.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 15253: Remove specific logging output
Jonathan Druart [Mon, 11 May 2020 10:10:24 +0000 (12:10 +0200)]
Bug 15253: Remove specific logging output

* We should not call Log::Log4perl directly
* Not sure it is correct as I get from (comment 77):
 % koha-sip --restart

 [2020/04/23 11:23:27] [ERROR] [undef]@[undef]: Argument "0.33_01" isn't
 numeric in numeric lt (<) at /usr/share/perl5/Net/Server/Log/Sys/Syslog.pm
 line 42.
  C4::SIP::Trapper::PRINT /kohadevbox/koha/C4/SIP/Trapper.pm (24)

 Why "ERROR" when it's a warning?
 The [undef]@[undef] seems wrong here.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 15253: Add POD to C4/SIP/Logger.pm and C4/SIP/Trapper.pm
Kyle M Hall [Wed, 29 Apr 2020 10:42:29 +0000 (06:42 -0400)]
Bug 15253: Add POD to C4/SIP/Logger.pm and C4/SIP/Trapper.pm

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 15253: Convert all tabs into 4 spaces in affected files
Kyle M Hall [Wed, 29 Apr 2020 10:27:10 +0000 (06:27 -0400)]
Bug 15253: Convert all tabs into 4 spaces in affected files

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 15253: Log trapped errors as log level 'warn' instead of 'error'
Kyle M Hall [Thu, 23 Apr 2020 13:25:33 +0000 (09:25 -0400)]
Bug 15253: Log trapped errors as log level 'warn' instead of 'error'

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 15253: Add log4perl conf updates for Debian packages
Kyle M Hall [Wed, 1 Apr 2020 12:14:48 +0000 (08:14 -0400)]
Bug 15253: Add log4perl conf updates for Debian packages

* Add log4perl conf updates for Debian packages
* Rename sip2.log to sip.log

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 15253: Rename syslog() to siplog()
Kyle M Hall [Wed, 22 Apr 2020 17:24:55 +0000 (13:24 -0400)]
Bug 15253: Rename syslog() to siplog()

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 15253: Move subs to a new module, allow unit tests to function
Kyle M Hall [Mon, 22 Apr 2019 15:02:42 +0000 (11:02 -0400)]
Bug 15253: Move subs to a new module, allow unit tests to function

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 15253: Add Koha::Logger based logging for SIP2
Kyle M Hall [Tue, 1 May 2018 11:47:12 +0000 (11:47 +0000)]
Bug 15253: Add Koha::Logger based logging for SIP2

Now that we have Koha::Logger, we should use it in our SIP server. This
has the potential to make debugging SIP issue much easier. We should add
the userid for the sipuser to the namespace so we can allow for separate
files per sip user if wanted.

Test Plan:
1) Apply this patch set
2) Update the modififed log4perl.conf to your system
3) Restart your sip server
4) Tail your sip2.log, run some queries
5) Note you still get the same output messages as before, with the
   addition of the ip address and username ( if available )
   prefixing the message.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 13547: (QA follow-up) Add basic tests
Martin Renvoize [Wed, 6 May 2020 07:50:54 +0000 (08:50 +0100)]
Bug 13547: (QA follow-up) Add basic tests

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 13547: (follow-up) Improve POD for template plugin
Martin Renvoize [Wed, 6 May 2020 07:26:39 +0000 (08:26 +0100)]
Bug 13547: (follow-up) Improve POD for template plugin

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 13547: (follow-up) Item field 'Materials specified' would be useful to see in...
Nazlı Çetin [Fri, 27 Mar 2020 17:13:02 +0000 (17:13 +0000)]
Bug 13547: (follow-up) Item field 'Materials specified' would be useful to see in OPAC

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 13547: Add item field 3 (Materials specified) to the OPAC holdings table
Nazlı Çetin [Thu, 5 Mar 2020 15:02:37 +0000 (15:02 +0000)]
Bug 13547: Add item field 3 (Materials specified) to the OPAC holdings table

Test plan:

1- View a record with Materials specified (field 3) data in the opac
2- Apply patch
3- Log in to staff client
4- Home->Administration->Column Settings->OPAC->holdingst
5- Set item_materials visibility
6- Refresh OPAC page
7- Confirm that the materials specified column has been added after the
   Call number column.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24823: (QA follow-up) Fix deletion and POD
Nick Clemens [Thu, 7 May 2020 12:06:10 +0000 (12:06 +0000)]
Bug 24823: (QA follow-up) Fix deletion and POD

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24823: Remove unused parameters
David Gustafsson [Thu, 12 Mar 2020 10:52:18 +0000 (11:52 +0100)]
Bug 24823: Remove unused parameters

Remove unused Elasticsearch parameters 'key_prefix' and 'request_timeout'.
Refactor so that get_elasticsearch_params only returns parameters used
by Search::Elasticsearch, add class accessor for index_name.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24823: Fix spelling error and remove last of Catmandu
David Gustafsson [Mon, 9 Mar 2020 10:48:13 +0000 (11:48 +0100)]
Bug 24823: Fix spelling error and remove last of Catmandu

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24823: Drop Catmandu dependency
David Gustafsson [Thu, 5 Mar 2020 17:05:10 +0000 (18:05 +0100)]
Bug 24823: Drop Catmandu dependency

Replace remaining Catmandu dependant code with the Search::Elasticsearch
equivalent.

To test:
1) Apply patch
2) Run tests in t/Koha/SearchEngine/Elasticsearch.t, t/Koha/SearchEngine/ElasticSearch/*
and t/db_dependent/Koha/SearchEngine/*
3) All tests should pass

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 22970: Allow to change homebranch in batch add course reserves
Julian Maurice [Fri, 24 May 2019 06:51:58 +0000 (08:51 +0200)]
Bug 22970: Allow to change homebranch in batch add course reserves

Test plan:
1. Create a course (disabled)
2. Add multiple reserves to this course using 'batch add' and set
   a homebranch different from the items homebranch
3. Enable the course
4. Verify that the items homebranch have changed
5. Disable the course
6. Verify that the items homebranch were reset to their initial value

Depends on bug 22630

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25279: (QA follow-up) Use .escapeHtml
Tomas Cohen Arazi [Thu, 7 May 2020 13:10:18 +0000 (10:10 -0300)]
Bug 25279: (QA follow-up) Use .escapeHtml

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25279: Replace encodeURI with encodeURIComponent
Jonathan Druart [Wed, 6 May 2020 14:09:32 +0000 (16:09 +0200)]
Bug 25279: Replace encodeURI with encodeURIComponent

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25279: URI-escape city_id in links
Tomas Cohen Arazi [Wed, 6 May 2020 13:34:09 +0000 (10:34 -0300)]
Bug 25279: URI-escape city_id in links

This patch escapes city_id uses in URLs, and also removes redundant dom
entry as this is inherited from the global datatables configuration
anyway.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25279: Use another var name for the filter
Jonathan Druart [Wed, 6 May 2020 12:59:47 +0000 (14:59 +0200)]
Bug 25279: Use another var name for the filter

It prevents:
* The screen to display "no city, create one" if we are
searching for a string that does not return any results.
* The list to display only the city we have just created

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25279: HTML escape cells
Tomas Cohen Arazi [Tue, 5 May 2020 23:28:10 +0000 (20:28 -0300)]
Bug 25279: HTML escape cells

This patch makes HTML entities be escaped. It is done in a simple way.
We need to explore ways to do it at datatables.js level but it deserves
its own bug.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25279: (QA follow-up) Original behaviour
Tomas Cohen Arazi [Tue, 5 May 2020 21:55:49 +0000 (18:55 -0300)]
Bug 25279: (QA follow-up) Original behaviour

This patch does the following things:
- Uses a call to Koha::Cities->search(*)->count to display the same
  message we displayed before when no city was found/defined (datatable
  not rendered at all).
- Restores the main search box functionality, the passed param is used
  to query on the city name with wildcards on both sides, for (a)
  counting results and for (b) apending to the API call with the same
  behaviour.

The only missing bit from QA is HTML/URI escaping values from cells, but
this is going to happen at DT level most sure.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25279: (QA follow-up) Make button texts translatable
Tomas Cohen Arazi [Fri, 1 May 2020 05:26:27 +0000 (02:26 -0300)]
Bug 25279: (QA follow-up) Make button texts translatable

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25279: Fix edit and delete links
Kyle M Hall [Mon, 27 Apr 2020 19:35:18 +0000 (15:35 -0400)]
Bug 25279: Fix edit and delete links

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25279: Use the API to list cities
Tomas Cohen Arazi [Fri, 24 Apr 2020 14:50:04 +0000 (11:50 -0300)]
Bug 25279: Use the API to list cities

This patch makes the general cities datatable use the API for rendering.
To test:
1. Test the datatable behaviour
2. Apply this patch
3. Repeat your tests
=> SUCCESS: Things work! Filtering and sorting specially

Bonus: Use the browser inspector to notice each interaction with the
datatable triggers an API call with the right query parameters

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25279: Add general query parameters to the /cities route
Tomas Cohen Arazi [Fri, 24 Apr 2020 14:48:58 +0000 (11:48 -0300)]
Bug 25279: Add general query parameters to the /cities route

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24561: (follow-up) Use full_numbers for pagingType
Tomas Cohen Arazi [Tue, 5 May 2020 21:26:48 +0000 (18:26 -0300)]
Bug 24561: (follow-up) Use full_numbers for pagingType

We are trying to keep the current datatables behaviour so this is a
trivial yet sensible change.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24561: (follow-up) Set default matching criteria to 'contains' and add configurat...
Agustin Moyano [Thu, 30 Apr 2020 14:20:05 +0000 (11:20 -0300)]
Bug 24561: (follow-up) Set default matching criteria to 'contains' and add configuration option

This patch adds option.criteria as an option. Possible values are
'contains', 'starts_with', 'ends_with' and 'exact'. 'contains' is the
default value.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24561: Add a Datatables api wrapper that implements filter and order embedded...
Agustin Moyano [Wed, 19 Feb 2020 14:33:14 +0000 (11:33 -0300)]
Bug 24561: Add a Datatables api wrapper that implements filter and order embedded columns

This patch adds the ability to filter and order by embedded columns.

To use it you must in JS:

$('datatable_selector').api({datatables_options})

where datatables_options are all datatables options plus:

1. embed: [list of embeddable tables]
   This option adds x-koha-embed header to request.

2. header_filter: true|false
   This option if true sets x-koha-query header with stringyfied json of filters

Oderable and searchable columns must define data option as string, otherwise filter and order won't be possible.
If you must custom the output, use the render function.

For example:

* Don't

> $('.table_selector').api({
>   columns: [
>     {
>       data: function(row, type, val, meta) {
>         return '<a href="'+row.link+'">'+row.holds.patron.firstname+'</a>';
>       },
>       orderable: true,
>       searchable: true
>     }
>   ]
> });

* Do

> $('.table_selector').api({
>   columns: [
>     {
>       data: 'holds.patron.firstname',
>       render: function(row, type, val, meta) {
>         return '<a href="'+row.link+'">'+row.holds.patron.firstname+'</a>';
>       },
>       orderable: true,
>       searchable: true
>     }
>   ]
> });

To test you must implement and test bug 20936, where it will be used.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25188: Make circulation notes more prominent on the patron details tab
David Roberts [Mon, 4 May 2020 16:00:26 +0000 (16:00 +0000)]
Bug 25188: Make circulation notes more prominent on the patron details tab

This patch adds a more prominent circulation note to the moremember.pl
details screen.

To test:

1) Add a circulation note to a patron record.
2) Note that it displays prominently on the checkout tab, but only under
the Library Use block on the details tab.
3) Apply the patch.
4) Check that the note is now displayed prominently at the top of the
details (moremember.pl) screen.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24185: Add mentorship
Martin Renvoize [Tue, 12 May 2020 10:20:33 +0000 (11:20 +0100)]
Bug 24185: Add mentorship

Mentored-by: Joonas Kylmälä <joonas.kylmala@helsinki.fi>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24027: Add Mentorship lines
Martin Renvoize [Tue, 12 May 2020 10:18:43 +0000 (11:18 +0100)]
Bug 24027: Add Mentorship lines

Mentored-by: Joonas Kylmälä <joonas.kylmala@helsinki.fi>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25409: Add missing "Required" text and "required" classes
Slava Shishkin [Sun, 10 May 2020 15:15:09 +0000 (18:15 +0300)]
Bug 25409: Add missing "Required" text and "required" classes

Highlight text with red by adding “required” class to the label and added red
“Required” text next to select field in "onboardingstep5.tt" template.

To test:
    1) Start new installation. During onboarding tool phase you will be
       requested to create a new circulation rule.
    2) Observe that "Units" label has no "required" class and that
       there’s no “Required” text next to a select field.
    3) Apply patch.
    4) Repeat step 2 (you can reload circulation rule creation page).
    5) Observe the error is gone.

Mentored-by: Peter Vashchuk <stalkernoid@gmail.com>
Mentored-by: Andrew Nugged <nugged@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25409: Add missing "required" class to template
Slava Shishkin [Thu, 7 May 2020 11:24:31 +0000 (14:24 +0300)]
Bug 25409: Add missing "required" class to template

Added "required" class to "itemtype" label in "onboardingstep5.tt"
template.

To test:
    1) Start new instalation. During onboarding tool phase you will be
       requested to create a new circulation rule.
    2) Observe that "itemtype" label has no "required" class.
    3) Apply patch.
    4) Repeat step 2 (you can reload circulation rule creation page).
    5) Observe the error is gone.

Mentored-by: Peter Vashchuk <stalkernoid@gmail.com>
Mentored-by: Andrew Nugged <nugged@gmail.com>
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25184: (RM follow-up) Make DB update idempotent
Martin Renvoize [Tue, 12 May 2020 10:13:49 +0000 (11:13 +0100)]
Bug 25184: (RM follow-up) Make DB update idempotent

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25418: (QA follow-up) Raise size of input box
Nick Clemens [Mon, 11 May 2020 17:08:35 +0000 (17:08 +0000)]
Bug 25418: (QA follow-up) Raise size of input box

In twelve hour format the length of the string is 20 characters
we need the box to fit all of them

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25418: (bug 25133 follow-up) Display due date with hours
Jonathan Druart [Thu, 7 May 2020 15:18:35 +0000 (17:18 +0200)]
Bug 25418: (bug 25133 follow-up) Display due date with hours

And not as due date, it's not a display-only info, but an input.

This patch is a follow-up of Bug 25133: Fix time part of due date for 12hr

== Test plan ==
1. create checkouts with the following params and results
2. tomorrow 11:59 PM timeformat syspref: 12h
   - item is due without a specific time, only date (after-checkout green box)
3. backdate 11:59 PM timeformat syspref: 12h
   - note the yellow confirm box has only the date
   - item is due at 12:00 PM (after-checkout green box)
4. tomorrow 11:23 AM timeformat syspref: 12h
   - item is due at 11:23 AM (after-checkout green box)
5. backdate 11:23 AM timeformat syspref: 12h
   - note the yellow confirm box has the date and time
   - item is due 11:23 AM (after-checkout green box)
6. tomorrow 23:59 timeformat syspref: 24h
   - item is due without a specific time, only date (after-checkout green box)
7. backdate 23:59 timeformat syspref: 24h
   - note the yellow confirm box has only the date
   - item is due at 00:00 (after-checkout green box)
8. tomorrow 11:23 timeformat syspref: 24h
   - item is due at 11:23 (after-checkout green box)
9. backdate 11:23 timeformat syspref: 24h
   - note the yellow confirm box has the date and time
   - item is due 11:23 (after-checkout green box)
10. apply patch
11. create checkouts with the following params and results
12. tomorrow 11:59 PM timeformat syspref: 12h
    - item is due without a specific time, only date (after-checkout green box)
13. backdate 11:59 PM timeformat syspref: 12h
    - note the yellow confirm box has the date and time
      - CHANGE COMPARED TO BEFORE THE PATCH
    - item is due without a specific time, only date (after-checkout green box)
      - CHANGE COMPARED TO BEFORE THE PATCH
14. tomorrow 11:23 AM timeformat syspref: 12h
    - item is due 11:23 AM (after-checkout green box)
15. backdate 11:23 AM timeformat syspref: 12h
    - note the yellow confirm box has the date and time
    - item is due 11:23 AM (after-checkout green box)
16. tomorrow 23:59 timeformat syspref: 24h
    - item is due without a specific time, only date (after-checkout green box)
17. backdate 23:59 timeformat syspref: 24h
    - note the yellow confirm box has the date and time
      - CHANGE COMPARED TO BEFORE THE PATCH
    - item is due without a specific time, only date (after-checkout green box)
      - CHANGE COMPARED TO BEFORE THE PATCH
18. tomorrow 11:23 timeformat syspref: 24h
    - item is due at 11:23 (after-checkout green box)
19. backdate 11:23 timeformat syspref: 24h
    - note the yellow confirm box has the date and time
    - item is due 11:23 (after-checkout green box)

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24378: DBRev 19.12.00.088
Martin Renvoize [Tue, 12 May 2020 10:11:38 +0000 (11:11 +0100)]
Bug 24378: DBRev 19.12.00.088

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24378: (QA follow-up) fix minor issues
Jonathan Druart [Mon, 11 May 2020 13:44:32 +0000 (15:44 +0200)]
Bug 24378: (QA follow-up) fix minor issues

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24378: (follow-up) Format due date as due date
Katrin Fischer [Sun, 10 May 2020 17:06:17 +0000 (17:06 +0000)]
Bug 24378: (follow-up) Format due date as due date

Changes the due date formatting as was already done
for the new sample files on bug 23787.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24378: Database update to rewrite notice if left unchanged
Katrin Fischer [Sat, 11 Apr 2020 17:52:30 +0000 (17:52 +0000)]
Bug 24378: Database update to rewrite notice if left unchanged

The database update makes the same changes as done by
Andrew on the old database entry. We check for full sentences
left unchanged to minimize issues with changes made by the library.

Test plan of first patch applies.

Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24378: Change wording of auto_renewals notice in updatedatabase
Andrew Fuerste-Henry [Wed, 11 Mar 2020 00:15:58 +0000 (00:15 +0000)]
Bug 24378: Change wording of auto_renewals notice in updatedatabase

On the template of AUTO-RENEWALS the wording is grammatically incorrect:

[% IF checkout.auto_renew_error == 'too_many' %]
You have reach the maximum of checkouts possible.

This should say
[% IF checkout.auto_renew_error == 'too_many' %]
You have reached the maximum of checkouts possible.

Test plan:
- Make sure you have the AUTO_RENEWALS notice with the problematic
  spelling
- install patch
- update database
- confirm changes to notice name and wording

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Kept Andrew's change on the original updatedatabase entry,
but removed the database update to be done a little differently
in a follow-up patch.

Amended test plan.

Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 22437: (follow-up) Move deletion of merge requests to DelAuthority
Marcel de Rooy [Fri, 8 May 2020 06:46:59 +0000 (06:46 +0000)]
Bug 22437: (follow-up) Move deletion of merge requests to DelAuthority

Lines can be moved. Deletion can be done too if skip_merge is not set.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 22437: Delete older merge requests at new merge time
Marcel de Rooy [Fri, 3 Apr 2020 08:55:45 +0000 (08:55 +0000)]
Bug 22437: Delete older merge requests at new merge time

If you merge A to B, we should remove older AA merges (regular
merge to itself) in the queue before deleting A.

Test plan:
[1] Set merge limit in prefs to say X.
[2] Find three authorities A, B, C with linkcount >X, >X, <X.
[3] Merge C to B. This creates a 'BB merge' in the queue.
    Auth C is deleted.
[4] Merge B to A. Creating AA and BA in the queue.
    Auth B is deleted.
    Optionally verify that BB is no longer in the queue.
[5] Run the merge_authorities.pl cron job.
    Verify that the linkcount to A is the former total of ABC.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Phil Ringnalda <philringnalda@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 22437: Add test case to Merge.t
Marcel de Rooy [Mon, 6 Apr 2020 13:44:46 +0000 (13:44 +0000)]
Bug 22437: Add test case to Merge.t

Test proves now that a 'destructive merge' is removed by
DelAuthority.

Test plan:
Run t/db_dependent/Authority/Merge.t. Should fail when you
do not apply the other two patches and pass with them.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25421: Update POD
Jonathan Druart [Mon, 11 May 2020 12:51:58 +0000 (14:51 +0200)]
Bug 25421: Update POD

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25421: Remove use of Koha::Libraries->pickup_locations
Tomas Cohen Arazi [Fri, 8 May 2020 13:04:30 +0000 (10:04 -0300)]
Bug 25421: Remove use of Koha::Libraries->pickup_locations

The current implementation uses Koha::Libraries->pickup_locations which
is problematic and due to be removed by bug 24368. This patch makes the
trivial change of just searching for libraries that are marked with
pickup_location => 1.

Calls to Koha::Item->pickup_locations and Koha::Biblio->pickup_locations
are as well adapted to the new arrayref return value.

To test:
1. Pick a record with only one item
2. Place a biblio-level hold on it
3. Edit the items: remove the item
4. Go to the Holds tab
=> FAIL: It explodes
5. Apply this patch and restart:
   $ sudo koha-plack --restart kohadev
6. Go back and go to the holds tab again
=> SUCCESS: No failure!
7. Sign off :-D

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Didier Gautheron <didier.gautheron@biblibre.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25421: Make ->pickup_locations only return an arrayref
Tomas Cohen Arazi [Fri, 8 May 2020 14:40:15 +0000 (11:40 -0300)]
Bug 25421: Make ->pickup_locations only return an arrayref

This patch makes Koha::Item->pickup_locations and
Koha::Biblio->pickup_locations always return an arrayref.

Test are adjusted to reflect this:

1. Run:
   $ kshell
  k$ prove t/db_dependent/Koha/Biblio.t t/db_dependent/Koha/Item.t
=> SUCCESS: Tests pass!
2. Apply this patch and repeat 1
=> SUCCESS: Tests pass!
3. Sign off :-D

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Didier Gautheron <didier.gautheron@biblibre.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25342: Unit test
Nick Clemens [Thu, 7 May 2020 13:08:14 +0000 (13:08 +0000)]
Bug 25342: Unit test

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25342: Force ES id as string
Nick Clemens [Fri, 1 May 2020 14:48:55 +0000 (14:48 +0000)]
Bug 25342: Force ES id as string

To test:
1 - Be using ES
2 - Find a unique record by searchign for title or seomthing
3 - Edit the record
4 - Repeat search and confirm you are returned to the details page
5 - Go to Tools->MARC modification templates
6 - Add a template and define an action
7 - Go to Tools->Batch record modification
8 - Select Enter a list of record numbers
9 - Enter the biblionumber of the record you searched for
10 - Use the marc modification template you setup
11 - Complete the modification
12 - Repeat your search
13 - note you get two results, both pointing to same biblionumber
14 - Check the ES index, note that you have two entries, one with the biblionumber, and the other with #.0, e.g.:
    curl -XGET 'es:9200/koha_kohadev_biblios/data/14.0?pretty'
    curl -XGET 'es:9200/koha_kohadev_biblios/data/14?pretty'
15 - Apply patch
16 - Delete and rebuild ES index
    perl misc/search_tools/rebuild_elasticsearch.pl -d -b
17 - Repeat 2-12
18 - No duplication this time

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 23787: (follow-up) Format due date as due date
Katrin Fischer [Tue, 5 May 2020 11:56:07 +0000 (11:56 +0000)]
Bug 23787: (follow-up) Format due date as due date

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 23787: Add AUTO_RENEWALS to sample_notices
Andrew Fuerste-Henry [Wed, 11 Mar 2020 00:43:20 +0000 (00:43 +0000)]
Bug 23787: Add AUTO_RENEWALS to sample_notices

Removed "\" from "It\'s too late..." -- apparently that doesn't need to get escaped in YAML

To test:
- create a new English (en) install
- confirm presence of auto renewal notice

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 23787: Add sample AUTO_RENEWALS notice to translatd installers
Katrin Fischer [Mon, 13 Apr 2020 13:04:37 +0000 (15:04 +0200)]
Bug 23787: Add sample AUTO_RENEWALS notice to translatd installers

This adds the default auto renewal notice to the translated
installers. Translating will be handled by maintainers of the
installers, but this way we don't end up with installations
having a different set of notices than others.

To test:
- Verify the sample_notices.sql files load correctly
or
- Run the web installer for each of those languages and
  verify sample_notices loads correctly.

Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25301: Removed URI parameter "categorycode" from the toolbar
Jonathan Druart [Mon, 11 May 2020 09:10:20 +0000 (11:10 +0200)]
Bug 25301: Removed URI parameter "categorycode" from the toolbar

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25301: removed URI parameter "categorycode" from "circulation.tt"
Petro Vashchuk [Thu, 7 May 2020 09:22:24 +0000 (12:22 +0300)]
Bug 25301: removed URI parameter "categorycode" from "circulation.tt"

"Edit details" links in patron's circulation check-out page
was sending empty query parameter "categorycode" because there is no
defined template parameter in "circulation.pl"

This patch removes the URI parameter from "circulation.tt" template.

To test:
    1) You need to create or find expired or expiring patron.
    2) Head to patron's circulation check-out page.
    3) Inspect "Edit details" link.
    4) Observe empty parameter "categorycode=" in that link.
    5) Apply patch.
    6) Repeat step 3.
    7) Check that there's no "categorycode=" in the link anymore.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25301: removed useless URI parameter "categorycode" from template
Petro Vashchuk [Wed, 6 May 2020 13:09:01 +0000 (16:09 +0300)]
Bug 25301: removed useless URI parameter "categorycode" from template

Both "Edit details" links were sending empty query parameter
"categorycode" as there is no such template parameter in "moremember.pl"
defined at all, because template code block looks copy-pasted
from "circulation.tt".

This patch removes the parameter from "moremember.tt" template.

To test:
    1) You need to create or find expired or expiring patron.
    2) Head to patron details page of that patron.
    3) Inspect both "Edit details" links:
       one in the notification about expiration
       and other one in the "Expiration date:" field.
    4) Observe empty parameter "categorycode=" in those links.
    5) Apply patch.
    6) Repeat step 3.
    7) Check that there's no "categorycode=" in the links anymore.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25248: (bug 23463 follow-up) Adjust second occurrence
Jonathan Druart [Mon, 11 May 2020 13:13:18 +0000 (15:13 +0200)]
Bug 25248: (bug 23463 follow-up) Adjust second occurrence

Same as the precedent patch for a single item deletion (vs delete all
items)
Item is returned if deletion  successful, not 1

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 16547: Remove more multi_holds inconsistencies
Jonathan Druart [Wed, 8 Apr 2020 13:44:55 +0000 (15:44 +0200)]
Bug 16547: Remove more multi_holds inconsistencies

There was a bug, on the biblio's hold list view, if the pickup library
was changed, the next screen was "place a hold for no title"

http://pro.kohadev.org/cgi-bin/koha/reserve/request.pl?multi_hold=1&biblionumbers=

Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 8132: Fix failing tests
Jonathan Druart [Mon, 11 May 2020 10:43:06 +0000 (12:43 +0200)]
Bug 8132: Fix failing tests

* Add missing html filter (xt/find-missing-filters.t)
* Fix AddReserve call

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25184: (RM follow-up) Syntax error correction
Martin Renvoize [Mon, 11 May 2020 10:10:41 +0000 (11:10 +0100)]
Bug 25184: (RM follow-up) Syntax error correction

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25130: Reason for accepting/rejecting a suggestion is not visible when viewing...
David Roberts [Mon, 4 May 2020 19:43:32 +0000 (19:43 +0000)]
Bug 25130: Reason for accepting/rejecting a suggestion is not visible when viewing (not editing)

The patch adds the suggestion management reason to the display when
viewing a suggestion.

To test:

1) Edit a suggestion and assign a reason for accepting it.
2) View the suggestion (/cgi-bin/koha/suggestion/suggestion.pl?suggestionid=XX&op=show, replacing XX with your suggestion ID)
3) Under suggestion management, the reason you've just assigned does not
display.
4) Apply the patch
5) Check the display again - the Reason should now be visible directly
under the status.

Signed-off-by: Abbey Holt <aholt@dubuque.lib.ia.us>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24963: (follow-up) Fix another instance
Owen Leonard [Fri, 8 May 2020 16:41:03 +0000 (16:41 +0000)]
Bug 24963: (follow-up) Fix another instance

This patch corrects the second instance of "auto renewal" in the
description of the AllowPatronToControlAutorenewal system preference.

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24963: Terminology: Use "auto-renewal" instead of alternatives
Owen Leonard [Thu, 7 May 2020 15:16:35 +0000 (15:16 +0000)]
Bug 24963: Terminology: Use "auto-renewal" instead of alternatives

This patch updates terminology in the templates so that "auto-renewal"
is used instead of "auto renewal" or "autorenewal."

To test, apply the patch and set the 'AllowPatronToControlAutorenewal'
preference to "allow patrons."

- Log in to the OPAC and view the "your account" page.
  - At the top of the "Checked out" tab you should see controls for
    turning auto-renewals on and off. The labels should be correct.
  - Turn off auto-renewals for this patron.
- In the staff interface, view the detail page for the patron you
  updated in the previous step.
  - In right-hand column of information about the patron you should see
    "Auto-renewal: Patron has opted out."
  - Add "&print=brief" to the page URL. Check that auto-renewal
    information displays correctly on this brief view as well.
- Go to Administration -> System preferences.
  - Under the "Circulation" tab, check that the description of the
    OPACFineNoRenewalsBlockAutoRenew preference refers to
    "auto-renewal."
  - Under the "Patrons" tab, check the description of the
    AllowPatronToControlAutorenewal refers to "auto-renewal."

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25327: Do not call authenticate_api_request to render the spec
Tomas Cohen Arazi [Mon, 4 May 2020 18:43:18 +0000 (15:43 -0300)]
Bug 25327: Do not call authenticate_api_request to render the spec

The original code for Koha::REST::V1::Auth::under called
authenticate_api_request when requesting the API spec. This didn't make
sense, and recent changes on what conditions are tested for public
routes, broke the route.

We could add another condition, but it really doesn't make sense to call
authenticate_api_request if it should be publicly available in any
configuration, as discussed on the bug.

This patch adds a trivial check and the requested route, and lets the
request through in any case in 'under'.

To test:
1. Point your browser to:
   http://kohadev.myDNSname.org:8080/api/v1/
   http://kohadev.myDNSname.org:8080/api/v1/.html
=> FAIL: In both cases you get an authorization error.
2. Apply the regression tests patch
3. Run:
   $ kshell
  k$ prove t/db_dependent/api/v1/auth.t
=> FAIL: The tests reflect the situation, and fail
4. Apply this patch
5. Repeat 1 and 3
=> SUCCESS: All good!
6. Sign off :-D

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25327: Regression tests
Tomas Cohen Arazi [Mon, 4 May 2020 18:43:08 +0000 (15:43 -0300)]
Bug 25327: Regression tests

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 17853: Don't remove () from 780 link text
Grace McKenzie [Wed, 18 Jan 2017 22:55:48 +0000 (22:55 +0000)]
Bug 17853: Don't remove () from 780 link text

To test:
- Catalogue a record with 780, Indicators 00 and $a some text including parentheses.
    e.g. Hospitals (Chicago, Ill. : 1936)
- Verify that the () are not shown in the link text and are not part of the URL.
- Apply patch
- Verify that the () are shown in the link text and are not part of the URL.

Signed-off-by: Felix Hemme <felix.hemme@thulb.uni-jena.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: David Nind <david@davidnind.com>
Bug 17853: Don't remove () from 785 link text and restore link value of 780

The only thing we change for 780 and 785 is, that if the display
text contains (), they are no longer removed.

To test:
- Catalogue a record with 785$a some text (including) parenthesis
    e.g. Hospitals (Chicago, Ill. : 1936)
- Verify that the () are not shown in the link text and are not part of the URL.
- Apply patch
- Verify that the () are shown in the link text and are not part of the URL.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25157: Silent patron deletion cmd line script
Jonathan Druart [Fri, 17 Apr 2020 10:24:24 +0000 (12:24 +0200)]
Bug 25157: Silent patron deletion cmd line script

Without -v the script will no longer display messages unless the error
is major.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 8132: (QA follow-up) Missing filter
Marcel de Rooy [Fri, 8 May 2020 09:39:46 +0000 (09:39 +0000)]
Bug 8132: (QA follow-up) Missing filter

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 8132: Adding message when deleting from the UI
Jonathan Druart [Tue, 3 Dec 2019 09:58:57 +0000 (10:58 +0100)]
Bug 8132: Adding message when deleting from the UI

Signed-off-by: Kelly McElligott <kelly@bywatersolutions.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 8132: Delete the items in a transaction and rollback if something wrong
Jonathan Druart [Tue, 3 Dec 2019 09:13:38 +0000 (10:13 +0100)]
Bug 8132: Delete the items in a transaction and rollback if something wrong

The last_item_for_hold case cannot be guessed (easily), and so we are going to
delete the items in a transaction. If something wrong happened we
rollback and display a list of items that caused the rollback.

Signed-off-by: Kelly McElligott <kelly@bywatersolutions.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 8132: Adding a new message 'last_item_for_hold' blocking item deletion
Jonathan Druart [Mon, 2 Dec 2019 15:32:13 +0000 (16:32 +0100)]
Bug 8132: Adding a new message 'last_item_for_hold' blocking item deletion

If an item is the last one of a biblio that have biblio-level hold
placed on it, we should block the deletion.
It takes effect if the hold is found (W or T), to follow existing
behavior for item-level holds.
If we want to block deletion for any holds we should deal with it on a
separate bug report.

Test plan:
0/ Setup
Apply the patches
Create Biblio B1 with 1 item
Create Biblio B2 with 2 items
Create Biblio B3 with 1+ item
Create Biblio B4 with 1+ item
Create Biblio B5 with 1+ item
Place a biblio-level hold on B1 and B2
Place an item-level hold on B3 and B4
Confirm the item-level hold for the items of B3 to mark it waiting.

1/ Delete those 6 items in a batch
=> delete of item from B1 is blocked on first screen - only 1 item left
and there is a biblio-level hold on the record
=> delete of items from B2 is *not* blocked on first screen - One of
them will block the deletion, but so far we are not aware of that
situation
=> delete of item from B3 is blocked on first screen - there is a
waiting item-level hold placed on the item
=> delete of item from B4 is *not* blocked - there is a hold but it is
not found
=> delete of item from B5 is *not* - there is no reason to block its
deletion

Note that you can only select items from B2, B4 and B5

2/ Select them and confirm the deletion
=> Nothing happened and you get a message saying that one of the 2 items
from B2 is blocking the whole deletion process

3/ Remove the biblio-level hold from B2
4/ Repeat 1
=> The deletion has been effective!

=> Note that there is something a bit weird as we are blocking items
from a biblio that has biblio-level holds on it (not found), but we
do not blocking the deletion of an item with a waiting item-level hold

Signed-off-by: Kelly McElligott <kelly@bywatersolutions.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 8132: No changes but disable checkboxes
Jonathan Druart [Mon, 2 Dec 2019 15:15:59 +0000 (16:15 +0100)]
Bug 8132: No changes but disable checkboxes

When the list of items is displayed we already know if there will be a
problem during the deletion. So let's disable the checkbox to tell the
user in advance that items cannot be deleted.

Signed-off-by: Kelly McElligott <kelly@bywatersolutions.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25410: Sync liblibrarian and libopac descriptions
Bernardo Gonzalez Kriegel [Thu, 7 May 2020 11:16:57 +0000 (08:16 -0300)]
Bug 25410: Sync liblibrarian and libopac descriptions

During translations some subfields show different
descriptions for intranet/opac

Just a little string change

To test:
1) Check if changes make sense and
there are no errors
2) Check if a clean install loads default marc21
frameworks without problem.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24098: Standardize Fines/Fees & Charges
Katrin Fischer [Mon, 13 Apr 2020 00:20:30 +0000 (02:20 +0200)]
Bug 24098: Standardize Fines/Fees & Charges

This patch suggests to adopt the terminology used in the OPAC
to only use charges and leave off the Fines or Fees.

To test:
- Add a charge to your account
- Check the note on the details and checkouts tabs
- Check the tab name on the details tab
- Activate batch checkouts via systempreferences for your
  patron category:
  - BatchCheckouts
  - BatchCheckoutsValidCategories
- Add a guarantee to your patron and allow to see fines
  (requires: AllowStaffToSetFinesVisibilityForGuarantor)
- Add a manual fine for the guaranee above NoIssuesChargeGuarantee
- Go to the batch checkout tab of your patron and verify note there

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25343: Use of item in review/comment feature is misleading
Owen Leonard [Thu, 7 May 2020 14:57:25 +0000 (14:57 +0000)]
Bug 25343: Use of item in review/comment feature is misleading

This patch updates the terminology associated with leaving a comment in
the OPAC. the word "item" is replaced with the more specific "title."

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

 - Log in to the OPAC and view a bibliographic record which has no
   comments.
 - Under the "comments" tab, verify that the text in the tab says
   "There are no comments on this title. Post your comments on this
   title."

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 19312: Fix typo in template
George Veranis [Wed, 22 Apr 2020 09:43:53 +0000 (11:43 +0200)]
Bug 19312: Fix typo in template

This patch fixes a simple typo

Test plan:
1) Go to Administration -> MARC bibliographic framework
2) Select a framework and add plugin unimarc_field_121a.pl to 121 field
3) Open cataloguing screen
4) Go to 121 field and check if for subfield a shows two times the value
   2-dimensional
5) Apply the patch
6) Go to 121 field again and check if it shows 2 different values

Mentored-by: Andreas Roussos <a.roussos@dataly.gr>
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 25388: There is no link for the "online help"
David Roberts [Thu, 7 May 2020 18:07:21 +0000 (18:07 +0000)]
Bug 25388: There is no link for the "online help"

This patch removes a non-existent link to the online help from the marc
subfield editor.

To test:

1) Go to Admin > MARC Bibliographic framework > Edit MARC structure >
Edit subfield (for example /cgi-bin/koha/admin/marc_subfields_structure.pl?op=add_form&tagfield=000&frameworkcode=AR)
2) Check that the Max Length value in the Advanced constraints area
contains text saying "See online help"
3) Apply patch
4) Check that the reference to the online help has disappeared.

Remove tabs from start of line

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>