Commit Graph

1747 Commits

Author SHA1 Message Date
Ere Maijala 16846985e1
Bug 22474: Clone field config before adding fields to it
Test plain:

1. Reindex both authorities and biblios with the -d flag to recreate the index, e.g. "perl misc/search_tools/rebuild_elastic_search.pl -v -d"
2. Check that authorities only contains authority-specific fields in Elasticsearch e.g. by fetching  http://localhost:9200/koha_dev_authorities/_mappings
3. Reindex both without the -d flag and verify it works, e.g. "perl misc/search_tools/rebuild_elastic_search.pl -v"

Signed-off-by: Björn Nylén <bjorn.nylen@ub.lu.se>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 118f685dbf)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-04-25 15:04:38 +01:00
Tomas Cohen Arazi 72f0283c58
Bug 22688: (QA follow-up) Use search_params as all() does
It looks like selected would be passed all the way down to
Koha::Libraries->search and this would fail all the time.

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

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit a48d1a43df)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-04-25 14:30:47 +01:00
Kyle M Hall d07bbd7c44
Bug 22688: TT plugin for pickup locations code wrong
Test Plan:
1) Apply this patch
2) prove t/db_dependent/Koha/Libraries.t

Signed-off-by: Agustín Moyano <agustinmoyano@theke.io>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit ae18c4bb03)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-04-25 14:30:28 +01:00
Josef Moravec 1eae74da56
Bug 22451: Make Asset plugin use Koha::version instead of version from db
Test plan:
Apply the patch a try to use Koha, css and js files should be used
normally

Signed-off-by: Hayley Mapley <hayleymapley@catalyst.net.nz>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 4d3461a671)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-04-25 14:28:02 +01:00
Nick Clemens 07b8478a19
Bug 22541: Invoice adjustments should show invoice number and include link on ordered.pl and spent.pl
To test:
 1 - Find a vendor in acquisitions
 2 - Click 'receive shipment'
 3 - Create an invoice
 4 - Click 'Finish receiving'
 5 - Add an adjustment that encumbers while open and update adjustments
 6 - Go to acqui-home and click on the ordered total for the fund with the adjustment
 7 - Note the invoice adjustment shows the invoice id and does not link
 8 - Add another invoice and another adjustment, but close the invoice this time
 9 - Go to acqui-home and click on the spent total for the fund with the adjustment
10 - Note the invoice adjustment shows the invoice id and does not link
11 - Apply patch
12 - Visit the spent and ordered pages and note the adjustments show invoicenumber and are links
13 - prove -v t/db_dependent/Koha/Acquisition/Invoice/Adjustments.t

Signed-off-by: Liz Rea <wizzyrea@gmail.com>

Signed-off-by: Liz Rea <wizzyrea@gmail.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 3c2ce5df6f)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-04-15 13:07:34 +01:00
Katrin Fischer a3fe896ebf
Bug 19747: Add link to article requests help page
Newer manuals contain information about article requests.
This patch adds the link to the article request section
in the manual.

To test:
- Activate ArticleRequests system preference
- Go to Circulation > Article requests
- Click on Help
- Verify that you end up in the proper section of the manual

Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 64740260e5)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-04-15 13:04:24 +01:00
Ere Maijala 8f8bcbbc0d
Bug 22295: Make Elasticsearch query builder group multi-term queries
Test plan:

1. Do an advanced search for
Title = new
AND
Title = york
2. Verify that the results match an advanced search for:
Title = new york
3. Verify that tests in t/db_dependent/Koha/SearchEngine/Elasticsearch still pass

Signed-off-by: Michal Denar <black23@gmail.com>

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit e90cb16d79)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-04-15 12:30:04 +01:00
Jonathan Druart ec27c57240
Bug 22390: Never copy items if original order has been created from a subscription
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Tiny change to the code comment: serial => subscription order

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit d6122ff78d)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-04-15 12:25:12 +01:00
Jonathan Druart 290d2376a2
Bug 22390: (bug 15184 follow-up) Use aqorders.subscriptionid instead of biblio.serial
It seems that we made a wrong assumption on bug 15184, see
  commit d658cb6f7e
  Bug 15184: Do copy items for not a serial OR if items are created on ordering

To know if an order has been created from a subscription we should check
$order->subscriptionid instead of the $biblio->serial flag

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit ec78d0cddb)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-04-15 12:24:50 +01:00
Colin Campbell 4a2e885495
Bug 22611: Correction for call to get create_item in EDI.pm
There was a typo in the addition of a call to
effective_create_items causing processing to abort after adding
a single copy.

This patch reverts to using the C4::Context call as used for the
first copy created, the intended call to effective_create_items
is a wrapper around that as the field in the basket is guaranteed
to be null (its not set when we call AddBasket). Being consistent
and explicit in what we call should guard against future changes
in dependencies exposing the logic flaw

Added some comments to make logical flow of code clearer

Signed-off-by: Liz Rea <wizzyrea@gmail.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit f6bc67e851)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-04-15 11:30:26 +01:00
Nick Clemens 1c31c10539
Bug 13895: (follow-up) Add Modern::Perl
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 94206510d7)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-04-01 15:09:31 +01:00
Tomas Cohen Arazi 22d46b5d30
Bug 13895: (QA follow-up) Make the class plural
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit eabcec1d6c)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-04-01 15:02:00 +01:00
Josef Moravec 701aec8443
Bug 13895: Adapt naming according to voted RFC
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit a142369b30)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-04-01 15:02:00 +01:00
Josef Moravec ab1895b1ad
Bug 13895: (follow-up) Fix POST response
Test plan:
prove t/db_dependent/api/v1/chcekouts.t

Signed-off-by: Michal Denar <black23@gmail.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 47ad7afcca)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-04-01 15:02:00 +01:00
Josef Moravec 3736f2f188
Bug 13895: Remove the opac checks in privileged endpoint
Test plan:
prove t/db_dependent/api/v1/checkouts.t

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 4672e6e6c4)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-04-01 15:01:59 +01:00
Josef Moravec 0a1b3d1084
Bug 13895: (follow-up) Adapt checkout endpoint to openapi, update terminology
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 1dfb57164f)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-04-01 15:01:58 +01:00
Tomas Cohen Arazi 34dba63bfe
Bug 13895: (QA follow-up) Adjust OpenAPI definitions for checkouts
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit b63fd774c1)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-04-01 15:01:58 +01:00
Julian Maurice b37bb2bbad
Bug 13895: Add API routes for checkouts retrieval and renewal
GET /checkouts?borrowernumber={borrowernumber}
GET /checkouts/{checkout_id}
PUT /checkouts/{checkout_id}

+ unit tests in t/db_dependent/api/v1/checkouts.t

Test plan:
1. Open a browser tab on Koha staff and log in (to create CGISESSID
   cookie). You should have permission circulate_remaining_permissions.
2. Go to http://yourlibrary/api/v1/checkouts?borrowernumber=XXX (replace
   XXX with a borrowernumber that has checkouts) and check you receive
   correct data
3. Go to http://yourlibrary/api/v1/checkouts/YYY (replace YYY with an
   existing checkout id) and check you receive correct data
4. Send PUT requests to http://yourlibrary/api/v1/checkouts/YYY until
   the maximum number of renewals is reached (you should have a 403
   error)
5. Run unit tests in t/db_dependent/api/v1/checkouts.t

Depends on bugs 16699 and 14868

Signed-off-by: Benjamin Rokseth <benjamin.rokseth@kul.oslo.kommune.no>

Signed-off-by: Lari Taskula <larit@student.uef.fi>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit e3f2e346f8)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-04-01 15:01:55 +01:00
Ere Maijala 9ef8a3e328
Bug 21974: Make Elasticsearch connection settings configurable
Default settings are appended in get_elasticsearch_params so that there's a central place for them. Defaults can be overridden in koha-conf.xml.

Test plan:

1. Verify that searches still work with the patch applied.
2. Verify that search fails after adding the following under <elasticsearch> in koha-conf.xml:
<cxn_pool>Static</cxn_pool>
3. Verify that search fails after adding the following under <elasticsearch> in koha-conf.xml:
<cxn_pool>FOO</cxn_pool>

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 65f35447e9)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-04-01 11:42:17 +01:00
Josef Moravec e180d8f460
Bug 21998: Throw exception on bad pattern
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit ee73d577ed)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-04-01 11:38:13 +01:00
Marcel de Rooy 49d3cd6a7b
Bug 21998: Add pattern parameter in Koha::Token
Allow a pattern too in Koha::Token->generate. Only supported length.
Does not affect CSRF calls. So tiny change without further impact.

Test plan:
Run  t/Token.t

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit b794643bb0)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-04-01 11:38:13 +01:00
Matthias Meusburger 58497e1bc5
Bug 19661: Add and change properties and parameters to conform to the funds RFC.
Also, perform an exact search when searching on the fund owner id.

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 6e98cc4503)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-04-01 11:28:59 +01:00
Matthias Meusburger 70d465be6a
Bug 19661: Use Koha::Acquisition::Funds instead of C4::Budgets
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit b6be402419)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-04-01 11:28:59 +01:00
Matthias Meusburger f4d9c3ae9f
Bug 19661: REST API - Funds Endpoint
This patch adds a new route to the REST api:

/api/v1/acquisitions/funds/

Signed-off-by: David Bourgault <david.bourgault@inlibro.com>

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 717975abeb)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-04-01 11:28:58 +01:00
Nick Clemens 5491709d80
Bug 18736: (follow-up) Fix missing rounding and bad formatting
This patch:
Adds a missing use
Uses 'Koha::Number::Price->round()' instead of 'format()' to ensure numeric
returns
Ensures too big numbers don't crash round()
Uses syspref in 'GetBudgetHierarchy'

To test:
Follow previous test plan
Check values on admin/aqbudgets.pl are affected by syspref
Ensure values throughout acquisitions are correctly calculated/displayed
(even when greater than 1,000)

Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 4ccbae8879)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-03-25 14:29:29 +00:00
Nick Clemens a968e5f59c
Bug 18736: Use rounding syspref to determine correct prices in calculations
To test:
Place an order (no tax just for simplicity)
 listprice/rrp = 16.99
 discount = 42%
 quantity = 8
 estimated calculated at 9.85
 but order total is 78.83, but 8 times 9.85 = 78.80
Apply patches, set OrderPriceRounding syspref to 'Nearest cent'
Not order total is now as expected
View ordered.pl and confirm values are correct
Complete order, view invoice and confirm values
View spent.pl and confirm values
Go through acquisitions module and confirm prices throughout are
correct.

Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 7fe5f8cd2c)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-03-25 14:29:28 +00:00
Tomas Cohen Arazi 14686972ce
Bug 22206: (follow-up) Voted RFC changes
This patch changes expiration_date for end_date as voted when the RFC
was approved.

It also adds a test for the Location header being added correctly when
suspending a hold (SWAGGER3.4.1)

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

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 6ebcc255d3)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-03-19 10:52:23 +00:00
Tomas Cohen Arazi a6ff34be09
Bug 22206: Add routes to suspend/resume holds
This patch introduces:

- POST   /holds/{hold_id}/suspension { "expiration_date": "2019-01-30" }
- DELETE /holds/{hold_id}/suspension

to suspend a hold or resume a suspended hold, respectively.

To test:
- Apply this patches
- Run:
  $ kshell
 k$ prove t/db_dependent/api/v1/holds.t
=> SUCCESS: Tests pass!
- Sign off :-D

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 6067d2d49f)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-03-19 10:51:44 +00:00
Tomas Cohen Arazi 61de5b0fa8
Bug 20006: (follow-up) Plural class name
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 41f394f4ee)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-03-19 10:51:25 +00:00
Tomas Cohen Arazi c0b46677c6
Bug 20006: Adapt /holds to the RFC
This patch makes the /holds endpoint respect the voted RFC. Some
behaviours are changed as well:

- As we voted to introduce a /public namespace for unprivileged access to
endpoints, this endpoint gets the ability for owners and guarantors to
manipulate holds through the API.

- GET /holds now uses the objects->search helper, so it now has
pagination.

To test:
- Apply this patches
- Run:
  $ kshell
 k$ prove t/db_dependent/api/v1/holds.t
=> SUCCESS: Tests pass!
- Sign off :-D

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit fc0d64506d)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-03-19 10:51:25 +00:00
Nick Clemens de1690a442
Bug 21846: Update Schema
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 6757591297)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-03-19 10:43:12 +00:00
Tomas Cohen Arazi 2ab1ec967b
Bug 21846: Add Koha::Tags::Approval(s) and Koha::Tags::Index(es)
In order to avoid writing the tests using plain DBIC which would later
need to be replaced by a Koha::Object-based counterpart, I introduce
this stub classes.

Stub tests are added as well.

To test:
- Apply this patch
- Run:
  $ kshell
 k$ prove t/db_dependent/Koha/Tags.t \
          t/db_dependent/Koha/Tags/Approvals.t \
          t/db_dependent/Koha/Tags/Indexes.t
=> SUCCESS: Tests pass
- Sign off :-D

Signed-off-by: Owen Leonard <oleonard@myacpl.org>

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 6c86de628d)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-03-19 09:57:07 +00:00
Fridolin Somers c2531f6fef
Bug 21560: create Koha::Util::OpenDocument with subroutine for ODS generation
There is nearly the same code in misc/cronjobs/gather_print_notices.pl and reports/guided_reports.pl.
This patch creates a new module with subroutine called by both scripts.

If file path or content is undefined, subroutine will just return undef.
If content is an empty arrayref, empty ods file is still generated.

Unicode encoding is kept outisde because it may not be necessary.

Note that for print notices the first line of message is always the column names so it is extracted only from first message.

Test plan :
Run previous patches test plans and check ODS files are the same.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit ffb40290f8)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-03-19 09:35:18 +00:00
Ere Maijala 7d741a6991
Bug 22246: Fix indexing of large fields with Elasticsearch
Deduplicate multivalued fields and make sure sort fields are not excessively long. Also updates default mappings so that sort fields are not created for item fields where it doesn't make sense.

Test plan:
1. Reset ES mappings in administration
2. Check that sort is '0' for local-classification in biblio mappings.
3. Change sort back to '1' for local-classification for the next steps.
4. Create a record with 20 items, each with a 100 character long call number
5. Check that when indexed, the record in ES does not have duplicates in any of the item fields and local-classification__sort is truncated to 255 characters.

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit bd68e2f75b)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-03-12 08:46:52 +00:00
Ere Maijala 33489f2df1
Bug 22228: Escape lone colons and make sure term is balanced
Escapes unquoted colons that have whitespace on either side. Removed unbalanced quotes.

Test plan:

1. Make sure the test case described in the bug works
2. Make sure tests pass:
  prove t/Koha/SearchEngine/Elasticsearch/QueryBuilder.t

Signed-off-by: Björn Nylén <bjorn.nylen(at)ub.lu.se>

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit dd98584c85)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-03-05 15:08:25 +00:00
David Gustafsson e522e32ea3
Bug 19575: Keep authority-number as alias and fix query
Keep authority-number as alias and change field name
from alias to real field in hard coded Elasticsearch query

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit eeda2afd3a)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-03-05 14:52:07 +00:00
Nick Clemens dc219b6c10
Bug 19575: Fix an search field
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit ef2a03a092)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-03-05 14:51:47 +00:00
root ce578a9aca
Bug 19575: Rebase and fix tests
This patch lower cases the sort by fields to normalize checking them and adjusts
some existing tests to meet the new expectations.

The regex for splitting terms has been moved into a subroutine so that adjustment was made

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit c2061adc8b)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-03-05 14:51:27 +00:00
David Gustafsson 68b129e0c4
Bug 19575: Use canonical field names and resolve aliased fields
Adjust elastic search mappings to more closely match Zebra equivalents
resolving serveral issues with coded Zebra searches in templates and
sorting of search results in UI. Also make field names in search strings
case insensitive to accept case variations in template links and user input.

Sponsored-by: Gothenburg University Library

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Ere Maijala <ere.maijala@helsinki.fi>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 6d53910f0c)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-03-05 14:50:59 +00:00
Kyle M Hall b19b36fb62
Bug 22084: Plugin upgrade method and database plugin version storage will never be triggered for existing installs
If an existing plugin begins using the upgrade() method, it will never actually get triggered because the installation has already occurred and no database plugin version was stored at the time. Without that database version, the upgrade method will never be triggered.

In addition, if the plugin has no upgrade method, the installed version is never updated in the database!

Lastly, when an upgrade succeeds it prints a warning that the upgrade failed.

Test Plan:
1) Install an older version of the Kitchen sink plugin:
   * https://github.com/bywatersolutions/koha-plugin-kitchen-sink/releases/download/v2.1.0/koha-plugin-kitchen-sink-v2.1.0.kpz
2) Delete the "__INSTALLED_VERSION__" key, and the "last_upgraded" key from plugin_data for this plugin, to simulate having installed from an earlier version of Koha
3) Upgrade to the latest version of the Kitchen sink plugin:
   * https://github.com/bywatersolutions/koha-plugin-kitchen-sink/releases/download/v2.1.22/koha-plugin-kitchen-sink-v2.1.22.kpz
4) Note "__INSTALLED_VERSION__" still doesn't exist for the plugin, in the plugin_data table
5) Apply this patch
6) Restart all the things
7) Browse to the Kitchen sink configuration page, this should trigger the upgrade method
8) Note the "__INSTALLED_VERSION__" and "last_upgraded" keys exist in plugin_data for the Kitchen Sink plugin

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

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 8c2e03020d)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-03-01 11:40:45 +00:00
Nick Clemens 4771a7da8e
Bug 22386: Define patron variable when matchign on extended attributes
For all other methods we define a patron object and check the userid,
we just need to define the $patron here

To test:
0 - Apply unit test patch alone
1 - prove t/db_dependent/Koha/Patrons/Import.t
2 - It dies
3 - Apply this patch
4 - repeat tests
5 - It passes!

Signed-off-by: Devlyn Courtier <dcourtier@hccc.edu>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 8a9c82c3ec)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-02-26 09:21:02 +00:00
Tomas Cohen Arazi a133230dac
Bug 16497: (follow-up) Adapt to existing guidelines and RFC
This patch makes the original implementation match what is specified on
the RFC [1].

The controller is updated, and so the tests.

To test:
- Apply this patches:
- Run:
  $ kshell
 k$ prove t/db_dependent/api/v1/libraries.t
=> SUCCESS: Tests pass!

[1] https://wiki.koha-community.org/wiki/Libraries_endpoint_RFC

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

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 0718416ff1)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-02-25 19:01:29 +00:00
Alex Arnaud 06928180a0
Bug 16497: Add POD in Koha/REST/V1/Library.pm
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 311f5f38c3)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-02-25 19:01:08 +00:00
Jiří Kozlovský ce7a283d19
Bug 16497: Add /api/v1/libraries
CRUD for libraries via REST API.

GET    /api/v1/libraries              - List all libraries
GET    /api/v1/libraries/{branchcode} - Get one Library
POST   /api/v1/libraries              - Add new Library
DELETE /api/v1/libraries/{branchcode} - Delete Library

Test plan:
  - apply patch
  - run tests: t/db_dependent/api/v1/libraries.t
  - test API with some API tool or simple curl

e.g.:
curl http://host:port/api/v1/libraries
curl http://host:port/api/v1/libraries/cpl

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Benjamin Rokseth <benjamin.rokseth@kul.oslo.kommune.no>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 96456cadc2)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-02-25 18:59:40 +00:00
Nick Clemens e7201d27af
Bug 22067: Return if no patron passed to can_see_patron_infos
To test:
1 - Find an adult patron
2 - Add a child to their account
3 - Delete the parent from the db
4 - Attempt to edit the child record
5 - Apply patch
6 - Repeat
7 - Note you can edit the child account
8 - Note guarantor id is not a link

Signed-off-by: Maryse Simard <maryse.simard@inlibro.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
No blocker for me, but we are a bit hiding that guarantorid probably should
be a foreign key cleared to NULL at deletion time.

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 5324268e09)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-02-25 13:26:08 +00:00
Nick Clemens eae99688ac
Bug 13515: DBRev 18.11.03.001
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 2c6d39452a)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-02-25 12:26:52 +00:00
Liz Rea 981670c68c
Bug 22282: Fix PDF issue when exporting PDF in French format.
Fixing up QA comments, keeping 1st instance and removing the 2nd.
Original test plan by Christophe Croullebois.

To test :
Without the patch :

1° select in Acquisitions preferences/OrderPdfFormat French 3-page
2° restart plack if needed
3° In acqui/basketgroup.pl select closed tab
4° Click on "Export as PDF" button
5° You should see a blank page saying "Internal Server Error"

With the patch :

Do the same

Signed-off-by: Maryse Simard <maryse.simard@inlibro.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 0844f2c174)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-02-12 12:59:20 +00:00
Tomas Cohen Arazi dcc0478089
Bug 19816: Implement dateonly for rfc3339 format
This patch implements the dateonly option for the rfc3339. This is
described in the OpenAPI 2.0 specification [1]. The required output
format is described on RFC 3339 [2], as 'full-date'.

[1] https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#dataTypeFormat
[2] https://tools.ietf.org/html/rfc3339#section-5.6

To test:
- Apply the regression tests patch
- Run:
 k$ prove t/DateUtils.t
=> FAIL: Tests fail because dateonly is not implemented
- Apply this patch
- Run:
 k$ prove t/DateUtils.t
=> SUCCESS: Tests pass!
- Sign off :-D

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit b2dce05ddf)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-02-11 13:19:38 +00:00
Jonathan Druart 491ad8fc33
Bug 21610: Improve default values for dates
This patch fixes failures on t/db_dependent/Koha/Patrons/Import.t
and keep t/Auth_with_shibboleth.t and t/db_dependent/Koha/Object.t green

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 766eaa0df4)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-02-04 11:13:50 +00:00
Marcel de Rooy 87d59cfb7d
Bug 21610: (follow-up) Default value for dates
We have some dates with DEFAULT CURRENT_TIMESTAMP and some dates with
default and UPDATE clause.

Test plan:
Run Object.t again.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 0ee4e9e14f)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-02-04 11:13:30 +00:00