]> git.koha-community.org Git - koha.git/log
koha.git
2 years agoBug 30447: Unit tests
Michal Urban [Wed, 15 Jun 2022 08:04:37 +0000 (04:04 -0400)]
Bug 30447: Unit tests

Added tests to ensure that Koha::Holds->get_items_that_can_fill returns items with datecancelled and datearrived
Added test for correct number of items for each call of "get_items_that_fill"

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit b4a9edc83f72b9740cd59bd5c842855cd65e19cc)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 2dfd3b05e74d5a7641bf93b021b437427fb8d86b)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30447: Check if transfers arrived or cancelled
Nick Clemens [Mon, 4 Apr 2022 12:21:43 +0000 (12:21 +0000)]
Bug 30447: Check if transfers arrived or cancelled

TO test:
 1 - Find a bib with a single item
 2 - Browse to Circulation->Transfer
 3 - Transfer the item to another branch
 4 - Check the item in at current branch and cancel the transfer on the dialog
 5 - Place a hold on the biblio for a patron at current branch
 6 - Browse to Circulation->Holds to pull
 7 - Item does not show
 8 - Apply patch, restart all
 9 - Browse to Circulation->Holds to pull
10 - Item shows

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 206ba015c4a4b28b022ab9d6481a07ab76461747)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 3f7363f6ca7c0862b9071fe956f97a1401aad50d)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 29922: (follow-up) Remove extra sort
Shi Yao Wang [Mon, 4 Jul 2022 13:18:51 +0000 (09:18 -0400)]
Bug 29922: (follow-up) Remove extra sort

Remove wrong sort in staff advanced search page

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 15918c33701fe2cf3b84e568bb9bd16b328f172f)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit c41dba3eba2ce4baf8ddbd7df087a52c14f07c4d)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 29922: Make get_search_groups return results sorted by title
Shi Yao Wang [Mon, 27 Jun 2022 15:18:05 +0000 (11:18 -0400)]
Bug 29922: Make get_search_groups return results sorted by title

get_search_groups from Koha/Library/Groups.pm returns library groups sorted by title.

Test plan:
1- Go to administration > library groups and create multiple library groups with different names (e.g. AGroup, BGroup, ÄGroup, etc.). Make sure to tick "Use for OPAC search groups" checkbox.
2- Go to advanced search in OPAC.
3- Under "Groups of librairies" , click the select button.
4- Notice that the library groups are not in alphabetical order.
5- Apply the patch.
6- Notice that the library groups are in alphabetical order.
7- Run `prove t/db_dependent/LibraryGroups.t` and all test should pass.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit d86d949551201bfc7745f65fbb8428abac324cb4)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 73d5fd08f5d1c41c2fb332b5c376533dda0e5fd4)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31163: Sort cashups newest to oldest
Martin Renvoize [Fri, 15 Jul 2022 13:58:40 +0000 (14:58 +0100)]
Bug 31163: Sort cashups newest to oldest

The cashup history table was sorting from oldest to newest.. it's
perferable to show the most recent at the top by default.

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit dbbaba3ee08f6551294a00194f03e6d64a409431)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 9739eb738db4d0d58a9b4bd6b16468dc5086b97f)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 29114: Trim whitespace before the barcode
Andrii Veremeienko [Fri, 29 Oct 2021 13:44:19 +0000 (16:44 +0300)]
Bug 29114: Trim whitespace before the barcode

The solution was to add regexp that trims all whitespaces.

How to test:
1. Go to the koha/virtualshelves/shelves.pl;
2. Add new list or edit existing one;
3. Start adding new items;
4. In the "Barcode" field add barcode(s) with whitespaces before them;
5. Observe that it wasn't added as the barcode isn't recognized because of whitespaces;
6. Apply the patch;
7. Repeat step 4;
8. Observe that the item was successfully added;

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit c4ee39bf3aa8f1077ec925630e70e22aa2f35f6a)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 1e54d08e64ac886e8c114a2e7b6c34c554116b07)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 27667: (QA follow-up) Fix singular index and rephrase heading
Katrin Fischer [Fri, 15 Jul 2022 13:23:18 +0000 (13:23 +0000)]
Bug 27667: (QA follow-up) Fix singular index and rephrase heading

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 325d783419fd539ea596bf1f0a1ddc1b3ace66e2)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 65292aaa86650257d6d47dfe134b177480c9f106)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 27667: Display a warning for records missing in Elasticsearch
Fridolin Somers [Wed, 11 May 2022 19:38:23 +0000 (09:38 -1000)]
Bug 27667: Display a warning for records missing in Elasticsearch

On "About Koha" page are displayed the numbers of indexed biblios and authorities with ES.
It could be great if we could have comparison with the number of records in the database to display the number of missing records.
In the "System information" tab with the other "Data problems".

If Searchengine has any issue (index count will be -1), we do not
display missing records.

Test plan :
1) Use Elasticsearch searchengine
2) Rebuild all records : koha-elasticsearch --rebuild -d kohadev
3) Go to "About Koha" page and look at System information tab
=> you see no warning
4) On a biblio record delete the MARCXML in biblio_metadata.metadata
5) Rebuild all records : koha-elasticsearch --rebuild -d kohadev
6) Go to "About Koha" page and look at System information tab
=> you see warning : 1 record(s) missing on a total of 435 in indice koha_kohadev_biblios.
7) On a authority record delete the MARCXML in auth_header.marcxml
8) Rebuild all records : koha-elasticsearch --rebuild -d kohadev
9) Go to "About Koha" page and look at System information tab
=> you see warning : 1 record(s) missing on a total of 1705 in indice koha_kohadev_authorities.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit fee0f29792353d895af9eb6328cd50faef743162)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 21ff48061278549bafbc191d7f0ed4b5ece7918c)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 20439: Sort SMS providers in alphabetical order by DB field
Lucas Gass [Fri, 15 Jul 2022 16:55:53 +0000 (16:55 +0000)]
Bug 20439: Sort SMS providers in alphabetical order by DB field

To test:
1/ Add 'Email' to the 'SMSSendDriver' system preference.
2/ Make sure 'EnhancedMessagingPreferencesOPAC' and 'EnhancedMessagingPreferences' are turned on.
3/ Add some SMS providers (/cgi-bin/koha/admin/sms_providers.pl) with different names.
4/ Notice on memberentry.pl and opac-messaging.pl the SMS providers sort by when they were added, not alphabetically.
5/ Apply patch and restart services.
6/ Look at memberentry.pl and opac-messaging.pl and notice that they SMS providers now sort alphabetically.

Signed-off-by: George Williams <george@nekls.org
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit fd49601079fcf6790364522b41bd038bca3190c6)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 35b8967b84ebac2c0e836474445d0cea197b59c6)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31144: When modifying an order we should not load the vendor default discount
Nick Clemens [Tue, 12 Jul 2022 18:39:06 +0000 (18:39 +0000)]
Bug 31144: When modifying an order we should not load the vendor default discount

After placing an order in a basket with a discount of "0" if you attempt to modify we will load the vendor default discount, this can lead to accidentally applying a discount when modifying other order parts

To test:
0 - Have a vendor with a discount set
1 - Add an order to a basket
2 - While adding, set discount to 0
3 - Add order - prices are calculated ocrrectly
4 - Modify order
5 - Note discount is populated with vendor discount
6 - Cancel
7 - Apply patch
8 - Modify order
9 - Discount remains at 0
10 - Repeat with a vendor with no discount set
11 - Placing order not specifiying discount it remains blank
12 - Modifying order discount remains blank
13 - Modify order and set discount
14 - Confirm it is retained on modifcation

Signed-off-by: Kelly McElligott <kelly@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 73d2066837e5f73e44c89952497d12e6f1d13342)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit f92f6a315d8b89a7da65cb24f85edea2963ecbfe)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 29105: Add effective_itemtype handling to items api
Martin Renvoize [Fri, 24 Sep 2021 11:19:12 +0000 (12:19 +0100)]
Bug 29105: Add effective_itemtype handling to items api

This patch adds effective_item_type_id to the items api.

We overload the to_api method to append the effective_item_type_id field
with that of the effective itemtype code.

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit dc75b5d5cd181d8f8e50e98adb7afc69fc6a8838)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit f00a28b576ed9c2efcff22f43f2261f7d9b6ef12)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 29105: Unit test
Martin Renvoize [Fri, 24 Sep 2021 14:13:55 +0000 (15:13 +0100)]
Bug 29105: Unit test

This patch adds a unit test for the addition of effective_item_type_id
to the items responses.

Test plan
1) Run the unit test prior to applying the second patch and confirm it
   fails
2) Apply the second patch and confirm the unit test now passes

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 6ca908816f2e56acced272f7fc56a0f68df62a43)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 5974ff87c72aa4ae94578a930a2570c02225623b)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30882: (QA follow-up) Fix tests
Tomas Cohen Arazi [Mon, 18 Jul 2022 17:36:28 +0000 (14:36 -0300)]
Bug 30882: (QA follow-up) Fix tests

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit f8f9231562be10c769c57d42b0f3d2e395e5aac3)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit cef190f71c41948acfd63edf21bae3040fa67d83)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30882: Add max_result_window to index config
Fridolin Somers [Thu, 2 Jun 2022 06:24:03 +0000 (20:24 -1000)]
Bug 30882: Add max_result_window to index config

Elasticsearch number of results is by default limited by setting "index.max-result-window", default value is 10000.
https://www.elastic.co/guide/en/elasticsearch/reference/current/index-modules.html#index-max-result-window

We use this setting:
https://git.koha-community.org/Koha-community/Koha/src/commit/44d6528b566e5c16eba9b15f8aa24667293766c3/Koha/SearchEngine/Elasticsearch/Search.pm#L411

I propose we add this setting in index config.

Test plan:
1) Use Elasticsearch
2) Apply patch and flush memcached
3) Rebuild indexes: misc/search_tools/rebuild_elasticsearch.pl -v -b -d
4) Check the settings of index (when using koha-testing-docker*):
   curl 'es:9200/koha_kohadev_biblios/_settings?pretty&filter_path=**.max_result_window'
5) You should see:
   "max_result_window" : "1000000"

* You also need to add this setting to the es section in koha-testing-docker's
docker-compose.yml (after the networks configuration):
     ports:
         - "9200:9300"

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 90ef5ec8c81b6010e6d7eafc6498bc2e6a9ca8f5)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit b041f75f7be1b6e2dfdf232d8ee3e776f77277f7)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 14680: Always subtract discount from price to calculate estimated cost
Nick Clemens [Tue, 12 Jul 2022 18:10:54 +0000 (18:10 +0000)]
Bug 14680: Always subtract discount from price to calculate estimated cost

This patch simply removes a discrepancty where when a discount is provided on the order form
we add the discount to the price, and when it comes form the vendor we subtract the discount.

Discounts should always descrease the estimated cost

To test:
 0 - Have a vendor with a discount of 10% specified
 1 - Export a record from your Koha
 2 - Stage the record for import and match on biblionumber
 3 - Add to a basket in acq from the staged file
 4 - Select the title, and set order price to $10 and do not fill the discount field
 5 - Add the order - note $10 RRP and $9 actual/budgeted cost
 6 - Repeat 2&3
 7 - Select the tile, set price $10 and discount 50%
 8 - Add the order - note $20 RRP and $10 actual/budgeted cost! FAIL
 9 - Apply patch, restart all
10 - Repeat 2-7
11 - Add the order, note $10 RRP and $5 actual.budgeted cost

Signed-off-by: Kelly McElligott <kelly@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 7c734c6903a823eeb58be9ab1c4af251def776b7)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 96eed0f5e00657808e506ba6d5e0a98a3529bf95)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31036: (QA follow-up) Add a warning to the system preference
Martin Renvoize [Fri, 15 Jul 2022 14:20:03 +0000 (15:20 +0100)]
Bug 31036: (QA follow-up) Add a warning to the system preference

As suggested by Katrin, adding a warning to the system preference that
this has an effect on SIP configurations that needs to be understood.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit f154fb0372d2e24318cad75bb65b993d47da8290)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 604da9beaaaaa90c875dfcc05261f45793b3fb7c)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31036: Treat SIP00 that same as CASH
Martin Renvoize [Fri, 24 Jun 2022 08:20:52 +0000 (09:20 +0100)]
Bug 31036: Treat SIP00 that same as CASH

SIP00 is the code for CASH transactions that have taken place on a SIP
client.  Cash management treats CASH type transactions as a special case
for banking and register requirements. This patch brings SIP00 in line
with the CASH handling code of cash management.

Test plan
1) Enable cash management with 'EnablePointOfSale'
2) Enable cash registers with 'UseCashRegisters'
3) Add a cash register via 'Administration > Cash registers'
4) Make some payments against the ash register in the staff client
5) Attempt to make a payment via a SIP client without having associated
   a cash register to the SIP account config
5a) This should now fail
6) Attach the cash register to the SIP account used above
6a) Payment should now work again on SIP transactions
7) Look at the cash register details page for the cash register
7a) 'Bankale' should now include cash from both SIP and Staff client
sales

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Sally <sally.healey@cheshiresharedservices.gov.uk>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 9d8be887d08f523171faa30b35ff86798c4b0115)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit c3c889e7f4b440bcbac8ac0a3eb77e5cfe4c322a)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31137: (QA follow-up) Also fix new template page
Nick Clemens [Fri, 15 Jul 2022 12:10:43 +0000 (12:10 +0000)]
Bug 31137: (QA follow-up) Also fix new template page

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 7bfcb8288b9eca65ee2b3e36501242dad3331102)
(cherry picked from commit 9456af97bed946d2ca7d13fa26b31847256a9eb5)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31137: Only display label printer profiles when editing labels
Adolfo Rodríguez [Tue, 12 Jul 2022 07:20:45 +0000 (09:20 +0200)]
Bug 31137: Only display label printer profiles when editing labels

This patch filters the printer profiles in the label edition template so you may only choose Printer Profiles created for Labels.

To test
1 Create a new Printer Profile in Patron Cards
2 Edit a Label template, pick the Printer Profile you just created.
3 Save the Label Template. You get an error 500
4 apply patch, restart services
5 Edit a Label template and check that you can't pick the Printer Profile you created in Patron Cards

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit e7d0b2ab47f1770ed11d3edc5ece8a4cf6753829)
(cherry picked from commit 7f2b99cbfdda752f406f49beb4350480a658f54a)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31129: Fix debarment count on circulation page
Martin Renvoize [Mon, 4 Jul 2022 12:14:45 +0000 (13:14 +0100)]
Bug 31129: Fix debarment count on circulation page

This patch was split from bug 23681 where QA identified the issue.

This patch fixes the debarment count displayed on the circulation page
tabs

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit b6afcdbf48d9daacb24a3f0337a5cab5c7dbded7)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 87d7ded49074d997322a45ad1e1fd3dbc6e1338b)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31139: Fix basic_workflow.t
Jonathan Druart [Tue, 12 Jul 2022 09:30:55 +0000 (11:30 +0200)]
Bug 31139: Fix basic_workflow.t

Error while executing command: element not interactable: Element <input id="tag_952_subfield_w_810691" class="input_marceditor items.replacementpricedate noEnterSubmit flatpickr-input" name="items.replacementpricedate" type="hidden"> is not reachable by keyboard at /usr/share/perl5/Selenium/Remote/Driver.pm line 411.

Not sure if it's coming from bug 30717 or not. git bisect told me it was the culprit but we released 22.05 and it seems that we got basic_workflow.t green since then.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 083769164b9af4ab27db7dd16f60af960b3dbf28)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 0a0a459a0da7bc5cf72960c92f1f8569a8328e6c)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31145: Supply defaults for vendors and funds
Nick Clemens [Tue, 12 Jul 2022 18:52:21 +0000 (18:52 +0000)]
Bug 31145: Supply defaults for vendors and funds

This is a convenience bug - when koha testing docker creates sample vendors and budgets there are small issues:

1 - The vendor website gets a random string - you can't edit the vendor without removing this
2 - The funds have random values for statistical categories, and you get empty dropdowns when choosing a fund in ordering

To test:
1 - Apply patch
2 - Restart all
3 - Edit 'My vendor'
4 - note webstie is empty and you can save without changing anythign
5 - Add order to basket for my vendor
6 - Confirm that when selecting a fund statistic 1 and statistic 2 remain as text input fields

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit b306cb47ce4e578ceeb7364b9fef0b57767a052e)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 9d251e587cf05900a9527e28793f664c994c43c4)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 25669: (follow-up) Minor fixes
Kevin Carnes [Wed, 25 May 2022 09:19:21 +0000 (09:19 +0000)]
Bug 25669: (follow-up) Minor fixes

Bulk doesn't support include_type_name, update requirement to
Search::Elasticseach@6.80, and remove data type name from tests.

Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit e926de5e8f359acf6b8beff541fe13ce2a5ac49e)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 22c9ea9737d614a26b06092cda9708e27013e494)
Rebased-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 25669: Use include_type_name parameter in ES calls
Nick Clemens [Mon, 28 Mar 2022 12:00:25 +0000 (12:00 +0000)]
Bug 25669: Use include_type_name parameter in ES calls

This patch includes the parameter:
include_type_name
on our ES calls

It removes the deprecation warning we are seeing, and should allow using ES7 with no other chnages.

For ES8 we will need to remove the hardcoded type,

I would suggest a second patch, with a new syspref "ElasticsearchLegacyType" set to 'True' by default.
Description can explain that this must be set to false, and data reindexed after upgrading to ES7 and before
upgrading to ES8 - then we can drop this pref when we drop ES7 support

When we drop ES6 support the pref can be set default true for upgrades, default 'false' for new installs

Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 150a4b03f337f6a58869c67d3681caa64441d53a)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 99757c2d975d224ea191622116e6eb839fff70c1)
Rebased-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31141: Remove 'select_column' from waiting_holds.inc
Martin Renvoize [Tue, 12 Jul 2022 10:22:36 +0000 (11:22 +0100)]
Bug 31141: Remove 'select_column' from waiting_holds.inc

In the only place we use the waiting_holds include, we were hard coded
to always pass the 'select_column' variable as true.

We can simply and clarify the logic by just removing this superflous
variable.

Test plan
1. Confirm that the waiting holds tables continue to display as expected

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit f58099a2440a8482b09ae14df89c1cd6eb43c5d6)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 3f0a70a271bda696b9e39b162faca1c504a980b8)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31054: Manual importing for EDIFACT invoices fails with a 500 error page
Kyle Hall [Mon, 27 Jun 2022 12:13:39 +0000 (08:13 -0400)]
Bug 31054: Manual importing for EDIFACT invoices fails with a 500 error page

Error in plack log is: Can't locate object method "new" via package
"Koha::Plugin::Com::ByWaterSolutions::MyEdifactPlugin" (perhaps you
forgot to load "Koha::Plugin::Com::ByWaterSolutions::MyEdifactPlugin"?)
at /usr/share/koha/lib/Koha/EDI.pm line 219.

Test Plan:
1) Set EdifactInvoiceImport to "Don't"
2) Configure an EDI vendor to use an EDIFACT plugin
3) Attempt to import an invoice file
4) You will be shown an error page
5) Apply this patch
6) Restart all the things!
7) Attempt to import another invoice file
8) It works!

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 181b0c16feeb0645851aa586c59c1fd5de8e6053)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 20a9c16e6b505d081f6875cce66fd2fb6ee66bbc)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31039: (follow-up) Wrap jQuery in $(document).ready()
Owen Leonard [Mon, 11 Jul 2022 14:03:44 +0000 (15:03 +0100)]
Bug 31039: (follow-up) Wrap jQuery in $(document).ready()

cashup_modal.js consists only of jQuery code, so the whole thing should
be contained in a $(document).ready() function. This may or may not be
contributing to the behavior this bug is trying to fix.

Please note that this patch contains whitespace changes, so diff
accordingly.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 743731949db14eac858c6cdced4bb471d1da879b)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit b5d2c7d621749eba2faabeb72d3baee993fd0a2f)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31039: Remove duplicate modal printing JS
Martin Renvoize [Fri, 24 Jun 2022 12:10:46 +0000 (13:10 +0100)]
Bug 31039: Remove duplicate modal printing JS

This patch removes the erroneos duplication of the modal printing js.

Test plan
1) Create some transactions and perform a cashup.
2) Open the cashup summary modal
3) Click 'Print'
4) Cancel the print dialogue
5) Note that the dialogue re-appears
6) Apply the patch
7) Repeat and note the dialogue closes first time now.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 5e6f88e62fe844eab78e23945e7c06dbd65b8772)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 57c375999a27e534226abd36cf4eb00ac06276bb)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 29333: (QA follow-up) POD consistency
Tomas Cohen Arazi [Fri, 8 Jul 2022 18:46:08 +0000 (15:46 -0300)]
Bug 29333: (QA follow-up) POD consistency

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 04b6ed16c6c5af471c985f2b9844dc416f5a41d0)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 7e58a301b555f1a0d459ed05a0f5d1938d9ceded)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 29333: Fix encoding of imported UNIMARC authorities
Julian Maurice [Wed, 27 Oct 2021 10:00:23 +0000 (12:00 +0200)]
Bug 29333: Fix encoding of imported UNIMARC authorities

MARC::Record and MARC::File::* modules sometimes use the position 09 of
the leader to detect encoding. A blank character means 'MARC-8' while an
'a' means 'UTF-8'.

In a UNIMARC authority this position is used to store the authority type
(see https://www.transition-bibliographique.fr/wp-content/uploads/2021/02/AIntroLabel-2004.pdf [FR]).
In this case, 'a' means 'Personal Name'.

The result is that the import will succeed for a Personal Name
authority, but it will fail for all other authority types.

Steps to reproduce:
0. Be sure to have a Koha UNIMARC instance.
1. Download the MARCXML for "Honoré de Balzac"
   curl -o balzac.marcxml https://www.idref.fr/02670305X.xml
2. Verify that it's encoded in UTF-8
   file balzac.marcxml
   (should output "balzac.marcxml: XML 1.0 document, UTF-8 Unicode
   text")
3. Go to Tools » Stage MARC for import and import balzac.marcxml with
   the following settings:
   Record type: Authority
   Character encoding: UTF-8
   Format: MARCXML
   Do not touch the other settings
4. Once imported, go to the staged MARC management tool and find your
   batch. Click on the authority title "Balzac Honoré de 1799-1850" to
   show the MARC inside a modal window. There should be no encoding
   issue.
5. Write down the imported record id (the number in column '#') and go
   to the MARC authority editor. Replace all URL parameters by
   'breedingid=THE_ID_YOU_WROTE_DOWN'
   The URL should look like this:
   /cgi-bin/koha/authorities/authorities.pl?breedingid=198
   You should see no encoding issues. Do not save the record.
6. Import the batch into the catalog. Verify that the authority record
   has no encoding issue.
7. Now download the MARCXML for "Athènes (Grèce)"
   curl -o athènes.marcxml https://www.idref.fr/027290530.xml
8. Repeat steps 2 to 6 using athènes.marcxml file. At steps 4 and 5 you
   should see encoding issues and that the position 9 of the leader was
   rewritten from 'c' to 'a'. Strangely, importing this batch fix the
   encoding issue, but we still lose the information in position 09 of
   the leader

This patch makes use of the MARCXML representation of the record instead
of the ISO2709 representation, because, unlike
MARC::Record::new_from_usmarc, MARC::Record::new_from_xml allows us to
pass directly the encoding and the format, which prevents data to be
double encoded when position 09 of the leader is different that 'a'

Test plan:
- Follow the "steps to reproduce" above and verify that you have no
  encoding issues.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 01d78e1ec71c1c227738215c5b5d4aaef847daaf)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 76e980bb1ab21161b25e7458539425c36d35be2d)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 29051: Update svc api to allow seen renewals
Martin Renvoize [Wed, 11 May 2022 15:21:48 +0000 (16:21 +0100)]
Bug 29051: Update svc api to allow seen renewals

This patch updates the svc/renew api endpoint to allow seen renewals
when appropriate

Signed-off-by: Caroline <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit e3311ebffc2b2965239674501cf56818c9e90cec)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit e9153d7f1566981e14741a8ea50f9da4da483196)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 29051: Enable seen renewal in the staff client
Martin Renvoize [Wed, 11 May 2022 15:13:23 +0000 (16:13 +0100)]
Bug 29051: Enable seen renewal in the staff client

This patch updates the javascript for the checkouts table to add the
checkbox back in for the case where too_unseen is the error returned by
CanBookBeRenewed, allowing such issues to be renewed.

Signed-off-by: Caroline <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 91a67e3c8acd4d0cad73e01b10569c712b6b4c01)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 36e39cab65fbb6fd36754dcd20839814e5386d9b)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoUpdate release notes for 21.11.11 release v21.11.11
Arthur Suzuki [Mon, 22 Aug 2022 09:02:52 +0000 (11:02 +0200)]
Update release notes for 21.11.11 release

Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoIncrement version for 21.11.11 release
Arthur Suzuki [Mon, 22 Aug 2022 08:45:57 +0000 (10:45 +0200)]
Increment version for 21.11.11 release

Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoDBRev 21.11.11.000
Arthur Suzuki [Mon, 22 Aug 2022 08:45:11 +0000 (10:45 +0200)]
DBRev 21.11.11.000

Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoFix translations for Koha 21.11.11
Arthur Suzuki [Mon, 22 Aug 2022 08:31:35 +0000 (10:31 +0200)]
Fix translations for Koha 21.11.11

Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoTranslation updates for Koha 21.11.11
Koha translators [Mon, 22 Aug 2022 00:11:13 +0000 (21:11 -0300)]
Translation updates for Koha 21.11.11

2 years agoBug 31220: (QA follow-up) Add missing filter
Tomas Cohen Arazi [Tue, 2 Aug 2022 18:04:03 +0000 (15:04 -0300)]
Bug 31220: (QA follow-up) Add missing filter

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit e7a8aab055affcb6c59d76bd55454d333759f599)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit e139354d835252b38ab357ceb6457cfba3a97594)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31220: Pass label batch and ids to label-create-pdf
Nick Clemens [Fri, 22 Jul 2022 11:36:06 +0000 (11:36 +0000)]
Bug 31220: Pass label batch and ids to label-create-pdf

This patch fixes a malformed link to print selected labels
and fix error:
Can't locate object method "get_attr" via package "-2" (perhaps you forgot to load "-2"?) at /usr/share/koha/intranet/cgi-bin/labels/label-create-pdf.pl line 126.

To test:
1 - Create a new label batch with some items
2 - Select 1 or more
3 - Export selected labels
4 - Download as PDF
5 - It works!

Signed-off-by: Sally <sally.healey@cheshiresharedservices.gov.uk>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 470fb6b6d8ab06a3750b147721fb139ced45a532)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 72c052c7f32b0c647c2b5e00b6a58a11ae6514e2)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30667: Holds reminder cronjob (holds_reminder.pl) never uses default letter template
Kyle Hall [Tue, 3 May 2022 10:53:43 +0000 (06:53 -0400)]
Bug 30667: Holds reminder cronjob (holds_reminder.pl) never uses default letter template

Bug 28514 changed the way holds_reminder.pl searches for templates, using a direct search for letters,
but should be using find_effective_template instead. Now, if a branch specific template does not exist,
it will skip that branch.

Test Plan:
1) Ensure you only have the default HOLD_REMINDER template
2) Become the koha user using koha-shell
3) Run misc/cronjobs/holds/holds_reminder.pl --days 7 -v
4) Note that the script skips every branch
5) Apply this patch
6) Run the command in step 3 again
7) Note the script doesn't skip over any branches

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
(cherry picked from commit a7e7939748ef9c3f8df8aefb20f5ca9169d4575d)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31071: Compiled CSS
Lucas Gass [Mon, 15 Aug 2022 15:23:44 +0000 (15:23 +0000)]
Bug 31071: Compiled CSS

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 43bc5651f4516eadcbc07eb7ea9a6399908d0b26)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31071: Regression: date due removed from staff search results
Owen Leonard [Tue, 12 Jul 2022 14:45:13 +0000 (14:45 +0000)]
Bug 31071: Regression: date due removed from staff search results

This patch corrects a regression caused by Bug 28321, which
inadvertently removed the date due from output of item information in
each search result.

To test, apply the patch and perform a catalog search which will return
some results which are checked out and some which aren't. Confirm that
the checked out items show the date due correctly.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Emmanuel Bétemps <e.betemps@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 25d31a7581404405fe32b9da5a79c6044891981a)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 5780a82e94f5cda99d2e25911229a4d419da139e)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30911: Datatables error on course-details.pl after adding a bib-level course...
Owen Leonard [Fri, 8 Jul 2022 13:03:01 +0000 (13:03 +0000)]
Bug 30911: Datatables error on course-details.pl after adding a bib-level course reserve

This patch removes the colspan from biblio-level course reserves rows in
favor of adding a style to the message's container allowing it to
overflow across table cells.

To test, apply the patch and go to course reserves.

1. If necessary, add a new course.
2. View the details of the course and add a reserve using the
   biblionumber option to add the reserve at the bibliographic level.
3. Add a notes if you want, then click "Save."
4. Return to the course detail view.
5. In the table of reserves your biblio-level reserve should have a
   message starting in the "Barcode" column and overflowing across other
   item information columns, "Item information is not available for
   record-level course reserve."
6. Try adding multiple item-level and biblio-level reserves to the same
   course to confirm that the information displays well in those cases.

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 91f50ee70fc645328d0c6dfda86c8886af49cd02)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 8e879be095ad6ec7ec166413cc2628751208ecac)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 29951: Fix EXPORT for C4::ClassS*Routine modules
Jonathan Druart [Wed, 6 Jul 2022 14:23:25 +0000 (16:23 +0200)]
Bug 29951: Fix EXPORT for C4::ClassS*Routine modules

Can't locate object method "subclasses" via package "C4::ClassSplitRoutine" at /kohadevbox/koha/C4/ClassSplitRoutine.pm line 53

Certainly from bug 17600.

Test plan:
Home -> Administration -> Classification sources -> New splitting rule

And create classification sources and filing rules.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 69513449dbfd08f53d6c1b78792c87478481437c)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 7f52fa4a7344d88c0d580f282cf7dd062e3c8cc7)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31117: New message for cloning standard rules
Florian Bontemps [Thu, 7 Jul 2022 15:24:10 +0000 (15:24 +0000)]
Bug 31117: New message for cloning standard rules

This commit adds a different message when cloning circulation and fine rules if you use the Standard rules for all libraries option.

Test plan :
1. Go to the Circulation and fine rules page in the Admin tab.
2. Check that the 'Select a library' menu is on 'Standard rules for all libraries'.
3. Check that you also have some random rules to clone, or create some.
4. Clone these rules to the library of your choice.
5. Confirm that the message 'Clone circulation and fine rules from "" to (library of your choice)' appears.
6. Now clone rules from a specific library to another one, and repeat steps 3-4.
7. Confirm that this time, the message will displays both libraries properly.
8. Apply patch.
9. Repeat steps 2 to 4 and 6 to 7. Confirm that this time, the message in the first case will be 'Cloning circulation and fine rules to "(library of your choice)"'.
10. Kindly sign off.

Signed-off-by: Emmanuel Bétemps <e.betemps@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit c483afa2d0ed1b70e31abbec6d57f7b5bae93a58)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 98158c5795e08689d717c59435a9e10d8e29a4fe)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 27996: Updates the Circulation report overdues page to display date in red.
Karen Turner [Thu, 7 Jul 2022 23:37:34 +0000 (23:37 +0000)]
Bug 27996: Updates the Circulation report overdues page to display date in red.

Test:
1. Login to the staff interface
2. First you need to create an overdue item.
  a. Find the barcode for an item
  b. Goto My checkouts from the drop down by your login
  c. Enter the barcode and use checkout settings to select a date in the
  past.
2. Go to Tools
3. Go to Circulation
4. Go to Go to Overdues
5. In the table the due date is in black
6. Apply the patch
7. Refresh the page and the due date should be in red.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 21cf6228bed1956ea975c9ba7bb984c58607ecc7)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 8a97c30b83786d80737bd5451310e4126c122f79)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30767: Changes word "issue" to "item"
Logan Symons [Thu, 7 Jul 2022 22:58:40 +0000 (22:58 +0000)]
Bug 30767: Changes word "issue" to "item"

Please test and confirm terminology is now correct.
Was unable to test without steps to reproduce.

Sponsored-by: Catalyst IT
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit cb35d1e92c1237b2e58f840288e8f1a3ddc35e54)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 11079acae73fa10c18d93e6f81752d8033567903)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30766: extra space in Cannot cancel receipt string
Danyon Sewell [Thu, 7 Jul 2022 22:45:46 +0000 (22:45 +0000)]
Bug 30766: extra space in Cannot cancel receipt string

TEST PLAN:

1. Trigger the Cannot cancel receipt error in invoices OR look at the
amended string to see the additional space has been removed.

Sponsored by Catalyst IT

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 2702fc533f3f7ee55be4decbdf5c11beb1a6823a)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 472ec420fbb6b19a80909be67ca2cf21a764d638)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30763: fixes spelling of 'proceeds'
Evan Giles [Thu, 7 Jul 2022 22:19:37 +0000 (22:19 +0000)]
Bug 30763: fixes spelling of 'proceeds'

Test plan:
1. Login to the staff interface
2. go to tools
3. go to label creator
4. Click New -> Layout
5. Click the 'Choose layout type' dropdown
6. Notice the 'barcode proceeds biblio data' and 'biblio data proceeds
barcode'.  These are typos
7. Apply the patch and refresh the page
8 repeat step 5. Confirm 'proceeds' now correctly says 'precedes'

Sponsored by: Catalyst IT

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 8855da2265b5674b8e5ab0d42b95db9f343f61e3)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 762d5f6454498545db3043d13cf24b95d3541da6)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30770: (QA follow-up) Fixing the last occurrence of reserve in returns.tt
Katrin Fischer [Fri, 8 Jul 2022 08:31:42 +0000 (08:31 +0000)]
Bug 30770: (QA follow-up) Fixing the last occurrence of reserve in returns.tt

Reserve -> Hold

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 5bea1583d6b39c5d1a2bc82d1bfb1b6dedaff950)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit a7ba89aaf71d820c2a131b5a1c1e2a32354a8fe8)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30770: Fixed terminology 'reserve' -> 'hold'
Tosca Waerea [Thu, 7 Jul 2022 23:07:21 +0000 (23:07 +0000)]
Bug 30770: Fixed terminology 'reserve' -> 'hold'

Test plan:
1. Look at koha-tmpl/intranet-tmpl/prog/en/modules/circ/returns.tt
2. Note that it says 'Lost reserve'
3. Apply patch
4. Note that it says 'Lost hold'

Note:
I was not able to trigger the behaviour to see the text in question

Sponsored-by: Catalyst IT
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 42a1aba19d178825aa63290198695bd7f5a7ea0b)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit f67a5f60b9d3a7cbda577a62451d8bbc60993323)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30764: replace "Cancelled reserve" with "Cancelled hold"
Filip Vujičić [Thu, 7 Jul 2022 22:48:42 +0000 (22:48 +0000)]
Bug 30764: replace "Cancelled reserve" with "Cancelled hold"

Test plan:
1. Inspect `koha-tmpl/intranet-tmpl/prog/en/modules/circ/returns.tt`, notice that on line 136 it says "Cancelled reserve"
2. Apply patch
3. Inspect the same line again and notice it now correctly says "Cancelled hold"
4. ???
5. Profit!

Sponsored-by: Catalyst IT
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit b688fd97499682a77ca899011f0667c148515a04)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit cd3e1357e892a6ca5c662780eb0aee29a75c2621)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30773: (follow-up) Remove spaces between brackets
David Nind [Fri, 8 Jul 2022 06:18:26 +0000 (06:18 +0000)]
Bug 30773: (follow-up) Remove spaces between brackets

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit ec773f57197636fdea871ec9192de38adc4da390)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 1a0b489346adf32cfa3b348d6dcaef2ce2ec7634)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30773: Standardize spelling i-tive / Itiva
krisw [Thu, 7 Jul 2022 23:53:15 +0000 (23:53 +0000)]
Bug 30773: Standardize spelling i-tive / Itiva

In the Koha staff interface go to administration.
Go to TalkingTechItivaPhoneNotification. Enable this preference. Save.
Go to Tools > Overdue notice/status triggers
Check that ‘Phone (i-tiva)’ is an option for notice types.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 0a40c7f58e0045c04672a85347bc90359cf48f53)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 8d359cad37117af26d14d32dcf6972172be24bc2)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31038: Fix price formating in cashup summary
Martin Renvoize [Fri, 24 Jun 2022 10:36:32 +0000 (11:36 +0100)]
Bug 31038: Fix price formating in cashup summary

This patch uses the existing format_price JS include to format prices in
the cashup summary modal

Test plan
1) Create some transactions and a cashup
2) View the cashup summary modal and confirm amounts are not nicely
   formatted
3) Apply patch
4) Confirm amounts in cashup summary modals are now nicely formatted

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit f46b636d03aa6e35c97f8c00cc7d6f0c6f4dbc94)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 4debd73a216faed8c710c10fea4f2f9b1bf43acc)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 29050: (follow-up) Replace & with and
David Nind [Fri, 8 Jul 2022 11:10:34 +0000 (11:10 +0000)]
Bug 29050: (follow-up) Replace & with and

See the terminology list https://wiki.koha-community.org/wiki/Terminology

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 4a9d5dd9a1cc34a9445221b1feb7d5f91ae2efb6)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 37bdef736d00edebf7e7013a8ca500a010a52f46)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 29050: Added a punctuation between renewal messages
Nisha Dahya [Thu, 7 Jul 2022 23:31:38 +0000 (23:31 +0000)]
Bug 29050: Added a punctuation between renewal messages

Test plan:

1. First step is to go to administration > then system preferences
2. Set unseenrenewal to "allow"
3. Go to administatrion > circulation and fines rule
4. Set unseenrenewals count to any number
5. Check out an item to a patron and go to the checkouts tab
6. Renew the item
7. Notice that the renewal messages have no seperation
8. Apply the patch
9. Notice there is now a "&" in the spacing between renewal messages

Sponsored-by: Catalyst IT
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 36357ad045116f4be63ea50eff9807f1c262aaef)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit f983ad9b2265826718902ed468c159bc73fd8e36)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31122: Terminology - Replace occurences of 'Notices & slips' with 'Notices and...
David Nind [Fri, 8 Jul 2022 12:25:01 +0000 (12:25 +0000)]
Bug 31122: Terminology - Replace occurences of 'Notices & slips' with 'Notices and slips'

Replace occurences of 'Notices & slips' with 'Notices and slips'
(replacing '&' and '&amp' with 'and'), as per the terminology
guidelines.

See the terminology list:
https://wiki.koha-community.org/wiki/Terminology

Test plan:
1. Find occurrences of 'Notices & slips':
   - git grep 'Notices &amp; slips' -- :^misc/translator/po
   - git grep 'Notices & slips'
2. Review places in the staff interface where 'Messages & slips' is
   displayed:
   - Tools home page
   - Tools > Notices & slips: page title and breadcrumb
   - Other breadcrumbs:
     . Tools > Notices & slips > New notice > [select any module]
     . Tools > Notices & slips > [select Edit for any notice]
     . Tools > Notices & slips > [select Delete for any notice]
3. Review other occurences:
   . The cron job description for misc/cronjobs/holds/holds_reminder.pl:
     misc/cronjobs/holds/holds_reminder.pl -man (scroll down to the
     description)
   . The TalkingTech README file:
     vi misc/cronjobs/thirdparty/TalkingTech.README
4. Apply the patch.
5. Re-run the grep queries from step 1 - no occurences are now found.
6. Review places where 'Notices & slips' was found in steps 2 and 3 -
   these should all be replaced with 'Notices and slips' and should
   read correctly.
7. Sign off!

Alernative: review the diff for the patch and check that occurences of
'&amp' and '&' are replaced with 'and' and the updated text reads
correctly.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit d614a0199b235405c2b341c1ba6ef86f2ca4b128)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit f7d26a8dd89cb06110cd3dfba5ee75d4bd7fcbe6)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31067: Fixing missing permission check
Florian Bontemps [Wed, 29 Jun 2022 15:18:17 +0000 (15:18 +0000)]
Bug 31067: Fixing missing permission check

This patch just fixes a missing permission on the intranet main page. Currently, the Additional Content modules allows people to edit, modify or create new additional content just by checking if they have any tool permission at all, and not the right one.

To test:
1 - From the staff client, create a news article for the intranet.
2 - Create (or use) an additional staff patron, giving them the necessary permissions to access the intranet, but no tool permission.
3 - Using another browser (or incognito mode), log on the intranet page with your new staff account, you should be able to see the news content, but not edit or delete it. That's the expected behavior.
4 - From your main admin account, give your test account the edit_additional_contents permission.
5 - Your test account should now be able to edit/delete the news content. This is also expected behavior.
6 - Using the main account again, remove this time the edit_additional_contents but add any other subtool permission (edit_calendar is a good one for instance)
7 - Repeat step 5 and confirm that your test account can still edit or delete the news content. This shouldn't happen.
8 - Apply patch
9 - Repeat steps 4-6, and confirm that your test account can now only edit or delete news content if they have the edit_additional_contents permission enabled.

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit e3faa4d66ba281125be437a971d1549ba8179ec3)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 692c054a736c8eb6808a1017f0a9f565677a0860)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31001: Fix "CGI::param called in list context" warning in basket.pl
Petro Vashchuk [Tue, 21 Jun 2022 13:02:51 +0000 (16:02 +0300)]
Bug 31001: Fix "CGI::param called in list context" warning in basket.pl

CGI param basketno should be explicitly scalar,
or else error log gets flooded with this warning:

AH01215: CGI::param called in list context from
/home/vagrant/kohaclone/acqui/basket.pl line 175, this can lead to
vulnerabilities. See the warning in "Fetching the value or values of a
single named parameter" at /usr/share/perl5/CGI.pm line 412.

This patch fixes it by working with it in a scalar context.
The functionality still remains the same but warning doesn't flood
error log.

To reproduce:
1. Head over to the acquisitions page.
2. Pick existing vendor with email contact info or create a new one.
3. Create a new basket or use existing one, and if it doesn't have
any orders, add a new order to it.
4. Use the "E-mail order" button to send order.
5. Check the error log and find the upper mentioned warning.
(Note: if you're going to test this more than once, you might need
to restart your Plack in order for this warning to get added to your
log file again, reasons of that is that the authors of CGI.pm decided
to "warn only once")
6. Apply the patch.
7. Use the "E-mail order" button again, ensure that the same warning
doesn't get added to the log file again.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 096fd4acfa360e450e9d6a1a37a96f7eb8d848c8)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 718841a758b996b6e5499bd5b473369362d7422b)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30976: Display biblio's cover images first
Jonathan Druart [Thu, 16 Jun 2022 10:33:31 +0000 (12:33 +0200)]
Bug 30976: Display biblio's cover images first

If one add cover images at item's level, then biblio level, the cover images
of the items are displayed first on the main "cover slider" at the top of the page.
We should displayed biblio cover images first, then the ones for the items.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 6c55159eb6a91891f7c1becd49ec927ee9a3a36a)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 9938f61403dc6cd5abfd906eaf013bf7b53d9e5b)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30903: (follow-up) Fix error message class
Fridolin Somers [Mon, 20 Jun 2022 21:23:32 +0000 (11:23 -1000)]
Bug 30903: (follow-up) Fix error message class

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit c698b3be5a4777b75c502eca6ee18b80110872c0)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit d3ccef678a9cfba795401ec1ef55fa65df0b6404)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30903: Fix UI glitch on the quotes upload view
Jonathan Druart [Tue, 7 Jun 2022 13:57:35 +0000 (15:57 +0200)]
Bug 30903: Fix UI glitch on the quotes upload view

Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit f36dbf09f635e42066d43799a79e634c15465a0e)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit b3a277daec5385d8af56e8c0c75f53cec8e3e85d)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30903: Fix POST /quote
Jonathan Druart [Tue, 7 Jun 2022 13:56:59 +0000 (15:56 +0200)]
Bug 30903: Fix POST /quote

quote_id should not be required

Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 4e75a3a1ee34849384b28c236ca97f7d180591d4)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit b146b654f5e118bfee1162c3ff740cac0bf835d7)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoSchema changes
Arthur Suzuki [Tue, 16 Aug 2022 09:16:54 +0000 (11:16 +0200)]
Schema changes

Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoDBRev 21.11.10.001
Arthur Suzuki [Tue, 16 Aug 2022 09:02:36 +0000 (11:02 +0200)]
DBRev 21.11.10.001

2 years agoBug 24010: Number of issues to display to staff accepts non-integer values
Owen Leonard [Fri, 13 May 2022 15:14:26 +0000 (15:14 +0000)]
Bug 24010: Number of issues to display to staff accepts non-integer values

This patch modifies the subscription entry form so that it will perform
a check on the staffdisplaycount and opacdisplaycount fields before
proceding to the second step. It verifies that the values are numeric.

The changes are made in the style of the existing form validation, which
should be rewritten to either use the validation plugin or to peform
checks in a way that all checks are run before warning the user.
However, this smaller change will work in the meantime.

To test, apply the patch and go to Serials -> New subscription.

- Fill out the form with at least the required fields, but put something
  other than a number if the "Number of issues to display to staff" and
  "Number of issues to display to the public" with non-numeric characters.
- When you click the "Next" button you should get an error message,
  "Number of issues to display to staff must be a number."
- Correct the issues to display to staff field and submit again.
- You should get a different error message, "Number of issues to display
  to the public must be a number."
- Correct this field and you should be able to proceed to the next step.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 57221e083bb329f3c428fd20e7e7f65a6ab10186)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit fb08b10b75c2b54c3186055a6eef718771214c08)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 24010: (QA follow-up) Correct COMMENT syntax
Tomas Cohen Arazi [Tue, 5 Jul 2022 14:08:16 +0000 (11:08 -0300)]
Bug 24010: (QA follow-up) Correct COMMENT syntax

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 29a9d790e811c2a3139abf75a2f8f05901973c81)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 9f83bad68cc1f407b864820a023fdecb6fd67043)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 24010: DB Changes
Jonathan Druart [Fri, 22 Nov 2019 11:33:41 +0000 (12:33 +0100)]
Bug 24010: DB Changes

Amended-patch: adjusted to new atomic update format

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit a7eee1027993efa7d34181a77e70ac5d9f129379)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 07d00657e0061e20cda82bc89e93a8a58e92e5c6)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31106: Fix links generated in XSLTs
Tomas Cohen Arazi [Tue, 5 Jul 2022 00:09:05 +0000 (21:09 -0300)]
Bug 31106: Fix links generated in XSLTs

This patch addresses the case of links that are generated on the XSLT
side, those linking to and from host records using 773$t and 773$a.

To test:
1. Pick a bibliographic record (I chose 'Unconditional' from the sample
   data
2. Add " and ? to the title statement. I changed it to
   'Uncond"itional?¿'
3. Add a child record to it
4. Open the detail page for the host record
=> FAIL: It doesn't show the 'Show analytics' link
5. Repeat 4 for the same record, in the OPAC
=> FAIL: It doesn't show the 'Show analytics' link
6. Apply this patch
7. Repeat 4 and 5.
=> SUCCESS: Links are shown!
8. Follow the links
=> SUCCESS: The links take you to the right resultset!
9. Go to the child record, and notice the link back to the parent works
   :-D
10. Sign off :-D

Sponsored-by: Theke Solutions
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit e1b63d9df322101af1230fc4aaf5cf2e38832830)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 854f192db6076a6705bd51721293de9188052fd2)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31106: Make clean_search_term escape double quotes
Tomas Cohen Arazi [Mon, 4 Jul 2022 18:19:27 +0000 (15:19 -0300)]
Bug 31106: Make clean_search_term escape double quotes

We noticed that several characters will break Zebra queries. So search
terms need to be quoted for things to work. In this context, double
quotes inside search terms are problematic because double quotes are
what we use for quoting strings.

This patch makes the clean_search_term method escape double quotes.

To test:
1. Apply the unit tests patch
2. Run:
   $ kshell
  k$ prove t/Koha/SearchEngine/Zebra/QueryBuilder.t
=> FAIL: It doesn't work as it should!
3. Apply this patch
4. Repeat 2
=> SUCCESS: It does the job!
5. Sign off :-D

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 24bb15785dd7f176c1ffe2bf8ae5e8a05cc0707a)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 2e063b708d29095de6462f063ae4d092f22c386f)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31106: Unit tests
Tomas Cohen Arazi [Mon, 4 Jul 2022 18:18:44 +0000 (15:18 -0300)]
Bug 31106: Unit tests

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 73ca6e2f57d9c2271878e74e46548cb7eadea2a3)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit d1770d4c49825191b79889c93b4d74fc5b143936)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31179: (QA follow-up) Set field as hidden for tests
Nick Clemens [Tue, 19 Jul 2022 15:26:51 +0000 (15:26 +0000)]
Bug 31179: (QA follow-up) Set field as hidden for tests

We want the tests to pass in the case where field is set to visibile in Koha

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit d24cb97b0607ccc8aaa145018ae4dff140910f26)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit f38f5483472611330559ea7314b4824d3e525b80)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31179: (QA follow-up) POD fix
Nick Clemens [Tue, 19 Jul 2022 15:17:56 +0000 (15:17 +0000)]
Bug 31179: (QA follow-up) POD fix

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 05964056604233620016dba801661fe879cd23e9)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit b76ef704698ea3e1fba501fc71b3744432e15d0b)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31179: Don't copy invisible subfields when duplicating items
Jonathan Druart [Tue, 19 Jul 2022 14:09:46 +0000 (16:09 +0200)]
Bug 31179: Don't copy invisible subfields when duplicating items

Duplicate item is intended to duplicate the visible cataloging fields of an item, however,
currently it is duplicating the complete internal record of the item

To recreate:
1 - find an item in Koha staff client, copy the barcode
2 - Issue this item to a patron
3 - Return to the record
4 - Edit items
5 - Click 'Actions->Duplicate' for the item in question
6 - Save the item
7 - Note in the items table above for that 'Total checkouts' 'Due date'
 etc. have not been copied to new item

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit b90787d5c8167b455cfd24e8cc24384c3ee70081)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 210a62cc3d6db48888c8c6e8ea1aaa7f4017202c)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30837: Fix table width on 'Print summary'
Magnus Enger [Tue, 24 May 2022 12:12:35 +0000 (12:12 +0000)]
Bug 30837: Fix table width on 'Print summary'

To reproduce:
- Make sure you have a patron with at least one checkout,
  one hold and one fine
- On the detail page for that patron, go to Print > Print
  summary
- Observe the tables are too wide to fit on a printed page

To test:
- Apply this patch
- Repeat the steps above
- Observe the table now fits on the page

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit b96e6dd2efd06099c16f11d6057ae98a9c698619)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30914: (24153 follow-up) Fix cleanup_database.pl --transfers --old-reserves
Jonathan Druart [Tue, 7 Jun 2022 12:11:06 +0000 (14:11 +0200)]
Bug 30914: (24153 follow-up) Fix cleanup_database.pl --transfers --old-reserves

Silly mistake, 'delete if verbose' must be 'delete if confirm'

Test plan:
Try the cleanup_database.pl script to delete transfers and old issues.
Using --transfers --old-reserves and the --confirm flag the entries must be
removed

Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit a6166405c7d7886466a8d1264c98970b4973f77f)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit b503c186e4ca8012b24441e746045c7439c44b97)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30716: Add collection to cn_browser results
Lucas Gass [Fri, 6 May 2022 21:50:05 +0000 (21:50 +0000)]
Bug 30716: Add collection to cn_browser results

To test:
1. Go to MARC bibliographic framework, pick a framework and go to 952, subfield "o". Turn the cn_browser plugin on.
2. Pick or create an item in that framework, edit that item.
3. TO the right of the 952$o notice the "...". Click that start the call number browser.
4. Notice there is no column for collection.
5. Apply patch, restart_all
6. Notice there is now a column for with the items collection.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit b48ac1ef741d8e1c02290dd9d2809713f3bba23b)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit a1efdde99b8e710acb28df212ab7e62a63bca71f)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30567: Fix price formatting when adding a manual invoice with CurrencyFormat FR
Katrin Fischer [Mon, 6 Jun 2022 21:34:26 +0000 (21:34 +0000)]
Bug 30567: Fix price formatting when adding a manual invoice with CurrencyFormat FR

In input fields we always use the decimal . while the display format
uses the decimal separtor definded by CurrencyFormat. When adding a
manual invoice without this patch, the amount is shown with comma, but
it should be . in the input field.

To test:
1- Go in Administration->Debit types
2- Click on New debit type
3- Fill the form:
   Code: USEDBOOK
   Default amount: 0.50
   Description: Used book
   Can be manually invoiced: Yes
4- Save
5- Go to any patron account
6- Go to the "Accounting" tab
7- Click on "Create manual invoice"
8- Fill the form
9- Choose the created debit (Used book)
10- Verify that the format is incorrect (0,50 instead of 0.50)
11- Apply the patch
12- Verify the amount is now using the correct format

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit c54e1de8b2beec131f51fdfe866fd27ee8bc0759)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 533a858684d8e5cf69caea560b64aefebc88b626)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31040: jsTree image being used outside of jsTree plugin
Owen Leonard [Fri, 24 Jun 2022 11:44:09 +0000 (11:44 +0000)]
Bug 31040: jsTree image being used outside of jsTree plugin

This patch corrects OPAC templates which tried to use a jsTree image
asset which is missing following the jsTree upgrade (see Bug 11873).
Templates should use /images/spinner-small.gif instead.

To test, apply the patch and enable OpenLibrarySearch and populate
OverDrive and RecordedBooks preferences with credentials (they don't
have to be valid).

Perform a catalog search in the OPAC. When the search results page first
loads you should see messages about the services being queried:

Searching OpenLibrary...
Searching RecordedBoks...
Searching OverDrive...

Each should show a working "spinner" image while the queries are being
performed. If you have valid OverDrive credentials you can try clicking
through to the OverDrive search results page to confirm that the image
is working on that page too.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 8f1f1cfd5054211df2aebf3073333133b410d929)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 8bb0df3a535569b022c9ec1a88979070a1dfdb33)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31066: Update javascript to use 'text_plugin' type for regex option
Nick Clemens [Wed, 29 Jun 2022 11:23:22 +0000 (11:23 +0000)]
Bug 31066: Update javascript to use 'text_plugin' type for regex option

To test:
 1 - Confirm 952$o is not linked to a plugin in the default marc framework
 2 - Send some tiems to batch modification
 3 - Confirm you can select RegEx as an option for callnumber during modification
 4 - Link 952$o to the cn_browser.pl plugin
 5 - Repeat batch modification
 6 - Note there is no regex option
 7 - Apply patch
 8 - Confirm there is a regex option
 9 - Unlink 952$o from plugin
10 - Confirm you still have a regex option in batch modification

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit e764e82dfc73da5d77199f71dd2d51d201b0a2eb)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 3b6978259f494e23026d986dbb71d146d4b233db)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 29958: Do not set dateaccessioned on updates
Martin Renvoize [Fri, 24 Jun 2022 14:39:07 +0000 (15:39 +0100)]
Bug 29958: Do not set dateaccessioned on updates

This patch reomves the second occurence of setting daeaccessioned today,
outside of the 'add/update' handling in Koha::Item->store.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 1f5fbcf73626139bcc01aca73b912fa29ff51f7d)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit e0fcd54a6edd728ab67924d5ab3ef3df8d4e52dd)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 29958: Regression tests
Tomas Cohen Arazi [Tue, 5 Jul 2022 12:14:16 +0000 (09:14 -0300)]
Bug 29958: Regression tests

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 3684a53dc328047f5f608d4b3d6b37abcbf30400)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 91c4d411157a22bbeb58b43b878705f44c71f1f3)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 25622: Use special chars in DB password (koha-create)
Jonathan Druart [Fri, 29 May 2020 14:10:58 +0000 (16:10 +0200)]
Bug 25622: Use special chars in DB password (koha-create)

On bug 23250 we decided to generate a password without special chars
then add a '@' at the end to comply with MySQL policy.
That is wrong, we should handle correctly the special chars we don't
want to be part of the password.

Test plan:
1.
mysqlpwd=$(pwgen -s -y -r ":'&\\<>/" 16 1)
echo $mysqlpwd

Confirm that you don't see one of the following chars : ' & \ < > /

2.
Copy from src and edit /usr/sbin/koha-create to add an echo $mysqlpwd
Create several instances, like:
koha-create --create-db x
koha-create --create-db xx
koha-create --create-db xxx
...

When you see a password with a special chars, do:
koha-shell xxx
grep '<pass>' $KOHA_CONF
And make sure the password does not contain "__DB_PASS__"

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit ffd3b4b7e391d40c476772bd16530572431d2896)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 026c7588d93719217cea68a309f481f9c6604c30)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30152: Elasticsearch - queries with OR don't work with limits
Kevin Carnes [Tue, 22 Feb 2022 13:29:15 +0000 (14:29 +0100)]
Bug 30152: Elasticsearch - queries with OR don't work with limits

When a query with "OR" is combined with a limit in Elasticsearch, the precedence is not preserved and the results are not correct.

To test:
1) Set SearchEngine to Elasticsearch
2) Index records in Elasticsearch
3) Do an advanced search
4) Select More options
5) Enter a value for the first Keyword (e.g. Novels)
6) Change "and" before the second Keyword to "or"
7) Enter another value for the second Keyword (e.g. Prose)
8) Limit the search (e.g. Item type Books)
9) Do the search
10) Observe that records with the first keyword are not in the results
11) Apply the patch
12) Repeat the search
13) Observe that results with both keywords are in the results
14) Sign off

Sponsored-by: Lund University Library
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
(cherry picked from commit 3ed649a0e09d4ab96ed117ec2dc2446c9da71d34)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit d6a3a10fc7cd7e15ffcdd03e089d565764f5e1b3)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31062: Change description of QOTD tool in tools-home
Caroline Cyr La Rose [Wed, 29 Jun 2022 15:12:57 +0000 (11:12 -0400)]
Bug 31062: Change description of QOTD tool in tools-home

This patch changes the name and description of the QOTD tool in order
to make them more consistent with the other tool names and descriptions.

To test:
1) Go to Tools
2) Read the QOTD tool name and description, make sure they make
   sense and that there are no typos
3) Test the link to make sure it goes to the tool

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Tomás Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 30cc6f422f1e7f2cd130d8327317f2805d510e9a)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 98883753a063d9ed5f89e492c027d750caa23ef9)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31064: Wrap local login with stylable element
David Cook [Wed, 29 Jun 2022 08:46:21 +0000 (08:46 +0000)]
Bug 31064: Wrap local login with stylable element

Test plan:
0. Apply patch
1. Go to http://localhost:8081/cgi-bin/koha/admin/preferences.pl?op=search&searchfield=OPACUserCSS
2. Set syspref to the following:
.local-login {
      display: none;
}
3. Go to http://localhost:8080/cgi-bin/koha/opac-main.pl
3b. Note that the local login boxes are hidden
    ("Log in to your account:" remains so that other login options can
    be supplied by OpacUserJS)

4. Click on "Log in to your account" on the top toolbar
4b. Note that the local login boxes are hidden
    ("Log in to your account:" remains so that other login options can
    be supplied by OpacUserJS)

5. Go to http://localhost:8080/cgi-bin/koha/opac-user.pl
5b. Note that the local login boxes are hidden
    ("Log in to your account" remains so that other login options can be
    supplied by OpacUserJS)

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Tomás Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 89c910449d2043050f75694e1a401e213c103e22)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit e9b4dd2bd5d4bd6025d6ccb2f6d3dd32bf671249)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31085: Reload return claims table on resolve
Martin Renvoize [Mon, 27 Jun 2022 16:53:15 +0000 (17:53 +0100)]
Bug 31085: Reload return claims table on resolve

This is another fix for a bug in return claims. We now test for the
initialised datatable and call an ajax reload directly on it if we find
one instead of calling a undefined function (the function is out of
scope here).

NOTE: Taken as a whole commit follow-up on bug 28854 where the issue was
initially identified

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 2485476b71fb5868da47253558c717d02d12e1a5)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 353d00411964faf4924876bb9c96ac9eb596b76c)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31087: Prevent stringification of null in return claims
Martin Renvoize [Mon, 27 Jun 2022 16:20:55 +0000 (17:20 +0100)]
Bug 31087: Prevent stringification of null in return claims

The return claims table was stringifying 'null'. This patch updates the
code to check for definition so we don't stringify incorrectly

Note: This patch was split out from a follow-up on bug 28854 as we felt
it should be treated separately for backportability.

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 41ce80eb12e738a55c697f51ecfb32a932a38959)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit f055a4ae654fe3fde66bd0d316fdbe98daba8f36)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30865: Double-quote Host-item in Koha::Biblio->get_components_query
David Cook [Mon, 30 May 2022 03:31:44 +0000 (03:31 +0000)]
Bug 30865: Double-quote Host-item in Koha::Biblio->get_components_query

This patch adds double quotes around the term qualified by "Host-item"
in Koha::Biblio->get_components_query().

Without them, reserved charactrs like "=" will cause syntax errors like
"CCL parsing error (10014) Unknown qualifier ZOOM for query:
    Host-item=(MyTitle = Mysubtitle)
    at /usr/share/koha/lib/C4/Search.pm line 245."

Test plan:
0) Don't apply the patch
1) Create biblio with title and subtitle like (MyTitle : MySubtitle)
2) Note the warning "There was an error searching for analytic records,
   please see the logs for details." on the detail page
3) Apply the patch
4) koha-plack --restart kohadev
5) Refresh the detail page
6) Note that the warning message is gone
7) prove t/db_dependent/Koha/Biblio.t

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit fd385d90b8063d5cbdb0e5d1cf76e99b9c58cc84)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 2b4eb64563367d2fb0c51b244d0f9a936c4b49ba)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30744: Use RecordProcessor in get_marc_notes
Martin Renvoize [Wed, 25 May 2022 14:51:41 +0000 (15:51 +0100)]
Bug 30744: Use RecordProcessor in get_marc_notes

This patch utilises RecordProcessor to filter the MARC::Record for the
right interface prior to constructing the marc notes array.  We also
remove the use of C4::XSLT for replacing AV values in the MARC fields in
preference to using the RecordProcessor filter.

Signed-off-by: David Nind <david@davidnind.com>
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>
(cherry picked from commit 029d7bacf01ac9debe4ca21150d9c9c572f090da)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 248dc2787eaa496dfd1c0984fab49d8d76efc6fd)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30918: Allow passing filtered record to get_marc_notes
Martin Renvoize [Tue, 7 Jun 2022 12:45:14 +0000 (13:45 +0100)]
Bug 30918: Allow passing filtered record to get_marc_notes

This patch does the absolute bare minimum to prevent private notes from
appearing on the OPAC.

Test plan
1. Go to Koha Administration -> Koha bibliographic frameworks
2. View the MARC structure for your BKS framework (or something else)
3. Search for tag 583, edit subfields
4. Go to subfield 'x' - nonpublic note. Confirm the OPAC visibility
   checkbox is UNCHECKED.
5. Edit or create a record using the BKS framework. Put a note in the
   583$x.
6. View this record in the OPAC
7. Go to the Title notes tab. Confirm the non-public note is
   showing, even though the framework says it should not be
   visible via the OPAC.
8. Apply patch
9. Confirm the non-public note is no longer visible

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 0efae9ed0565aac7ade8b9febfcd0e44fe35d420)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 2ad8c15dbf41e738f7cc14adcd23befdf053a62a)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30848: Add exec flag to test
Nick Clemens [Fri, 17 Jun 2022 13:09:02 +0000 (13:09 +0000)]
Bug 30848: Add exec flag to test

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 8c926c976a7a5057c578d8f5d41f4cdaa1d8ab5e)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 4edaa27fc2a7a487a9558dc66acce9b636fa06b3)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30848: Fix issue exposed by unit tests
Martin Renvoize [Mon, 13 Jun 2022 13:26:33 +0000 (14:26 +0100)]
Bug 30848: Fix issue exposed by unit tests

This patch changes the 'map' to a simple for loop so that we can easily
map multiple subfields to a field without overwriting the first previous
subfields in the structure.

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 6c381c4b22d30388f8e24966a6c6e7c78201dba3)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 965e9856196a30520ffaea7cc99f7724f7b123d3)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30848: Expand unit tests
Martin Renvoize [Mon, 13 Jun 2022 13:25:30 +0000 (14:25 +0100)]
Bug 30848: Expand unit tests

Add to the unit tests to test Library and Itemtype expansions as well as
linking multiple subfields of the same marc field to such expansions.

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 6b04e3e18f1c534e3d7d91dde458d30e02e13f33)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 66999034d4ce274dec14340c1494dc280292984a)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30848: Add an ExpandCodedFields RecordProcessor filter
Martin Renvoize [Thu, 26 May 2022 09:24:50 +0000 (10:24 +0100)]
Bug 30848: Add an ExpandCodedFields RecordProcessor filter

This patch introduces a RecordProcessor filter for MARC::Record objects
that replaces Koha codes with descriptions in the MARC::Record passed to the processor.

Target usage:

  my $biblio = Koha::Biblios->find(
      $biblio_id,
      { prefetch => [ metadata ] }
  );

  my $record = $biblio->metadata->record;

  my $processor = Koha::RecordProcessor->new(
    {
        filters => ('ExpandCodedFields'),
        options => {
            interface     => 'opac',
            frameworkcode => $biblio->frameworkcode
        }
    }
  );

  $processor->process( $record );

Test plan
* Read the included unit test and confirm it makes sense and passes

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 62bba6d9e12bdf9e3dbf231beae68afe43618f4b)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 0a861042947adbc12b4d865c89c6a87effe965b9)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 31058: Fix import AutoUnsuspendHolds
Nick Clemens [Tue, 28 Jun 2022 10:06:57 +0000 (10:06 +0000)]
Bug 31058: Fix import AutoUnsuspendHolds

This patch corrects missing import

To test:
1 - perl misc/cronjobs/holds/auto_unsuspend_holds.pl
2 - It dies
Undefined subroutine &main::AutoUnsuspendReserves called at misc/cronjobs/holds/auto_unsuspend_holds.pl line 38.
3 - Apply patch
4 - run again
5 - It succeeds!

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 6c315c164dbcf3e05fcfe4a3110b824ab3ac162c)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 1e8abd735991190d7124a9630b0bda53cec7840a)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30939: Fix use statement for DelAuthority
Katrin Fischer [Fri, 17 Jun 2022 22:34:45 +0000 (22:34 +0000)]
Bug 30939: Fix use statement for DelAuthority

Without this patch, the script won't delete any
unused authorities, but gives an error instead
and dies:

Undefined subroutine &main::DelAuthority called at ./misc/migration_tools/remove_unused_authorities.pl line 98.

To test:
- Run from koha-shell:
  ./misc/migration_tools/remove_unused_authorities.pl -t
- Verify several authorities are reported as unused
- ./misc/migration_tools/remove_unused_authorities.pl -c
- Verify the error message is shown when the first unused
  authority is found and the script stops
- Apply patch and rerun:
  ./misc/migration_tools/remove_unused_authorities.pl -t
- Verify the error is gone, the script finishes and auhorities
  are deleted

https://bugs.koha-community.org/show_bug.cgi?id=30936

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit df393b38b8102b4d304b79cb2ba2e73caf8187bd)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 29a627bdfc825dfcbbb4a6185f20300da7bf137f)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 30775: Make 952w to have datepicker plugin by default
Petro Vashchuk [Mon, 16 May 2022 14:04:18 +0000 (17:04 +0300)]
Bug 30775: Make 952w to have datepicker plugin by default

This field (Price effective from) is very similar to 952d,
but it doesn't have dateaccessioned.pl plugin by default,

Apart of worse usability of this it is also allows to enter wrong
date which will be converted in 0000-00-00 in DB and even lead to
crashes by code in other places.

So, adding this plugin not only improves usability (user can have
datepicker) but also adds date field validation.

Test plan:
1. Head over to MARC frameworks from your administration page,
check 952 subfield structure of your default framework structure.
2. dateaccessioned.pl is set as a plugin for 952d by default
but is missing from 952w.
3. Apply the patch and reset your koha, drop db and use reset_all alias.
4. Check frameworks structure again and ensure that datepicker plugin
is set by default for 952w.
5. Edit some item to ensure that datepicker works for that 952w.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit b25dfb50a10390e1fa4f66c40ecc6da7aeb3af79)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 588377511b082de88347f928b9784c7fb689fddf)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
2 years agoBug 26486: Group edit buttons in reports toolbar
Owen Leonard [Wed, 23 Mar 2022 14:11:47 +0000 (14:11 +0000)]
Bug 26486: Group edit buttons in reports toolbar

This patch modifies the reports interface to change the reports toolbar
in two ways:

1. The Edit, Duplicate, and Delete buttons are now combined into a
   button menu. My original idea was to have it be a split button, but
   the logic for handling various permissions made the template logic
   too convoluted.
2. The "Show SQL code" button is converted to a "Single toggle" button
   (https://getbootstrap.com/docs/3.3/javascript/#buttons-single-toggle).
   This type of button is specifically designed for this kind of
   interface element.

This patch includes indendation changes, so please diff accordingly.

To test, apply the patch and go to Reports -> Saved reports.

- Logged in as a user with Create and Delete report
  permissions:
  - View an SQL report. In the toolbar you should see an "Edit" button
    menu with three options: Edit, Duplicate, and Delete. Check that all
    work correctly, including a deletion JavaScript confirmation dialog.

- Logged in as a user with Create but not Delete report permissions, you
  should see an "Edit" button menu with two choices: Edit and Duplicate.

- Logged in as a user with Delete but not Create report permission (??)
  you should see only a standalone delete button.

- Logged in as a user with Execute report permission, run an SQL report.
  Test the "Show SQL code" button. The text should change to "Hide SQL
  code" and the button should be styled to look like its "pressed"
  state.

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 22afd8b4e7be875f737a4dd86d9f69e4ca117ce1)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 8a855c86f3537314fec4c07fb9520893b171aa03)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>