koha.git
4 years agoBug 23493: Replace rowGrouping with rowGroup
Martin Renvoize [Fri, 23 Aug 2019 09:52:11 +0000 (10:52 +0100)]
Bug 23493: Replace rowGrouping with rowGroup

This patch replaces the unmaintained third party rowGrouping datatables
plugin with the supported core rowGroup replacement.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
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 24305: (follow-up) Remove previous declaration of batch_biblionumbers
Jonathan Druart [Wed, 29 Jan 2020 10:13:45 +0000 (11:13 +0100)]
Bug 24305: (follow-up) Remove previous declaration of batch_biblionumbers

Revert change for cardnumbers, they are not always numbers.
We may need to add a regex to remove special chars however, will be done
on its own bug report if needed.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 23947: Phase out jquery.cookie.js: Authority merge
Owen Leonard [Fri, 1 Nov 2019 18:15:53 +0000 (18:15 +0000)]
Bug 23947: Phase out jquery.cookie.js: Authority merge

This patch updates the JavaScript which sets cookies during the
authority merge process so that it uses the new js-cookie library.

To test, apply the patch and perform a search in the authority module
which will return multiple results.

 - Select "Merge" from the Actions menu next to any result.
   - A message should appear at the top of the page: "Merging with
     authority: <title>".
   - Click "Cancel merge." The message should disappear.
 - Select a record to merge again.
   - Select another record.
   - The page should redirect to the authority merge page.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 23944: (follow-up) Update circulation to use new library
Owen Leonard [Fri, 1 Nov 2019 13:18:28 +0000 (13:18 +0000)]
Bug 23944: (follow-up) Update circulation to use new library

This patch updates the circulation page to use the new JavaScript Cookie
library for cookie management.

To test, apply the patch and open a patron record for checkout in the
staff client.

 - Click "Search to hold" in the toolbar and perform a catalog search
   which will return results.
 - On the search results page, the toolbar at the top of the results
   should include a split "Place hold" button. The button's menu should
   include "Place hold for <patron>" and "Forget <patron>" options. Test
   that these work correctly.
 - In the table of search results each title should include a "Place
   hold for <patron>" link.
 - Go to the checkouts page for a patron with one or more checked-out
   items.
   - Check the "Always show checkouts immediately" checkbox.
   - The patron's checkouts should load.
   - Open another patron for checkout who has checked-out items.
   - The table of checkouts should load automatically.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 23944: Phase out use of jquery.cookie.js in favor of js.cookie.js
Owen Leonard [Fri, 1 Nov 2019 13:00:03 +0000 (13:00 +0000)]
Bug 23944: Phase out use of jquery.cookie.js in favor of js.cookie.js

This patch adds a new JavaScript file to the staff client's global
JavaScript include file: js.cookie-2.2.1.min.js. This "plugin" will
replace jquery.cookie.js which is no longer maintained.

The "About" page in the staff client is updated to include this new
resource as well as adding previously-missing information about the old
plugin which will remain until all instances of its usage have been
removed.

To test, apply the patch and check the About page to confirm the correct
information is included.

No functionality change is introduced by this bug. The only other
observable change is the existence of the new files and the inclusion of
the minified version of the file in any staff client page.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 20847: Add more fields to the Batch Patron Modification tool
David Roberts [Fri, 24 Jan 2020 02:15:46 +0000 (02:15 +0000)]
Bug 20847: Add more fields to the Batch Patron Modification tool

This patch adds streetnumber, address, address2, phone and mobile to the
Batch Patron Modify form, also moves Primary email to a more logical
place on the page

To test:

1) Install patch
2) Open Batch Patron Modification tool, and input a borrowernumber to
edit
3) Add some data into the streetnumber, address, address2, phone and
mobile fields and click Save
4) These fields in the user record should now contain your data
5) Test that running the tool again with the option to delete the data
clears the fields correctly
6) Repeat steps 1-5 with a file of user borrowernumbers

Signed-off-by: Daniel J <daniel.jones@cheshiresharedservices.gov.uk>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 23856: Split author and ISBN/ISSN out of citation in staged MARC record management
Owen Leonard [Mon, 21 Oct 2019 17:01:06 +0000 (17:01 +0000)]
Bug 23856: Split author and ISBN/ISSN out of citation in staged MARC record management

This patch modifies the way data is passed to the staged MARC record
management template, splitting author, ISBN, and ISSN out of the
"citation" variable and passing them separately.

The DataTables configuration for the staged MARC record management page
is modified so that those now-separate variables are conditionally
displayed.

Unrelated minor change: Added a class to the MARC preview modal so that
it displays wider.

To test, apply the patch and view the "Staged MARC management" page for
both batches of bibliographic records and batches of authority records.

In each case the title or authority heading should be displayed as a
link while author, ISBN, and ISSN (if any) should not.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 23885: Move staff client search results JavaScript into separate file
Owen Leonard [Tue, 22 Oct 2019 11:47:04 +0000 (11:47 +0000)]
Bug 23885: Move staff client search results JavaScript into separate file

This patch moves most of the JavaScript embedded in results.tt into a
separate file. The JavaScript that remains on the page is everything
which requires processing by Template Toolkit. This is limited to
variable definition.

To test, apply the patch and perform a catalog search in the staff
client. On the results page, test that JavaScript functionality has not
been affected:

 - The search results toolbar should "float" as you scroll
 - Select all and Clear all
 - Default search term highlighting; Unhighlight and highlight controls
 - Adding and removing one or more items from the cart
 - Adding one or more items to a list
 - Placing one or more holds my making selections and clicking "Place
   hold"
 - Browse selected records
 - Z39.50 search (search form should be populated with your search
   terms)
 - "Show more" and "Show less" links in the facets sidebar
 - Book cover image services: Amazon, Coce, local covers, etc.
 - Open a patron record and click "Search to hold"
  - Perform a search and select one or more results
    - Test "Place hold" from the hold menu in the toolbar
    - Test "Place hold for..." from the hold menu in the toolbar
    - Test "Forget..." from the hold menu in the toolbar
 - In Tools -> Patron clubs, locate a club with enrolled members
   - From the "Actions" menu, select "Search to hold"
     - Perform a search and select one or more results
       - Test "Place hold" from the hold menu in the toolbar
       - Test "Place hold for..." from the hold menu in the toolbar
       - Test "Forget..." from the hold menu in the toolbar

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 13121: Move search results "action" links ("Place hold," "Add tag," etc) into...
Owen Leonard [Tue, 7 Jan 2020 13:03:18 +0000 (13:03 +0000)]
Bug 13121: Move search results "action" links ("Place hold," "Add tag," etc) into include file

This patch moves markup for controls repeated across several OPAC
templates into a single include: Place hold, Request article, Add tag,
Save to lists, and Add to cart.

To test, apply the patch and view the following OPAC pages:

 - Search results
 - Shelf contents view
 - User tags list

On each of these pages all the controls should work correctly:

 - Place hold
 - Request art
 - Add tag
 - Save to lists
 - Add to cart

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24296: DBRev 19.12.00.015
Martin Renvoize [Tue, 28 Jan 2020 15:05:44 +0000 (15:05 +0000)]
Bug 24296: DBRev 19.12.00.015

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24296: Update stockrotation process to use branchtransfers.reason
Martin Renvoize [Thu, 16 Jan 2020 09:52:20 +0000 (09:52 +0000)]
Bug 24296: Update stockrotation process to use branchtransfers.reason

This patch updates all occurences of stockrotation related lookups of
branchtransfers status from using the 'comments' field to using the new
'reason' field.

Test plan:
1) Work through the process of creating a stock rotation plan and adding
   items to the plan.. no errors should be encoutered during this process.
2) Run the stockrotation cronjob to move some items on.. no errors
   should be encountered.

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 24296: Update existing data in the database
Martin Renvoize [Thu, 16 Jan 2020 09:01:34 +0000 (09:01 +0000)]
Bug 24296: Update existing data in the database

This DB udpate adds the stockration states to the trigger enum in the
branchtransfers table and then populates it with any such data currently
contained within the comments field.

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 24287: DBRev 19.12.00.014
Martin Renvoize [Tue, 28 Jan 2020 15:01:30 +0000 (15:01 +0000)]
Bug 24287: DBRev 19.12.00.014

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24287: Add `reason` to `branchtransfers`
Martin Renvoize [Fri, 20 Dec 2019 16:02:01 +0000 (16:02 +0000)]
Bug 24287: Add `reason` to `branchtransfers`

This patch adds the `reason` field to the `branchtransfers` table to
record what triggered a transfer.

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 24448: Adding a notice to tell the _count methods are temporary
Jonathan Druart [Tue, 28 Jan 2020 14:04:10 +0000 (15:04 +0100)]
Bug 24448: Adding a notice to tell the _count methods are temporary

See bug 24467. You are allowed to flog tcohen with an RJ45 cable if this
is not fixed in the next months.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24448: Add Koha::Biblio->subscriptions_count
Tomas Cohen Arazi [Fri, 17 Jan 2020 14:18:41 +0000 (11:18 -0300)]
Bug 24448: Add Koha::Biblio->subscriptions_count

This patch adds the handy subscriptions_count method to the Koha::Biblio
class. It is intended to be used as a shortcut for

    $biblio->subscriptions->count

in places like the API where we can embed the output of a method.

To test:
1. Apply this patches
2. Run:
   $ kshell
  k$ prove t/db_dependent/Koha/Biblio.t \
           t/db_dependent/Koha/Biblios.t
=> SUCCESS: Tests pass! i.e. Biblios.t still passes, and the tests for
the new method in Biblio.t pass as well.
3. 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 24448: Unit tests
Tomas Cohen Arazi [Fri, 17 Jan 2020 14:17:33 +0000 (11:17 -0300)]
Bug 24448: Unit tests

This patch adds tests for the new method to be introduced. It also moves
the tests for Koha::Biblio->subscriptions to the Biblio.t where it
really belongs.

To test, run this tests along with the patch implementing the new
method.

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 24348: Pass marc record to _passes_required_checks
Andreas Jonsson [Sun, 5 Jan 2020 13:02:13 +0000 (13:02 +0000)]
Bug 24348: Pass marc record to _passes_required_checks

Test plan:

* Add record matching rule:

 Matching rule code: test
 Description: 001 and 003
 Match threshold: 1000
 Record type: Bibliografic record

 Match points:
    Search index: Control-number
    Score: 1000
    Tag: 001
    Subfields:
    Offset:
    Length:
    Normalization rule: none

 Required match checks:

    Source (incoming) record check field

    Tag: 003
    Subfields:
    Offset:
    Length:
    Normalization rule: none

    Target (database) record check field

    Tag: 003
    Subfields:
    Offset:
    Length:
    Normalization rule: none

* Note the match rule identity number.
* Stage a marc-file for import, for instance this one ftp://ftp.libris.kb.se/pub/export2/X/marc/X.20200104.marc

sudo /usr/sbin/koha-shell -c "perl /home/vagrant/kohaclone/misc/stage_file.pl --match 4 --file 'X.20200104.marc' --format ISO2709 --comment 'test'" kohadev

* Note the batch number and commit the file using the batch number:

sudo /usr/sbin/koha-shell -c "perl /home/vagrant/kohaclone/misc/commit_file.pl --batch-number 1" kohadev

* Again, stage the same marc-file  for import:

sudo /usr/sbin/koha-shell -c "perl /home/vagrant/kohaclone/misc/stage_file.pl --match 4 --file 'X.20200104.marc' --format ISO2709 --comment 'test'" kohadev

* Note the number of records matched.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.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 23442: (RM followup) Boraccount refund form correction
Martin Renvoize [Tue, 28 Jan 2020 13:13:10 +0000 (13:13 +0000)]
Bug 23442: (RM followup) Boraccount refund form correction

This patch adds a minor correction to the refund form on the borrower
accounts page. It removes the hidden 'registerid' form field and
corrects the select field to submit registerid as intended.

This corrects the behaviour such that the staff user can select which
cash register the payout action should be attributed to.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24080: (RM followup) Boraccount payout form correction
Martin Renvoize [Tue, 28 Jan 2020 13:12:40 +0000 (13:12 +0000)]
Bug 24080: (RM followup) Boraccount payout form correction

This patch adds a minor correction to the payout form on the borrower
acocunts page. It removes the hidden 'registerid' form field and
corrects the select field to submit registerid as intended.

This corrects the behaviour such that the staff user can select which
cash register the payout action should be attributed to.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 23113: members/pay.tt account_grp is not longer used
Owen Leonard [Tue, 7 Jan 2020 12:33:02 +0000 (12:33 +0000)]
Bug 23113: members/pay.tt account_grp is not longer used

This patch removes obsolete markup from pay.tt.

To test, apply the patch and search the Koha codebase for instances of
"account_grp" There should be none.

Log in to the staff client and go to the account of a patron who has
fines. Confirm that the "Accounting" page ("Make a payment" tab) works
correctly.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24361: Silent t/db_dependent/Items.t
Jonathan Druart [Mon, 27 Jan 2020 16:43:17 +0000 (17:43 +0100)]
Bug 24361: Silent t/db_dependent/Items.t

its output is displaying tons of
Use of uninitialized value $field in regexp compilation at /kohadevbox/koha/C4/Items.pm line 2106.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24486: Remove duplicated account information at the OPAC
Nick Clemens [Mon, 27 Jan 2020 11:48:31 +0000 (11:48 +0000)]
Bug 24486: Remove duplicated account information at the OPAC

Test plan:
Create a manual invoice
Pay it
Void it

Go to the opac, account
=> You should see only one "(Voided)"

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24421: Check if subfields are valid using the biblio tag
Nick Clemens [Tue, 14 Jan 2020 16:13:25 +0000 (16:13 +0000)]
Bug 24421: Check if subfields are valid using the biblio tag

To test:
 1 - Enable the sysprefs
     AutoCreateAuthorities
     BiblioAddsAuthorities
     CatalogModuleRelink
 2 - Open a record with a subject heading with a subdivision and add a new subfield, or add a new unauthroized heading to a record and save it
    e.g. 650$aChess$xOpenings$vFiction.
 3 - Save the record, note the created authority and that field is linked
 4 - Save the record again and note the authority number changes
 5 - Find and view the authority linked to the record
 6 - The record is for 'Chess', not Chess openings'
 7 - Search authorities for 'Chess' - note duplicated records
 8 - Apply patch, restart all
 9 - Save the record, auth number increases again, we shoudl create the correct record this time
10 - Save again, auth number should not change
11 - Search authorities and confirm the generated authority has the correct subfields

Signed-off-by: Myka Kennedy Stephens <mkstephens@lancasterseminary.edu>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24421: Unit tests
Nick Clemens [Fri, 24 Jan 2020 13:24:45 +0000 (13:24 +0000)]
Bug 24421: Unit tests

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24339: Do not assume there are exactly 3 SIP* AVs
Jonathan Druart [Mon, 27 Jan 2020 10:03:46 +0000 (11:03 +0100)]
Bug 24339: Do not assume there are exactly 3 SIP* AVs

Update DB entry 19.06.00.017:
We created SIP* AV from accountlines if '^Pay[[:digit:]]{2}$', so I
think we should assume that more than SIP00, SIP01, SIP02 can exist.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24339: Remove SIP payment types from staff pay screens
Martin Renvoize [Wed, 8 Jan 2020 12:48:55 +0000 (12:48 +0000)]
Bug 24339: Remove SIP payment types from staff pay screens

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24339: Add SIP2 payment types for installation
Martin Renvoize [Fri, 3 Jan 2020 21:50:51 +0000 (21:50 +0000)]
Bug 24339: Add SIP2 payment types for installation

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24497: Turn off smartIndent for SQL
Lucas Gass [Fri, 24 Jan 2020 18:18:33 +0000 (18:18 +0000)]
Bug 24497: Turn off smartIndent for SQL

Signed-off-by: Christopher Brannon <cbrannon@cdalibrary.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24484: Add explanatory text to batch patron deletion
David Roberts [Thu, 23 Jan 2020 12:18:17 +0000 (12:18 +0000)]
Bug 24484: Add explanatory text to batch patron deletion

This patch adds a more detailed explanation about what the tool can do.

To test:

1) Open up the Batch patron deletion and anonymisation tool
2) Check the help text near the top of the screen
3) Install the patch and repeat steps 1 and 2
4) Check the help text has changed to the new version

Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24511: Update variable names to avoid confusion
Nick Clemens [Fri, 24 Jan 2020 14:58:25 +0000 (14:58 +0000)]
Bug 24511: Update variable names to avoid confusion

To test:
1 - Create a report
    SELECT borrowernumber, firstname, surname, email, emailpro FROM borrowers WHERE surname='acosta'
2 - Create or edit patron with surname acosta to have a separate email and emailpro
3 - perl misc/cronjobs/patron_emailer --notice HOLDS --module reserves --verbose --email emailpro --report ## --from 'me@you.us'
4 - Note email is used, not email pro
5 - Apply patch
6 - Repeat, correct eamil is used

Signed-off-by: Kelly McElligott <kelly@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24515: Column Configuration for pay-fines-table does not hide Account Type properly
Owen Leonard [Fri, 24 Jan 2020 23:25:20 +0000 (23:25 +0000)]
Bug 24515: Column Configuration for pay-fines-table does not hide Account Type properly

This patch corrects the order of the columns in the columns
configuration YML file. The incorrect order was causing the wrong column
to be hidden when changing the columns settings for the table in
Administration.

To test, apply the patch and go to Administration -> Columns settings.

 - Under Patrons -> pay-fines-table, test hiding the account_type and
   description columns, together and separately.
 - Verify that the correct columns are hidden on the pay fines screen
   (Patron -> Accounting -> Make a payment)

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24509: Fix API relared tests failing on MySQL8
Tomas Cohen Arazi [Fri, 24 Jan 2020 12:16:09 +0000 (09:16 -0300)]
Bug 24509: Fix API relared tests failing on MySQL8

This patch makes a trivial change to the tests so they catch the way
MySQL 8 reports the duplicate key message. The difference on the API
error message is irrelevant and so it is ok to just make the tests try
both MySQL 8 output and the rest of the supported engines.

To test:
1. Run:
   $ kshell
  k$ prove t/db_dependent/api/v1/acquisitions_orders.t \
           t/db_dependent/api/v1/libraries.t \
           t/db_dependent/api/v1/patrons.t
=> FAIL: Tests fail due to warning and conflict message differences
2. Apply this patch
3. Repeat 1
=> 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 24507: Make Checkouts/ReturnClaim.t pass on MySQL 8
Jonathan Druart [Fri, 24 Jan 2020 10:13:53 +0000 (11:13 +0100)]
Bug 24507: Make Checkouts/ReturnClaim.t pass on MySQL 8

 $ prove t/db_dependent/Koha/Checkouts/ReturnClaim.t
 t/db_dependent/Koha/Checkouts/ReturnClaim.t ..
     #   Failed test 'Exception field is correct'
     #   at t/db_dependent/Koha/Checkouts/ReturnClaim.t line 97.
     #          got: 'return_claims.issue_id'
     #     expected: 'issue_id'
     # Looks like you failed 1 test of 8.
 t/db_dependent/Koha/Checkouts/ReturnClaim.t .. 1/1
 #   Failed test 'store() tests'
 #   at t/db_dependent/Koha/Checkouts/ReturnClaim.t line 133.

This is similar to bug 23825.

Test plan:
Confirm that the tests pass on MySQL8 and MariaDB

Signed-off-by: Tomás Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24305: (QA follow-up) Strip table name in [[table.field|alias]]
Marcel de Rooy [Fri, 24 Jan 2020 11:17:15 +0000 (11:17 +0000)]
Bug 24305: (QA follow-up) Strip table name in [[table.field|alias]]

When you would use the construct, you wont have batch features unless
we strip the table name. This is consistent with the $sth->{NAME} used
to fill the headers by default.

Test plan:
Use [[items.biblionumber|bibno]] instead of items.biblionumber in a
reporting query.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24305: (follow-up) Add small comment for square brackets in get_prepped_report
Marcel de Rooy [Fri, 24 Jan 2020 11:04:05 +0000 (11:04 +0000)]
Bug 24305: (follow-up) Add small comment for square brackets in get_prepped_report

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24305: Remove previous declaration of batch_biblionumbers
Jonathan Druart [Mon, 13 Jan 2020 11:15:33 +0000 (12:15 +0100)]
Bug 24305: Remove previous declaration of batch_biblionumbers

We should not init batch_biblionumbers before.
Also this patch deals with batch_cardnumbers.

Signed-off-by: Holly Cooper <hc@interleaf.ie>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24305: Fix links to batch tools when report's columns do not contain integers
Jonathan Druart [Thu, 26 Dec 2019 10:11:55 +0000 (11:11 +0100)]
Bug 24305: Fix links to batch tools when report's columns do not contain integers

If report's columns do not only contain integers, we should not point to
batch tools.
For instance, if the value is a link, the batch tools will not work as
they will not retrieve the id (itemnnumber or biblionumber) properly

Test plan:
Create a report like:
    SELECT CONCAT('<a href=\"/cgi-bin/koha/cataloguing/additem.pl?op=edititem&biblionumber=', biblionumber, '&itemnumber=', itemnumber, '#edititem', '\">', itemnumber, '</a>' ) AS itemnumber
    FROM items
    LIMIT 10;
Execute it
=> There is not link to the batch tools

Edit the report like:
    SELECT itemnumber
    FROM items
    LIMIT 10;
Execute it
=> There is a link to the batch tools

Edit the report like

    SELECT itemnumber, CONCAT('<a href=\"/cgi-bin/koha/cataloguing/additem.pl?op=edititem&biblionumber=', biblionumber, '&itemnumber=', itemnumber, '#edititem', '\">', itemnumber, '</a>' ) AS itemnumber
    FROM items
    LIMIT 10;
Execute it
=> There is link to the batch tools

Try other combinations with biblionumber.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24503: fix missing use in value builder barcode_manual.pl
Fridolin Somers [Fri, 24 Jan 2020 08:20:06 +0000 (09:20 +0100)]
Bug 24503: fix missing use in value builder barcode_manual.pl

Bug 22721 added use C4::Biblio in cataloguing/value_builder/barcode.pl.
This is missing in value builder barcode_manual.pl.
You get the error :
Undefined subroutine &Koha::FrameworkPlugin::GetMarcFromKohaField called at cataloguing/value_builder/barcode_manual.pl line 41.

Test plan :
1) Configure a subfield of item to use value builder barcode_manual.pl
2) Go to a record
3) Try to add a new item
4) Check the value builder is OK

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Tested with autobarcode==year-0001,0002
No internal server error, but generates a barcode now.
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 23443: Do not checkin an item if checked out to another patron when lost fee...
Jonathan Druart [Tue, 14 Jan 2020 11:39:38 +0000 (12:39 +0100)]
Bug 23443: Do not checkin an item if checked out to another patron when lost fee is paid

Test plan:
0 - Do not apply this patch
1 - Check out an item to a patron
2 - Make sure a fee will be charged when lost
3 - Mark the item lost
4 - Make sure the fee will not be refunded on return of the item
5 - Return the item
6 - Check it out to a new patron
7 - Write off the fine for the original patron
=> The item is now checked in
8 - Apply this patch and repeat 1 to 7
=> The item is still checked out

Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.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 23443: Add tests
Jonathan Druart [Tue, 14 Jan 2020 11:39:36 +0000 (12:39 +0100)]
Bug 23443: Add tests

Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.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 23407: (QA follow-up) Same change for UNIMARC XSLT
Marcel de Rooy [Fri, 24 Jan 2020 07:22:52 +0000 (07:22 +0000)]
Bug 23407: (QA follow-up) Same change for UNIMARC XSLT

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 23407: (QA follow-up) Remove some XSLT item leftovers
Marcel de Rooy [Fri, 24 Jan 2020 07:12:31 +0000 (07:12 +0000)]
Bug 23407: (QA follow-up) Remove some XSLT item leftovers

Test plan:
Check intranet results and detail page.
Check opac detail.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 23407: Don't process items for XSLT on details pages
Nick Clemens [Wed, 31 Jul 2019 20:14:34 +0000 (20:14 +0000)]
Bug 23407: Don't process items for XSLT on details pages

To test:
1 - Add 1000 items to a record
    Go to biblio
    Edit items
    Add multiple copies of this item
    Add 1000 and confirm
    Wait..
2 - Load the record in staff client and OPAC, note how long it takes
    Press F12 in browser to open the console
    use the Network tab of the console
    note the load time
    refresh a few times to see average time
3 - Apply patch
4 - Restart all the things
5 - Reload the record in staff and opac
6 - Note decresed time
7 - Verify nothing on the page has changed

QA can grep the standard XSLT files for details pages for 'item' to note occurences do not use items information

Signed-off-by: Hayley Mapley <hayleymapley@catalyst.net.nz>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24443: Unit test
Fridolin Somers [Fri, 17 Jan 2020 09:48:50 +0000 (10:48 +0100)]
Bug 24443: Unit test

Signed-off-by: Maryse Simard <maryse.simard@inlibro.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 24443: Consider NULL as 0 for issues in items search
Fridolin Somers [Fri, 17 Jan 2020 09:25:19 +0000 (10:25 +0100)]
Bug 24443: Consider NULL as 0 for issues in items search

In items search, we can filter by items issues count, data coming from items.issues.
Most of the time, for an item with no issues this column contains NULL.
This enhancement proposes to consider NULL as 0 to allow searching items with no issues.

Test plan:
1) Use SQL to count items with items.issues = NULL :
   select count(*) from items where issues is null;
2) Go to items search
3) Perform search with filter "Checkout count" = 0
4) Check you get the same number of results as SQL query

Signed-off-by: Maryse Simard <maryse.simard@inlibro.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 22831: (RM follow-up) Add libarray-utils-perl to control
Martin Renvoize [Fri, 24 Jan 2020 09:16:01 +0000 (09:16 +0000)]
Bug 22831: (RM follow-up) Add libarray-utils-perl to control

This patch adds the new Array::Utils perl dependancy to the debian
control files.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 17084: Automatic debian/control updates (unstable/master)
Nightly Build Bot [Fri, 10 Jan 2020 23:32:51 +0000 (00:32 +0100)]
Bug 17084: Automatic debian/control updates (unstable/master)

Remove Text::Unaccent dependancy

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24149: Skip Koha::Statistics for TestBuilder tests
Jonathan Druart [Fri, 24 Jan 2020 08:44:04 +0000 (09:44 +0100)]
Bug 24149: Skip Koha::Statistics for TestBuilder tests

As statistics does not have a PK we need to adjust the TestBuilder
tests.
Bug 18441 already exists for adding the PK.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24080: (RM follow-up) Add payout to 'accounts.inc'
Martin Renvoize [Thu, 23 Jan 2020 15:48:21 +0000 (15:48 +0000)]
Bug 24080: (RM follow-up) Add payout to 'accounts.inc'

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 23442: (RM follow-up) Add 'Refund' to accounts.inc
Martin Renvoize [Thu, 23 Jan 2020 15:47:39 +0000 (15:47 +0000)]
Bug 23442: (RM follow-up) Add 'Refund' to accounts.inc

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 23442: (RM follow-up) Fix for missing 'uc' in offset_type call
Martin Renvoize [Thu, 23 Jan 2020 15:45:12 +0000 (15:45 +0000)]
Bug 23442: (RM follow-up) Fix for missing 'uc' in offset_type call

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24149: (QA follow-up) Add pod for Koha::Statistics->object_class
Josef Moravec [Thu, 23 Jan 2020 05:50:34 +0000 (05:50 +0000)]
Bug 24149: (QA follow-up) Add pod for Koha::Statistics->object_class

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24149: Add tests
Jonathan Druart [Tue, 3 Dec 2019 16:40:06 +0000 (17:40 +0100)]
Bug 24149: Add tests

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24149: Add Koha::Statistic->item
Jonathan Druart [Tue, 26 Nov 2019 18:44:47 +0000 (19:44 +0100)]
Bug 24149: Add Koha::Statistic->item

Sponsored-by: Association KohaLa - https://koha-fr.org/
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24149: Add Koha::Statistic[s] classes
Jonathan Druart [Tue, 26 Nov 2019 16:52:55 +0000 (17:52 +0100)]
Bug 24149: Add Koha::Statistic[s] classes

Sponsored-by: Association KohaLa - https://koha-fr.org/
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24478: DBRev 19.12.00.013
Martin Renvoize [Thu, 23 Jan 2020 10:39:38 +0000 (10:39 +0000)]
Bug 24478: DBRev 19.12.00.013

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24478: Fix sequence in sysprefs.sql and add missing comma
Katrin Fischer [Thu, 16 Jan 2020 14:11:11 +0000 (14:11 +0000)]
Bug 24478: Fix sequence in sysprefs.sql and add missing comma

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24478: Use `EnablePointOfSale` preference
Martin Renvoize [Wed, 22 Jan 2020 10:51:55 +0000 (10:51 +0000)]
Bug 24478: Use `EnablePointOfSale` preference

This patch adds the `EnablePointOfSale` preference to the accounting tab
on the preferences editor and ties the display of the Point of Sale
module to it.

Test plan:
1) Enable both `UseCashRegisters` and `EnablePointOfSale` preferences.
2) Ensure you are a superuser or your user has the
   takepayment permission.
3) The Point of Sale module should be present on your staff home page
   with the above configuration, otherwhise it should not.

Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24478: Add `EnablePointOfSale` system preference
Martin Renvoize [Wed, 22 Jan 2020 10:49:55 +0000 (10:49 +0000)]
Bug 24478: Add `EnablePointOfSale` system preference

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24025: Make CodeMirror content searchable
Lucas Gass [Wed, 22 Jan 2020 16:31:10 +0000 (16:31 +0000)]
Bug 24025: Make CodeMirror content searchable

Signed-off-by: Barbara Johnson <barbara.johnson@bedfordtx.gov>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 23884: Merge strings.inc and browser-strings.inc
Owen Leonard [Wed, 23 Oct 2019 13:16:45 +0000 (13:16 +0000)]
Bug 23884: Merge strings.inc and browser-strings.inc

This patch take the contents of the JavaScript in browser-strings.inc
and puts it in strings.inc. browser-strings.inc is deleted.

To test, apply the patch and perform a catalog search in the staff
client.

 - View any result. In the left-hand sidebar there should be a search
   results browser box with "previous" and "next" arrows and a link back
   to search results.
 - Click on each different "view" tab and confirm that the search
   results navigation box persists: Normal, MARC, Labeled MARC, ISBD,
   Items.
 - From any of these views select Edit -> Edit items. The same
   navigation box should appear.

Note: addbiblio.tt and stockrotation.tt are modified but feature doesn't
currently work on those pages.

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 19809: Remove some new occurrences
Jonathan Druart [Wed, 22 Jan 2020 10:50:19 +0000 (11:50 +0100)]
Bug 19809: Remove some new occurrences

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 19809: Re-allow to call Koha::Objects::find in list context
Julian Maurice [Thu, 14 Dec 2017 08:19:22 +0000 (09:19 +0100)]
Bug 19809: Re-allow to call Koha::Objects::find in list context

and remove 'scalar' keyword in calls where it's not needed.

Signed-off-by: Brendan Gallagher <brendan@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 24105: Fix error when running longoverdue.pl with --itemtypes
Liz Rea [Mon, 25 Nov 2019 17:20:51 +0000 (11:20 -0600)]
Bug 24105: Fix error when running longoverdue.pl with --itemtypes

To test:

Run Longoverdue.pl as koha-shell with both 1 and several --itemtypes specified
notice that it has an error
apply this patch
run longoverdue.pl as koha-shell with both 1 and several --itemtypes specified
notice there isn't an error anymore!

Signed-off-by: David Roberts <david.roberts@ptfs-europe.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 24452: Advanced editor - show multiple spaces visually
Owen Leonard [Fri, 17 Jan 2020 15:00:31 +0000 (15:00 +0000)]
Bug 24452: Advanced editor - show multiple spaces visually

This patch updates the JavaScript and CSS for the advanced MARC editor
so that multiple consecutive spaces within a line will be detected and
highlighted.

To test the EnableAdvancedCatalogingEditor system preference should be
enabled. Apply the patch and clear your browser cache if necessary.

 - Go to Cataloging -> Advanced editor.
 - On any text entry line (e.g. 245), enter some words with one, two,
   and more spaces in between them. When there are two or more spaces
   between words the spaces between the words should have a dotted red
   underline.
 - Remove the extra spaces and confirm that the dotted line disappears.

Signed-off-by: Cori Lynn Arnold <carnold@dgiinc.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 22831: (RM follow-up) Code golf
Martin Renvoize [Thu, 23 Jan 2020 10:20:31 +0000 (10:20 +0000)]
Bug 22831: (RM follow-up) Code golf

Rather than performing a symmetric diff and then splitting the results
in a further loop this patch changes to logic to use two asymetric diffs
to get the results more directly.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 22831: (follow-up) Sort results, group by db
Nick Clemens [Thu, 7 Nov 2019 18:49:12 +0000 (18:49 +0000)]
Bug 22831: (follow-up) Sort results, group by db

Signed-off-by: Bouzid Fergani <bouzid.fergani@inlibro.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 22831: (follow-up) Determine where the record is missing and provide link, show...
Nick Clemens [Wed, 6 Nov 2019 14:37:01 +0000 (14:37 +0000)]
Bug 22831: (follow-up) Determine where the record is missing and provide link, show counter

Signed-off-by: Ere Maijala <ere.maijala@helsinki.fi>
Signed-off-by: Bouzid Fergani <bouzid.fergani@inlibro.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 22831: Elasticsearch - add a maintenance script for checking DB vs index counts
Nick Clemens [Thu, 2 May 2019 12:24:08 +0000 (12:24 +0000)]
Bug 22831: Elasticsearch - add a maintenance script for checking DB vs index counts

This script uses Array::Utils and adds a dependency

To test:
 1 - Have Koha with ES running
 2 - Delete some records from ES
     curl -X DELETE "es:9200/koha_kohadev_biblios/data/5"
     curl -X DELETE "es:9200/koha_kohadev_authorities/data/5"
 3 - perl misc/maintenance/compare_es_to_db.pl
 4 - Note you are notified of problems in both indexes
 5 - perl misc/search_tools/rebuild_elastic_search.pl  -a
 6 - perl misc/maintenance/compare_es_to_db.pl
 7 - Note you are only notified about problems in biblios (assuming you don't have other issues)
 8 - perl misc/search_tools/rebuild_elasticsearch.pl  -b
 9 - perl misc/maintenance/compare_es_to_db.pl
10 - Both counts match, no problems

Signed-off-by: Ere Maijala <ere.maijala@helsinki.fi>
Signed-off-by: Bouzid Fergani <bouzid.fergani@inlibro.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 23064: Use Koha::Subscription in ModSubscription
Jonathan Druart [Wed, 20 Nov 2019 11:22:58 +0000 (12:22 +0100)]
Bug 23064: Use Koha::Subscription in ModSubscription

We must use Koha::Subscription instead of raw SQL.
It will fix issue with default and integer values.

Test plan:
Edit a subscription and set number of issues = "f"
Save
=> Without this patch there is a SQL error in the log:
  Incorrect integer value: 'f' for column 'numberlength'
=> With this patch the other changes are effective.

Note: We also could change the type attribute of the input to "number",
to have a client-side check

Also, the return value of ModSuggestion is never used, so we are safe
with that.

Signed-off-by: Hayley Mapley <hayleymapley@catalyst.net.nz>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24345: Fix OPACViewOthersSuggestions
Jonathan Druart [Tue, 21 Jan 2020 09:26:04 +0000 (10:26 +0100)]
Bug 24345: Fix OPACViewOthersSuggestions

Default value for $op needs to be set before the get_template_and_user lines as
it's tested for OPACViewOthersSuggestions.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24345: Fix process of suggesting purchase of existing title for non-logged-in...
Jonathan Druart [Sun, 5 Jan 2020 21:02:18 +0000 (22:02 +0100)]
Bug 24345: Fix process of suggesting purchase of existing title for non-logged-in users

The 'op' parameter is removed from the CGI object ($input) before
get_template_and_user is called. When the user is redirected to the
login form (from checkauth, called from get_template_and_user), the
op is lost.

Moving down the deletion fixes the problem.

Test plan:
Logout at the OPAC
Go the detail page of a bibliographic record
Click the "Suggest for purchase" link
Fill the login form
=> Without this patch you will see your suggestion list
=> With this patch applied the new suggestion form will be displayed,
prefilled with the biblio's info

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 24397: Remove out of sync script populate_db.pl
Jonathan Druart [Fri, 10 Jan 2020 13:16:56 +0000 (14:16 +0100)]
Bug 24397: Remove out of sync script populate_db.pl

populate_db.pl from koha-misc4dev must be used instead.
This script existed before the creation of koha-misc4dev, it does no
longer make sense to have it in Koha.

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 24459: Make ->to_api pass $params through
Tomas Cohen Arazi [Mon, 20 Jan 2020 12:48:03 +0000 (09:48 -0300)]
Bug 24459: Make ->to_api pass $params through

This patch makes the to_api method in Koha::Acquisition::Inovice and
Koha::Patron pass the passed parameters to the base class to_api method.
This is required for things like embedding related objects.

To test:
1. Apply the regression tests patch
2. Run:
   $ kshell
  k$ prove t/db_dependent/Koha/Patron.t \
           t/db_dependent/Koha/Acquisition/Invoice.t
=> FAIL: Tests fail!
3. Apply this patch
4. Repeat 2
=> SUCCESS: Tests pass!
5. 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 24459: Regression tests
Tomas Cohen Arazi [Mon, 20 Jan 2020 12:47:18 +0000 (09:47 -0300)]
Bug 24459: Regression tests

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 24457: Make overloaded ->to_api pass the params to parent method
Tomas Cohen Arazi [Sun, 19 Jan 2020 05:06:00 +0000 (02:06 -0300)]
Bug 24457: Make overloaded ->to_api pass the params to parent method

This patch makes the overloaded to_api method for baskets care about the
remaining parameters, and pass them to SUPER::to_api.

To test:
1. Apply the regression tests
2. Run:
   $ kshell
  k$ prove t/db_dependent/Koha/Acquisition/Basket.t
=> FAIL: Tests fail! No embedded bookseller!
3. Apply this patch
4. Repeat 2
=> SUCCESS: Tests pass!
5. Sign off :-D

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
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 24457: Regression tests
Tomas Cohen Arazi [Sun, 19 Jan 2020 05:05:40 +0000 (02:05 -0300)]
Bug 24457: Regression tests

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
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 24286: Escape forward slash in GENRE/FORM (and any authtype)
Nick Clemens [Fri, 20 Dec 2019 13:33:28 +0000 (13:33 +0000)]
Bug 24286: Escape forward slash in GENRE/FORM (and any authtype)

Note that bug 24267 will fix the issue during Z39 searching for new auth, but the duplicate check at saving will still fail

To test:
 0 - Set SearchEngine to Elasticsearch,  QueryRegexEscapeOptions  to 'Don't Escape'
 1 - Browse to Authorities
 2 - Select New->New from Z3950
 3 - Search for subject 'Short stories'
 4 - Auth search explodes
 5 - Apply patch
 6 - Repeat and confirm the search results return
 7 - Import and save the GENRE/FORM record for Short stories
 8 - Repeat the search and import the same record
 9 - Confirm that upon save you are notified of duplicate, don't save
10 - set  QueryRegexEscapeOptions to 'Escape' and confirm Z39 searching works and importing/save notifies of duplicate
11 - set SearchEngine to Zebra and confirm Z39 searching works and importing/save notifies of duplicate

Signed-off-by: Kelly McElligott <kelly@bywatersolutions.com>
Signed-off-by: Myka Kennedy Stephens <mkstephens@lancasterseminary.edu>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24441: Error when checking in an item with BranchTansferLimitsType set to itemtype
Kyle M Hall [Thu, 16 Jan 2020 19:10:18 +0000 (14:10 -0500)]
Bug 24441: Error when checking in an item with BranchTansferLimitsType set to itemtype

It appears that the transition to using Koha::Item in AddReturn has introduced a bug. Previously $item was a hashref with the key 'itemtype', now that it's an object, it has no itemtype method and so triggers an error with the message "The method Koha::Item->itemtype is not covered by tests!".

Test Plan:
1) Enable Branch Transfer Limits via itemtype
2) Check in an item
3) Note the error
4) Apply this patch
5) Restart all the things!
6) Check in an item
7) No error!

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Maribeth (Turner) Shafer <mshafer@ckls.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24441: Add tests
Jonathan Druart [Tue, 21 Jan 2020 15:08:12 +0000 (16:08 +0100)]
Bug 24441: Add tests

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24236: Fix pagination to use query_cgi
Nick Clemens [Fri, 13 Dec 2019 16:08:16 +0000 (16:08 +0000)]
Bug 24236: Fix pagination to use query_cgi

This is still wrong, we should use page-numbers.inc, but that is a larger refactoring
This patch fixes non-QueryParser searches by simple getting an using the escaped query (query_cgi)

For QueryParser, we do what the QP code does, just uri escape the query - the way that SimpleSearch does the query parsing instead of the usual buildQuery suggest to me that we should probably switch all of this to use the general Zebra search.

The issues with reservoir should be their own bug

To test:
1 - Search for cat in cataloging search
2 - Get results and see you can paginate
3 - Search for "cat"
4 - Get results but subsequent pages empty
5 - Apply patch
6 - Repeat search for "cat"
7 - You can paginate
8 - Enable UseQueryParser syspref (don't worry about installing)
9 - Confirm can still search with quotes and paginate

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: George Williams <george@nekls.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24432: Use from_api_mapping to translate column name in _build_order_atom
Agustin Moyano [Wed, 15 Jan 2020 23:12:19 +0000 (20:12 -0300)]
Bug 24432: Use from_api_mapping to translate column name in _build_order_atom

Use the mapping instead of building a fake hash only to get the key name.

To test:
1. apply this patch
2. prove t/Koha/REST/Plugin/Query.t
3. sign off

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 24432: add Koha::Objects->from_api_mapping
Agustin Moyano [Wed, 15 Jan 2020 23:10:01 +0000 (20:10 -0300)]
Bug 24432: add Koha::Objects->from_api_mapping

This patch adds from_api_mapping to Koha::Objects, in order to be able to get the mapping from a result set.

To test:
1. apply this patch
2. prove t/db_dependent/Koha/Objects.t
3. sign off

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 24432: Regresion test
Agustin Moyano [Wed, 15 Jan 2020 22:52:53 +0000 (19:52 -0300)]
Bug 24432: Regresion test

To test:
1. apply this patch
2. prove t/Koha/REST/Plugin/Query.t

Test should fail at this point.

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 24477: Require `takepayment` permission in pos/pay.pl
Martin Renvoize [Wed, 22 Jan 2020 10:26:00 +0000 (10:26 +0000)]
Bug 24477: Require `takepayment` permission in pos/pay.pl

When adding the point of sale take payment page in bug 23354 we missed
the permission check script side along with adding the permission at
install time (update was caught).

Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24481: DBRev 19.12.00.012
Martin Renvoize [Thu, 23 Jan 2020 08:50:31 +0000 (08:50 +0000)]
Bug 24481: DBRev 19.12.00.012

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24481: Permissions update for POS menu include
Martin Renvoize [Wed, 22 Jan 2020 14:46:20 +0000 (14:46 +0000)]
Bug 24481: Permissions update for POS menu include

This patch updates the point of sale menu include to reflect the updated
permissions name for cash registers

Note: Not required for 19.11

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24481: Permission corrections for admin menu templates
Martin Renvoize [Wed, 22 Jan 2020 14:45:17 +0000 (14:45 +0000)]
Bug 24481: Permission corrections for admin menu templates

This patch updates the admin menu include and admin home page to reflect
the updated permissions name for cash registers

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24481: Correct permission name in admin/cash_registers.pl
Martin Renvoize [Wed, 22 Jan 2020 14:03:13 +0000 (14:03 +0000)]
Bug 24481: Correct permission name in admin/cash_registers.pl

The permission name for changed during the implimentation of bug 23321
but one case was missed. This patch corrects that mistake.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24481: Move manage_cash_registers to parameters permission
Martin Renvoize [Wed, 22 Jan 2020 14:41:21 +0000 (14:41 +0000)]
Bug 24481: Move manage_cash_registers to parameters permission

This patch moves the manage_cash_registers subpermission to the more
appropriate location under 'parameters'.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 23354: (RM follow-up) Remove stray 'IGNORE' in updatedatabase
Martin Renvoize [Wed, 22 Jan 2020 15:00:10 +0000 (15:00 +0000)]
Bug 23354: (RM follow-up) Remove stray 'IGNORE' in updatedatabase

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 23354: (QA follow-up) Add takepayment permission for new installs
Nick Clemens [Wed, 22 Jan 2020 13:44:25 +0000 (13:44 +0000)]
Bug 23354: (QA follow-up) Add takepayment permission for new installs

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 23354: (RM follow-up) Change $q to $input for consistency
Martin Renvoize [Wed, 22 Jan 2020 12:13:18 +0000 (12:13 +0000)]
Bug 23354: (RM follow-up) Change $q to $input for consistency

As pointed out by Jonathan, this script introduced a third form for the
CGI variable. This patch updates the script to use the more common
$input variable name.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 19793: Change label to match patron record: Primary email
Katrin Fischer [Thu, 16 Jan 2020 01:50:07 +0000 (01:50 +0000)]
Bug 19793: Change label to match patron record: Primary email

As we have multiple email fields in the patron record, we should
be clear which one can be changed from the batch mod now. Easiest
is to use the same label.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 19793: Add a field for email in batch patron modification
David Roberts [Mon, 13 Jan 2020 22:43:46 +0000 (22:43 +0000)]
Bug 19793: Add a field for email in batch patron modification

This adds the email field to the patron batch modification tool.

To test:

1) Install patch
2) Open Batch Patron Modification tool, and input a borrowernumber to edit
3) Add some data (e.g. test@foobar.com) into the Email address field, and click Save
4) The Primary Email address in the user record should now contain your email address
5) Test that running the tool again with the option to delete the data clears the field correctly
6) Repeat steps 1-5 with a file of user borrowernumbers

Sponsored-by: PTFS Europe
Signed-off-by: Sal <sally.healey@cheshiresharedservices.gov.uk>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 24336: Ask for confirmation before deleting a suggestion in the OPAC
Owen Leonard [Fri, 3 Jan 2020 15:58:53 +0000 (15:58 +0000)]
Bug 24336: Ask for confirmation before deleting a suggestion in the OPAC

This patch modifies the OPAC suggestions interface so that patrons will
be asked for confirmation before deleting suggestions.

The patch also makes some minor markup changes to improve consistency
between this interface and others in the OPAC.

To test, apply the patch and log in to the OPAC as a user who has
submitted multiple suggestions.

 - From the list of your suggestions, confirm that the "New purchase
   suggestion" and "Delete" links have Font Awesome icons.
 - Check the checkbox corresponding to one of your suggestions. You can
   also now click the title of the suggestions to control the checkbox.
 - When you check a box the "Delete" link at the top of the page should
   activate.
 - Clicking the delete link should trigger a confirmation modal showing
   the title(s) you selected.
   - The message and button labels should reflect whether one or
     multiple titles are being deleted.
   - Test that the confirm and cancel controls work correctly.
 - Also test this process via the delete button at the bottom of the
   table of suggestions.

Signed-off-by: Maryse Simard <maryse.simard@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 7468: Use Modern::Perl
Katrin Fischer [Thu, 16 Jan 2020 01:34:35 +0000 (01:34 +0000)]
Bug 7468: Use Modern::Perl

Just a tiny coding guidelines fix.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 7468: fix the export labels popup header
Maryse Simard [Thu, 16 Jan 2020 14:19:39 +0000 (09:19 -0500)]
Bug 7468: fix the export labels popup header

When exporting a barcode range, the export popup should display "1 batch
to export" instead of "0 batches to export". In this context, it can be
considered a label batch and should be counted as such.

To test:
When clicking the "Print range" button, the popup should show "1 batch
to export".

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
4 years agoBug 7468: (follow-up) Add missing filters
Maryse Simard [Wed, 17 Jul 2019 15:51:26 +0000 (11:51 -0400)]
Bug 7468: (follow-up) Add missing filters

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