koha.git
16 months agoBug 26628: Fix access to clubs when user only has clubs permission
Katrin Fischer [Thu, 26 Jan 2023 21:46:51 +0000 (21:46 +0000)]
Bug 26628: Fix access to clubs when user only has clubs permission

If a user only has the clubs and no permission from the tools section,
they can't access the patron clubs page by navigation. This patch
extends the permission checks for tools to include the clubs, that
live on the tools page, but have a top level permission.

To test:
- create a patron with only the catalogue and clubs permissions
- log in to the staff client as that patron
- navigate to a patron record, confirm you can see the Clubs tab in the patron account, can add patrons to and remove patrons from clubs
- confirm you don't have a link to the Tools module either on the Koha homepage or in the More menu
- enter the clubs URL manually (/cgi-bin/koha/clubs/clubs.pl), confirm you are allowed to open the page
- Apply patch
- The only changes should be:
  - You can now see the Tools entry in the More navigation menu
  - You can now see the Tools module link on the start page
  - Both take you to the tools page, only visible tools is 'Patron clubs'

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 50927bb9b530f7a9c092dfe99bd2dddc69202432)
Signed-off-by: Jacob O'Mara <jacob.omara@ptfs-europe.com>
(cherry picked from commit ecdd1d2b420f646279c69f61be30e46a33e8739e)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit e1df60db477e396a903bccde01f9abfad7cd717e)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
16 months agoBug 19188: Use the Price template plugin with_symbol => 1
Jonathan Druart [Thu, 1 Feb 2018 17:32:54 +0000 (14:32 -0300)]
Bug 19188: Use the Price template plugin with_symbol => 1

To make it displayed correctly depending on the configuration of the
currency

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
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 c6366c6d6869be719e48e73b40827efd574a13c6)
Signed-off-by: Jacob O'Mara <jacob.omara@ptfs-europe.com>
(cherry picked from commit ae4e269b7b12975d7e0d5504d0b2b504fa41a4ce)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 06d09180e678d511b79ee491bc78b763625a3ca4)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
16 months agoBug 19188: Self checkout missing currency symbol
Jenny Way [Tue, 16 Jan 2018 22:05:39 +0000 (22:05 +0000)]
Bug 19188: Self checkout missing currency symbol

Test plan:
1. Under administration and system preferences, enable WebBasedSelfCheck
2. In OPAC give user fine by going to 'my account' at top right
3. Then under fines tab 'create manual invoice'
4. Make sure this amount is more than noissuescharge which can be
   changed under system preferences
5. Go to the web based self check from the OPAC URL
6. Log in as your user
7. Try to check out an item
7. Error 'Item cannot be checked out' should occur
8. With the patch, the currency symbol should show for the amount.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
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 5eab08cc2edd897f9afdfeb46caf5e409476946f)
Signed-off-by: Jacob O'Mara <jacob.omara@ptfs-europe.com>
(cherry picked from commit 13f7ee3e938b41f66d3d057001660c347b3dc08c)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 32a589f7aa3cb84de3b8cbfbd001f163ebcaf3a8)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
16 months agoBug 32644: Terminology: staff/intranet and biblio in plugins-home page
Caroline Cyr La Rose [Mon, 16 Jan 2023 20:06:19 +0000 (15:06 -0500)]
Bug 32644: Terminology: staff/intranet and biblio in plugins-home page

This patch replaces some incorrect terminology in the plugins-home page.
The current terminology is available at https://wiki.koha-community.org/wiki/Terminology

To test:
0. Make sure you have no enhanced content plugins installed
1. Apply patch
2. Go to Administration > Manage plugins
3. Click 'View plugins by class'
   --> Notice that one of the options is 'View bibliographic record enhancement
   plugins for the staff interface'
4. Make sure this phrase is gramatically correct, makes sense and has no
   typos
5. Click on that option
   --> Notice that the message says 'No plugins that can enhance the bibliographic
   records in the staff interface are installed'
6. Make sure this phrase is gramatically correct, makes sense and has no
   typos

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 0fe829e5b2a67a8af2b026af02dcb23ec55af195)
Signed-off-by: Jacob O'Mara <jacob.omara@ptfs-europe.com>
(cherry picked from commit 807b3f669544fc380e8f4e4c868146a133c9d156)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 1f0d5bb89ddcad42166a5711e54b65f8bded6bda)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
16 months agoBug 32694: (QA follow-up) Fix missing TT filters
Katrin Fischer [Fri, 27 Jan 2023 13:17:42 +0000 (13:17 +0000)]
Bug 32694: (QA follow-up) Fix missing TT filters

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit b2c1c0efe12856b99a2ab76bc84468f409235cf8)
Signed-off-by: Jacob O'Mara <jacob.omara@ptfs-europe.com>
(cherry picked from commit 851739b52ab41490dea36eea24f6730f296a342e)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 8cf822728d7d5be973ad8ab9823e26fa1916eac4)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
16 months agoBug 32694: Fix value of 'Keep current' option in receiving
Nick Clemens [Fri, 20 Jan 2023 20:18:27 +0000 (20:18 +0000)]
Bug 32694: Fix value of 'Keep current' option in receiving

This patch restores missing template toolkit markers around the variable

To test:
1 - Order an item in a basket
2 - Close the basket
3 - Attempt to receive the item, leaving budget as 'Keep current'
4 - 500 Error:
C4::Acquisition::ModReceiveOrder(): DBI Exception: DBD::mysql::st execute failed: Cannot add or update a child row: a foreign key constraint fails (koha_cclsny.aqorders, CONSTRAINT aqorders_budget_id_fk FOREIGN KEY (budget_id) REFERENCES aqbudgets (budget_id) ON DELETE CASCADE ON UPDATE CASCADE) at /usr/share/koha/intranet/cgi-bin/acqui/finishreceive.pl line 120
5 - Apply patch
6 - Receive order successfully!

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 9531a82e97661ce7013a8e9a64b8d5c4d2fa3635)
Signed-off-by: Jacob O'Mara <jacob.omara@ptfs-europe.com>
(cherry picked from commit 6f0bbc2afc4a592dc3d1cefb73b24a6cac4ea8ae)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 85d389c5e8a01e3f4dcbf7c0ab83d6ea1ad9e3dd)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
16 months agoBug 18247: Remove SQL queries from branch_transfer_limit.pl
Alex Buckley [Mon, 8 Aug 2022 23:59:20 +0000 (23:59 +0000)]
Bug 18247: Remove SQL queries from branch_transfer_limit.pl

1. Visit Administration > Patrons and circulation > Limit transfer limits

2. Observe collection codes are displayed as tabs on the Limit transfer
limits page when the BranchTransferLimitsType syspref = 'Collection
code'

3. Switch the BranchTransferLimitsType syspref = 'item type'. Refresh
the Limit transfer limits page and observe the tabs have changed to item
type codes

4. Apply patchset and restart services

5. Reload the Limit transfer limits page and confirm it displays
correctly with the  BranchTransferLimitsType = 'collection code' and
'item type'

6. Confirm you can successfully save transfer policies

Sponsored-by: Catalyst IT
Signed-off-by: Jacob Omara <jacob.omara@ptfs-europe.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 5e863f93c06e1e67ddbf0c705657ca7d024006f6)
Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
(cherry picked from commit b57ce0e15b6cae5933c3836697be9ec5a607f14d)
(cherry picked from commit d5038e3124b3faa3c74a76fbd79e14f9e2e9ee27)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
16 months agoBug 32416: Add a warning to the file
Nick Clemens [Wed, 7 Dec 2022 13:02:33 +0000 (13:02 +0000)]
Bug 32416: Add a warning to the file

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 e88f31d8a28566cef2275c3d9e62f3432b1f54f2)
Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
(cherry picked from commit ab0a00dcb90f07b6b115a76b916553eeabb9ee71)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 0b1b8df1d5a54e4af3a1df1f74b6dda6d1791d46)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
16 months agoBug 32416: Update attribute number for arp search to 9015
Nick Clemens [Wed, 7 Dec 2022 12:56:02 +0000 (12:56 +0000)]
Bug 32416: Update attribute number for arp search to 9015

Bug 20078 updated the attribute for arp to 2014 to avoid conflict with 9013 not-on-loan-count

Bug 28830 then added Control-number-identifier as 2014, breaking arp again

This patch updates the number to 9015

To test:
1 - Apply first patch
2 - Attempt searching by arp, no results (add a unique 526$d to a record to ease searching)
3 - Apply this patch
4 - Copy bib1.att and ccl.properties to the correct locations
    cp etc/zebradb/biblios/etc/bib1.att /etc/koha/zebradb/biblios/etc/bib1.att
    cp etc/zebradb/ccl.properties /etc/koha/zebradb/ccl.properties
5 - Restart zebra
6 - Rebuild indexes
7 - Search again, success!

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 e6efa820993c0b04fd848caf84658620b7ef337d)
Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
(cherry picked from commit 54f0873019d9e0f1db9d750a19ae25e52396aeb0)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 5ccbc9ea9233a5000b675ae84a29aa31b34e0ce6)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
16 months agoBug 32321: Pre-populate material type for 006 in advanced cataloging editor
Nick Clemens [Tue, 22 Nov 2022 14:05:08 +0000 (14:05 +0000)]
Bug 32321: Pre-populate material type for 006 in advanced cataloging editor

To test"
1 - Edit a record in advanced cataloging editor with field helpers enabled
2 - Choose a material type, not BKS, from dropdown
3 - Set the first position to something
4 - Save the record
5 - 006 shows 'BKS'
6 - Apply patch
7 - Reload
8 - Record should show correct value
9 - Edit 006 and confirm the first position correctly determines material type

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.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 7818717f3c69bcaf5953d6139f6a104dfb1c4ee7)
Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
(cherry picked from commit 8a28f6e2595997604e11355b49bffb5b90979113)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit fc4056c80293fddc68f439b472ecec8d3fc68f52)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
16 months agoBug 32573: Send ACK message to RabbitMQ before handling the job
Kyle Hall [Thu, 5 Jan 2023 16:35:42 +0000 (11:35 -0500)]
Bug 32573: Send ACK message to RabbitMQ before handling the job

Splitting off this functionality from bug 32558. This is the comment that started this discussion: https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=32558#c15

From the O'Reilly book Mobile and Web Messaging:

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit b3c5bd02e15e5f2e5c0eae3b06f26083b4856f3d)
Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
(cherry picked from commit 0f7b8008f7f1158f9b5aff9fa8c5b58cff28f000)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 2fd293fa6ec7a28ad1319a8036f06cbe1c07a9f5)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
16 months agoBug 32221: Borrowers.password should no longer be an option
Matt Blenkinsop [Mon, 28 Nov 2022 14:35:37 +0000 (14:35 +0000)]
Bug 32221: Borrowers.password should no longer be an option

When creating a notice template the user has the option to add the borrower's
password to the template. This should be removed as the password should not be
an option to be added to a notice.

Test plan:
1) Navigate to Tools > Notices and slips
2) Either create a new notice or edit an existing notice
3) Observe that in the list of fields available to insert into the message body,
   there is the option for "borrowers.password"
4) Apply patch
5) Navigate to the same menu
6) Observe that the "borrowers.password" option is now no longer visible

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 9608b16a6ba9d877dddc75beb1e1eef691f7b21a)
Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
(cherry picked from commit 7a143c19ad570adf8ab6cdf6f65a5456f7357ad3)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 2a81c5d8cc7e0ced742cf5f1fb99b5df62b1bc01)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
16 months agoBug 32656: Script delete_records_via_leader.pl no longer deletes items
Kyle Hall [Tue, 17 Jan 2023 17:18:00 +0000 (12:18 -0500)]
Bug 32656: Script delete_records_via_leader.pl no longer deletes items

Bug 29788 inadvertantly replaced a call to safe_delete() with safe_to_delete()
such that any time the script should delete an item it only checks to see if
the item is delectable, after which deletion of the record fails because the
items were not deleted.

Test Plan:
1) Mark a record with items to be deleted via the record leader
2) Run delete_records_via_leader.pl -i -b -v
3) Note the script says it is deleting the items but then the record
   deletion fails. Note the items remain in the items table of the
   database.
4) Apply this patch
5) Repeat step 2
6) This time the items and record should be deleted!

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 790f00781ab6c98017529ebf226d52c36c36cd68)
Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
(cherry picked from commit 03a9b139587aea26a9abde4f45a7c4f99532353c)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 0f430ce9a8c3b98be260e48a3d66f5bbb40012ab)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoIncrement version for 21.11.17 release v21.11.17
Tomas Cohen Arazi [Fri, 3 Feb 2023 12:30:02 +0000 (09:30 -0300)]
Increment version for 21.11.17 release

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
17 months agoBug 32330: (QA follow-up) No 'queue' column in 21.11.x
Tomas Cohen Arazi [Fri, 3 Feb 2023 12:24:40 +0000 (09:24 -0300)]
Bug 32330: (QA follow-up) No 'queue' column in 21.11.x

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
17 months agoUpdate release notes for 21.11.16 release v21.11.16
Arthur Suzuki [Fri, 27 Jan 2023 13:44:54 +0000 (14:44 +0100)]
Update release notes for 21.11.16 release

Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoIncrement version for 21.11.16 release
Arthur Suzuki [Fri, 27 Jan 2023 13:28:16 +0000 (14:28 +0100)]
Increment version for 21.11.16 release

Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoRevert "Bug 31873: Check ->find before calling ->safe_delete"
Arthur Suzuki [Fri, 27 Jan 2023 11:03:34 +0000 (12:03 +0100)]
Revert "Bug 31873: Check ->find before calling ->safe_delete"

This reverts commit e4ab9602c036f246797ba1ba09e1624a678ea1b3.

17 months agoBug 32330 : [21.11] column 'queue' is actually called 'type'
Arthur Suzuki [Fri, 27 Jan 2023 10:25:41 +0000 (11:25 +0100)]
Bug 32330 : [21.11] column 'queue' is actually called 'type'

17 months agoFix translations for Koha 21.11.16
Arthur Suzuki [Fri, 27 Jan 2023 10:05:57 +0000 (11:05 +0100)]
Fix translations for Koha 21.11.16

Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoTranslation updates for Koha 21.11.16
Koha translators [Thu, 26 Jan 2023 13:59:47 +0000 (10:59 -0300)]
Translation updates for Koha 21.11.16

17 months agoBug 31244: [21.11.x] Fix 500 if logout and not logged in
Jonathan Druart [Tue, 26 Jul 2022 12:55:02 +0000 (14:55 +0200)]
Bug 31244: [21.11.x] Fix 500 if logout and not logged in

Can't use an undefined value as a HASH reference at /kohadevbox/koha/C4/Auth.pm line 985
        C4::Auth::checkauth('CGI=HASH(0x5603b7dc4300)', 0, 'HASH(0x5603b2633238)', 'intranet', undef, 'intranet-main.tt') called at /kohadevbox/koha/C4/Auth.pm line 186
        C4::Auth::get_template_and_user('HASH(0x5603b7b83d08)') called at /kohadevbox/koha/mainpage.pl line 40

Test plan:
Open a private window
Hit /cgi-bin/koha/mainpage.pl?logout.x=1

Signed-off-by: Sally <sally.healey@cheshiresharedservices.gov.uk>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Rebased for 21.11.x
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
17 months agoBug 22042: Block all return actions when BlockReturnOfWithdrawn items is set to block
Nick Clemens [Fri, 8 Apr 2022 18:52:09 +0000 (18:52 +0000)]
Bug 22042: Block all return actions when BlockReturnOfWithdrawn items is set to block

Currently this syspref only bokcs the literal 'return' from a patron, i.e. the checkin

It still processes transfers, refunds lost items, updates NotForLoan status etc.

We should block all of these things

To test:
1 - Set BlockReturnOfWithdrawn to block
2 - Set an item as lost and withdrawn
3 - Check it in
4 - Item is found
5 - Apply patch
6 - Repeat 1-3
7 - Checkin is blocked, item still lost

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 321d8f7ce677bf4feb6b3946ad652d6921ca6bea)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 32481: Limit prefetch size for background jobs worker
David Cook [Thu, 22 Dec 2022 22:17:04 +0000 (22:17 +0000)]
Bug 32481: Limit prefetch size for background jobs worker

This patch adds a prefetch size of 1 to the background jobs worker,
so that it fetches 1 message at a time. Without this change,
the RabbitMQ connection timeout when too many messages for slow tasks
are fetched at the same time.

To test:
0. Apply patch
1. Run background worker
2. Rapidly enqueue multiple jobs that in total will take longer
than 30 minutes to process

Bug 32481: Use correct prefetch syntax for RabbitMQ

According to https://www.rabbitmq.com/stomp.html the header to
use for managing the prefetch is "prefetch-count".

You can verify the number of delivered and unacknowledged messages
on a channel on a connection by running "rabbitmqctl list_channels"
on the RabbitMQ host. This will tell you how many messages have been
delivered and are awaiting acknowledgement

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit cd89c383219eb9355b225b51219007a08b5e339e)
Signed-off-by: Jacob O'Mara <jacob.omara@ptfs-europe.com>
(cherry picked from commit 6238ce057e2b2784d6c4a178728cb92d515ac454)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 0b206ff70962b02748e1456b3eec694f35c14451)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 32349: Remove find-nonutf8 tests
Jonathan Druart [Wed, 4 Jan 2023 14:33:41 +0000 (15:33 +0100)]
Bug 32349: Remove find-nonutf8 tests

We don't run it and it does not seem very useful. Let's remove it.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 26cce9e1c4e9c0ec6c41ffc60d89b3f75a40d227)
Signed-off-by: Jacob O'Mara <jacob.omara@ptfs-europe.com>
(cherry picked from commit 299a7fdf9c871dbf47041f81548fcab95c14fb5c)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit b7632281d1d0a8095a521de0054dd0f967e3efa5)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 32349: Remove TEST_QA
Jonathan Druart [Fri, 25 Nov 2022 08:07:34 +0000 (09:07 +0100)]
Bug 32349: Remove TEST_QA

There is an env var that we are passing from koha-testing-docker, TEST_QA.
It's used in Koha from a single test file, t/00-testcritic.t.
If not set, no test is run.

Do we really need this? libtest-perl-critic-perl is packaged and automatically installed.

Signed-off-by: Mason James <mtj@kohaaloha.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 0adc264edb3172f7d2dca771efbe19d15f240d8f)
Signed-off-by: Jacob O'Mara <jacob.omara@ptfs-europe.com>
(cherry picked from commit a375a94225a843fbbeef94a4caf58a1ab09e78b0)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit a5e629416782055b82ca285690480b59982babae)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoDBRev 21.11.15.001
Arthur Suzuki [Thu, 26 Jan 2023 13:21:05 +0000 (14:21 +0100)]
DBRev 21.11.15.001

Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 32330: Add indexes to table background_jobs
Fridolin Somers [Wed, 23 Nov 2022 06:49:02 +0000 (20:49 -1000)]
Bug 32330: Add indexes to table background_jobs

Table background_jobs should have indexes to optimize queries.

Query on borrowernumber :
mainpage.pl:    my $already_ran_jobs = Koha::BackgroundJobs->search(
mainpage.pl-        { borrowernumber => $logged_in_user->borrowernumber } )->count ? 1 : 0;

Query on status and queue :
misc/background_jobs_worker.pl:        my $jobs = Koha::BackgroundJobs->search({ status => 'new', queue => \@queues });

Test plan :
Run updatedatabase and play with background jobs

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.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 8755f775990bba513480a3b54372d76395ab2fbe)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit f2ec246fd6f16224a556e073e28479ca5104949e)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit a579ff4fe46d1c6a74942087a8aebdcb303829e6)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 31492: Set CSRF token in circulation.pl
Lucas Gass [Fri, 13 Jan 2023 19:01:55 +0000 (19:01 +0000)]
Bug 31492: Set CSRF token in circulation.pl

To test:
* Turn on patronimages system preferences
* Go to any patron account
* Hover over the 'dummy image' for the Add button
* Browse and select an image for upload
* Saving results in the following error:

The form submission failed (Wrong CSRF token). Try to come back, refresh the page, then try again.

Apply patch and try again. You shouldn't need to try twice, it should work on the first attempt now.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit f0e6f25428a997076d29dd3daeb905befed254f8)
Signed-off-by: Jacob O'Mara <jacob.omara@ptfs-europe.com>
(cherry picked from commit 11d88ba12ff14a41a1d998d0286b258e356dd64a)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 715afc2826f9794af3b47c652f02c1d3438ebae1)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 32255: Resolve "Cannot use file upload in batch record modification"
Géraud Frappier [Thu, 17 Nov 2022 21:11:11 +0000 (16:11 -0500)]
Bug 32255: Resolve "Cannot use file upload in batch record modification"

When using the batch record modification tool with a file of biblionumbers, nothing happens. When we click 'Continue' the file is somehow removed before continuing.

To test:
1. Get a file of biblionumbers (if you already have a file, proceed to step 2)
   1.1. Go to Reports
   1.2. Click on 'Create from SQL'
   1.3. Enter a report name (e.g. biblionumbers)
   1.4. Enter the following SQL query

SELECT biblionumber FROM biblio LIMIT 100

   1.5. Click 'Save report'
   1.6. Click 'Run report'
   1.7. Click 'Download' > 'Tab separated text'

2. Create a MARC modification template (if you already have a MARC modification template, proceed to step 3)
   2.1. Go to Cataloging > MARC modification template
   2.2. Click 'New template'
   2.3. Enter a template name (e.g. Add note)
   2.4. Click 'Submit'
   2.5. Click 'New action'
   2.6. Choose
        - Add new
        - Field 500 a
        - with value Note
   2.7. Click 'Add action'

3. Batch modify records
   3.1. Go to Cataloging > Batch record modification
   3.2. In the 'Upload a file tab', choose the biblionumber file
   --> Note that the name of the file appears next to the Choose button
   3.3. In 'Template', select the MARC modification template
   3.4. Click 'Continue'
   --> The name of the file disappears next to the Choose button and goes back to 'No file chosen'
   --> Message 'No records were modified

4. Apply path
   4.1. Procede step 3.
   4.2. See that we can see the list now

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit bc974ef361926209b417502d86dbbacdb371f35a)
Signed-off-by: Jacob O'Mara <jacob.omara@ptfs-europe.com>
(cherry picked from commit e99f339be5a2b5a192b52a25e4240a8ea605f5d9)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit b5174a9217dc96a7431b7063f8225551e06addc6)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 32348: Add library public in columns settings
Fridolin Somers [Fri, 25 Nov 2022 07:57:40 +0000 (21:57 -1000)]
Bug 32348: Add library public in columns settings

Bug 27360 added public info on libraries table.
This should be added to columns settings.
Currently the column "STMP server" can not be managed in settings.

Test plan :
Play with columns settings of table Administration > Libraries

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 22865246926bf032cc3aa4a918a68bf467896dd7)
Signed-off-by: Jacob O'Mara <jacob.omara@ptfs-europe.com>
(cherry picked from commit a7f471c548c2218cffd9c05ccb09fe8f20ce9597)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit bcf43b4e9cf06c086dbd51983c657bdb001db019)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 30694: Set decreaseloanholds undef when deleting circulation rule
Emmi Takkinen [Tue, 15 Nov 2022 07:31:13 +0000 (09:31 +0200)]
Bug 30694: Set decreaseloanholds undef when deleting circulation rule

When one tries to delete rule with field "Decreased loan period
for high holds" filled, delete fails without errors. This happens
because rule isn't set in code section handling the delete in
smart-rules.pl.

To test:
1. Create a new circulation rule and fill all fields.
2. Try to delete the rule.
=> Rule isn't deleted, all fields except "Decreased loan period
for high holds" are now empty or have value "Unlimited".
3. Modify the rule and set field "Decreased loan period for high
holds" empty.
4. Delete the rule.
=> Rule is deleted successfully.
5. Create a new rule, fill all fields expect field "Decreased loan
period for high holds".
6. Delete the rule.
=> Rule is deleted successfully.
7. Apply this patch.
8. Again create a new rule with field "Decreased loan period for high holds" filled.
9. Try to delete the rule.
=> Rule is deleted successfully.

Sponsored-by: Koha-Suomi Oy
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 91fc31c32ba14817d989bcd34854ebc8e41fa936)
Signed-off-by: Jacob O'Mara <jacob.omara@ptfs-europe.com>
(cherry picked from commit 63fd9be98befc0be358b0074b94253befa929f48)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 4bc18581f81aaa7872fd785f215acf2b4a4ce280)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 20596: (QA follow-up) perltidy
Fridolin Somers [Thu, 15 Dec 2022 06:31:53 +0000 (20:31 -1000)]
Bug 20596: (QA follow-up) perltidy

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

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 8441834b84f71867e2cc67150c3c5e2b4b2cc583)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 20596: Add unit test for multiple values in authority search
David Cook [Wed, 14 Dec 2022 05:17:02 +0000 (05:17 +0000)]
Bug 20596: Add unit test for multiple values in authority search

This patch adds a unit test which returns 2 authority records
via an implicit OR when searching for strings from two different
authority records.

Test plan:
1. prove t/db_dependent/Search.t

Signed-off-by: Jan Kissig <jan.kissig@th-wildau.de>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 76d676a868be048ec57c8eb178bf813a12823c6e)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 5921e1c523a9673b8770a9ea2ceb8ec3223ef5de)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 8146d064b57a925026a440ccda59c2dfcfd9e1f5)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 20596: Join authority queries together with OR
David Cook [Wed, 14 Dec 2022 04:58:41 +0000 (04:58 +0000)]
Bug 20596: Join authority queries together with OR

This patch joins authority queries together with OR like Elasticsearch.

To the best of the author's knowledge, this code only gets triggered
when using record matching rules, but there may be other situations
where it's used.

Authority search in cataloguing plugins use a different path, and
authority search in authority home doesn't allow multiple queries,
so they'll never trigger this OR joining of queries.

Test plan:
0. Apply patch and koha-plack --restart kohadev
1. Create a record matching rule with the following:
Matching rule code: NID
Description: NormdatenID
Match threshold: 100
Record type: Authority record
Search index: Any
Score: 101
Tag: 035
Subfields: a
Offset: 0
Length: 0
Normalization rule: None

Click "Remove this match check"

2. Stage gnd.xml (from BZ 20596 attachments)
- Choose "MARCXML" for "Format"
- Choose "Authority" for "Record type"
- Choose "NID" for "Record matching rule"
- Click "Stage for import"
3. Note the job gets to "100% Finished"
(Before this patch, it would say "0% Failed")

4. View the batch
5. Import the record
6. Repeat steps 2-4 and note that the record matching rule
worked

7. Go to http://localhost:8081/cgi-bin/koha/authorities/authorities-home.pl
8. Search for "e"
9. Note that the search works

10. Go to http://localhost:8081/cgi-bin/koha/cataloguing/addbiblio.pl?frameworkcode=
11. Click tab 6
12. Click on the tag editor next to "a Personal Name"
13. Type "e" into each box and click "Search"
14. Note that the search works

Signed-off-by: Jan Kissig <jan.kissig@th-wildau.de>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit b2a23149bdfdd27b1ccf5ec2106e92da4dbe05a4)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 9a319b8169170d4ffa1cd4e3ad9b963fc3531fac)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit f4462b840214b01b8bee4bb4404d5605501d0c1f)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 32457: Fix CGI vulnerability in addorder.pl
Marcel de Rooy [Tue, 13 Dec 2022 14:31:10 +0000 (14:31 +0000)]
Bug 32457: Fix CGI vulnerability in addorder.pl

Test plan:
Go to acqui/addorder.pl.
Create two items.
Check if results still match your expectations.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit b389f9a361cf16c11f3678b8e42aa6eb1e91a930)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 427d0b32e9aefa812ac97497b79cbe511fbbca05)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit fc980aed316439549d5ad1ad09183d8a40fdcde3)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 32115: Add ID to check-out default help message dialog to allow customization
Mona Panchaud [Sat, 5 Nov 2022 18:25:43 +0000 (19:25 +0100)]
Bug 32115: Add ID to check-out default help message dialog to allow customization

This adds a div with the id attribute selfcheckdefaulthelpmessage to
the first paragraph of the web based self check help page.

To test:
* Enable WebBasedSelfCheck
* Go to: /cgi-bin/koha/sco/sco-main.pl in the OPAC
* Log in and open help
* Verify by looking at the source code, that the first paragraph
  starting with "If this is your first time..." now has an id.

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

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 2c4f0357c40aea024fcc60d0ab08ea10ace2c11a)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 31166: Digest option is not selectable for phone when PhoneNotification is enabled
Kyle Hall [Fri, 15 Jul 2022 18:10:37 +0000 (14:10 -0400)]
Bug 31166: Digest option is not selectable for phone when PhoneNotification is enabled

Digests are not available via Talking Tech, but the artificial limit should not be in place for the non-TT phone notices. If only phone is selected, digest remains disabled.

Test Plan:
1) Apply this patch
2) Enable TalkingTechPhoneNotification
3) Verify behavior hasn't changed
4) Disable TalkingTechPhoneNotification, Enable PhoneNotification
5) Note disgest option is now selectable if only phone is selected

Signed-off-by: Evelyn Hartline <evelyn@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Bug 31166: (QA follow-up) Remove debugging lines

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Bug 31166: (QA follow-up) Implement on OPAC side

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

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 90c5cbbd49de4c9a140b9b881afa7a32cb1610c6)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 32302: (follow-up) Hide ISBN label when list sent from the staff interface
David Nind [Wed, 30 Nov 2022 23:48:25 +0000 (23:48 +0000)]
Bug 32302: (follow-up) Hide ISBN label when list sent from the staff interface

This makes the same change to the staff interface. Lists sent
from the staff interface hide the ISBN label in the email message
when there are no ISBNs for a record.

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 69ddb83f41cfc5c9eb6b4e483bca9316bac98db8)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 3d2cc5f116cbc8a2a4b00e44d1c59929a39b909a)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 8e9462982b7dc973391a95c0b318de89eedd196c)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 32302: Hide "ISBN" label when no ISBN data when sending list
David Cook [Wed, 30 Nov 2022 22:52:55 +0000 (09:52 +1100)]
Bug 32302: Hide "ISBN" label when no ISBN data when sending list

There is a logic mistake in the opac-sendshelf.tt template where
we test if the "ISBN" key exists in the "BIBLIO_RESULT" hash when
we should really be testing if the arrayref returned by "ISBN" is
empty or not, since that "ISBN" key always exists and contains at least
an empty arrayref.

Test plan:
1. Apply patch and restart your Koha Starman
2. Create a public list containing records with 020 MARC fields and
records without 020 MARC fields
3. View the list in the OPAC
4. Click "Send list" and email it to yourself
5. Note that only records with 020 MARC fields with show "ISBN:"
in the email output

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 44366c09858364ac56fd37b5434bc77e7e48fe94)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 45a53a3d5e12ac9fb2ce016a90cd80895763298b)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit f5ac9b281ef259dfd837178c519a8a83effcb20d)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 32355: Add css class url to URL syspref
Didier Gautheron [Mon, 28 Nov 2022 07:29:47 +0000 (08:29 +0100)]
Bug 32355: Add css class url to URL syspref

Add missing css class to URL syspref.

To Test:
1 - open admin/preferences.pl
2 - Search for URL
3 - casServerUrl, UsageStatsLibraryUrl, KohaManualBaseURL,
    PrivacyPolicyURL, LibrisURL input field size are small.
4 - Apply patch
5 - all URL fields have the same bigger size.

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 af794a6cfa85d8f3160ddb4c4f626e85063a844c)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 5bd6dfcc59e5daaf43735f8b3f611bd18a90bd23)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit e6db0d3e07df0c0a434eecca32727b6996c2aad3)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 28975: (QA follow-up) Fix indentation, simplify if statement
Kyle Hall [Fri, 2 Dec 2022 14:18:08 +0000 (09:18 -0500)]
Bug 28975: (QA follow-up) Fix indentation, simplify if statement

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 72c10b222743247c881b1bb07fdc18d1ae6c715a)
Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
(cherry picked from commit 91830a27e2b93030865fe1edec79003274f8e6f7)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 93db86326b4280e0f6fb5b86afae0d2903055581)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 28975: Holds queue lists can show holds from all libraries even with IndependentB...
The Minh Luong [Tue, 25 Jan 2022 17:20:38 +0000 (12:20 -0500)]
Bug 28975: Holds queue lists can show holds from all libraries even with IndependentBranches

When using IndependentBranches, usually all branches are removed from the drop-down menus. But in the Holds Queue page, there is the possibility to choose "All branches". From there, you can see holds from all libraries.

To recreate :
1) Activate IndependentBranches, IndependentBranchesPatronModifications and IndependentBranchesTransfers
2) Create a staff user with limited permissions (NOT a superlibrarian), including holds permissions. Here are mine as an example
  - circulate (all)
  - catalogue
  - borrowers
    - delete_borrowers
    - edit_borrowers
  - reserveforothers (all)
  - reports (all)
3) Create (or make sure you already have) a patron in another branch (we'll call them patron X)
4) Place a hold for patron X on an available item from their own library
5) Run misc/cronjobs/holds/build_holds_queue.pl
6) Go to Circulation > Holds queue and make sure you can see the hold
7) Log in as your limited staff patron
8) Go to Circulation > Holds queue
9) In the drop-down menu, choose "All" and click Submit
-- Notice you see the hold of the patron from another branch under Patron
column: "A patron from library <library name>"
11) Apply the patch.
12) Notice that the "All" option is no longer available for the limited patron. Limited patrons can't see holds from other libraries anymore.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit fe2e2f9400714341877958853e8165db517fe1fa)
Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
(cherry picked from commit 6d2756b7d7f0203d9ab0a7f5900da0b19954a17b)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 2a2ffb4fcfce49f1fee8fa698160f52ad408fd5e)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 32291: (bug 16735 follow-up) Remove ref to library category in branches.tt
Jonathan Druart [Wed, 23 Nov 2022 09:08:26 +0000 (10:08 +0100)]
Bug 32291: (bug 16735 follow-up) Remove ref to library category in branches.tt

On bug 16735 we rewrite the library groups system. Those references in
branches.tt were part of the previous code, and they can be removed.

Test plan:
Confirm the above and that those code errors are never sent to the
template.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 4f8b742cbe0c41a389290a821c0ca478bb108e26)
Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
(cherry picked from commit e1114304618f88a40a6454be1df75bf8199141cc)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 14acae6f9f8ed5d159fb148e699cfce97939b267)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 31675: Remove packages from debian/control that are no longer used
Kyle M Hall [Tue, 21 Sep 2021 11:08:44 +0000 (07:08 -0400)]
Bug 31675: Remove packages from debian/control that are no longer used

As far as I can tell, we are no longer using CGI::Session::Serialize::YAML or YAML::Syck, but they are still marked dependencies for the Debian package.

Signed-off-by: Danyon Sewell <danyonsewell@catalyst.net.nz>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Jacob O'Mara <jacob.omara@ptfs-europe.com>
(cherry picked from commit 56ecfc55fc9850cd3bbfbae0e850f864c5a78fe3)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 114fa96a06660046f273248678f7d7270ea98766)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 32037: Check for existence of object before building link
Nick Clemens [Fri, 28 Oct 2022 14:43:10 +0000 (14:43 +0000)]
Bug 32037: Check for existence of object before building link

This patch adds a check on the existence of the object and passes this to the template

I also drop a level of IF by moving to ELSIF

To test:
 1 - Enable ReturnLog amd IssueLog
 2 - Checkout an item to a patron
 3 - Return it
 4 - View 'Modification log' tab of the borrwer
 5 - Note item links, test them, they work
 6 - Delete the item
 7 - Reload and try links again, they do not work
 8 - Apply patch
 9 - Reload, no more links
10 - Checkout and return another item
11 - This one has links, and they work as before

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 03c8725b4e253faf87ca3aeda71ce8b59d4efdb0)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 21d01baebcdacfb16c1fbd9ee0bb1a05d3c5837b)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 31881: Fix search link in MARC view
Fridolin Somers [Thu, 20 Oct 2022 00:18:20 +0000 (14:18 -1000)]
Bug 31881: Fix search link in MARC view

In framework a subfield can be defined with a link (with a search field).
This create an hyperlink in MARC view.
Currently with Elasticsearch the link does not work because search query contains 'field,phr:',
which is useless since the link contains 'idx=field,phr'.
With Zebra looks like the idx param is ignored.

Test plan :
1) Use Elasticsearch search engine
2) Edit subfield 245$a in default framework
3) Enter 'title' in 'Link'
4) Save
5) Create a record with default framework with 245$a = 'The Fifth Elephant'
6) Go to MARC view
7) Click on link in 245$a
8) You find the record

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 535936ea9c23ad022972150fc0f396b450d3cd2f)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 7fe444dae327ad2c7a025e76dc32628fe3af6fdf)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 32016: Remove debug console.log
Thibaud Guillot [Mon, 7 Nov 2022 08:56:38 +0000 (09:56 +0100)]
Bug 32016: Remove debug console.log

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

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 556fe3af0c6b29c80afd487679aff470849fd8cc)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 32016: Fix clear filter button behavior
Thibaud Guillot [Thu, 27 Oct 2022 12:15:19 +0000 (14:15 +0200)]
Bug 32016: Fix clear filter button behavior

For example, if you filter by global search input a datatable which saves its previous state when you want to return to this datatable, the backup is recovered in a cookie but the "clear filter" button is disabled because for it the input is empty, the verification of the recovery of the cookie not being made.

When loading I therefore added the verification of the cookie and if the search value is not empty then the button can be activated.

Test plan:

1) Be sure to have some orders and baskets which can be received
2) Go to 'cgi-bin/koha/acqui/booksellers.pl' and click on 'Receive
shipments'
3) Enter something in global search
4) Go to receive and cancel or save to be back on datatable
5) See that you cannot remove your previous input by the 'clear filter'
button
6) Apply this patch
7) Repeat steps 3) and 4)
8) See that now you can remove your search

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>
https://bugs.koha-community.org/show_bug.cgi?id=31881
(cherry picked from commit a054207896610e02ab26a2c6447509d64685094a)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit b14493c9088c2e704328065d5e3cffbd664b6faf)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 32622: Fix Auth.t on D10
Jonathan Druart [Fri, 13 Jan 2023 11:15:15 +0000 (12:15 +0100)]
Bug 32622: Fix Auth.t on D10

It's caused by a version mismatch of Test::MockModule with D10,
which does not have this commit: https://github.com/geofffranks/test-mockmodule/commit/fef9e742e45e2437e3449eea9970d70555d44bff

We should remove the chaining here.

Test plan:
Confirm that Auth.t still pass, and is fixed on D10

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit d3b4edf009ca7a29341f2dc8a8cebfdc807bad6d)
Signed-off-by: Jacob O'Mara <jacob.omara@ptfs-europe.com>
(cherry picked from commit b36b7d57519a3d471292e47551ace1aef59d7de6)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 3622b51abb082bb009ed6568454ddfff17a3c522)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 31873: Check ->find before calling ->safe_delete
Marcel de Rooy [Wed, 19 Oct 2022 13:48:18 +0000 (13:48 +0000)]
Bug 31873: Check ->find before calling ->safe_delete

When there is no item, you cannot safely delete it :)

Resolve this warning:
  Can't call method "safe_delete" on an undefined value at /usr/share/koha/cataloguing/additem.pl line 379
(Line numbers may vary across versions.)

Test plan:
Open item editor.
Add a new item.
Add another tab with same form. Delete new item.
Go back to former tab. Try to delete again.
You should see an alert now on top of the form.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
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 7d8a35585b4d2047e404fb4a1ce19596737d68ab)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 65d267dd903c9158f63b4e91ff791eb0398e2849)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 29458: Fix selenium test
Jonathan Druart [Mon, 31 Jan 2022 15:39:59 +0000 (16:39 +0100)]
Bug 29458: Fix selenium test

The authentication.t selenium tests (and a couple of others) were
failing with:
Error while executing command: element not interactable: Element <input class="btn btn-primary" type="submit"> could not be scrolled into view at /usr/local/share/perl/5.32.1/Selenium/Remote/Driver.pm line 411. at /usr/local/share/perl/5.32.1/Selenium/Remote/Driver.pm line 356.

We changed the other of the form, and t::lib::Selenium::submit_form was
not getting the correct (first) form. The one from the auth modal was
retrieved and submit button was clicked. Selenium raised an error as it
is not displayed.
The ->is_displayed selenium method does not work, as per the doc
"""
Note: This does *not* tell you an element's 'visibility' property; as it still takes up space in the DOM and is therefore considered 'displayed'.
"""
https://metacpan.org/pod/Selenium::Remote::WebElement#is_displayed

"The internet" is saying we should be able to use the following in our
xpath expression: not(ancestor::div[contains(@style,'display:none')]
but it actually only works if the display:none rule is defined on the
node (not from .css). Which does not work for us.

The only solution I found is to check for the size of the element, which
is (0,0) if not effectively displayed.

Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
(cherry picked from commit 5520b8fb84f26419c6ec9f73a14cdf14f036afce)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoRevert "Fix selenium tests"
Arthur Suzuki [Fri, 13 Jan 2023 16:44:39 +0000 (17:44 +0100)]
Revert "Fix selenium tests"

This reverts commit 83805af56843d064f974f9ea034131709feaccf9.

Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoFix selenium tests
Arthur Suzuki [Fri, 13 Jan 2023 16:32:02 +0000 (17:32 +0100)]
Fix selenium tests

Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoRevert "Bug 32208: Extend Auth.t"
Arthur Suzuki [Fri, 13 Jan 2023 13:56:30 +0000 (14:56 +0100)]
Revert "Bug 32208: Extend Auth.t"

This reverts commit 5529e5a0ca43ea46e59a51bd77022b089242c795.

Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoRevert "Bug 32208: Adjust Auth.pm for relogin without perms"
Arthur Suzuki [Fri, 13 Jan 2023 13:56:03 +0000 (14:56 +0100)]
Revert "Bug 32208: Adjust Auth.pm for relogin without perms"

This reverts commit 44d991b0c492271b20d55e1e84918d70cb448c54.

Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoRevert "Bug 32208: (follow-up) Fix compile issue"
Arthur Suzuki [Fri, 13 Jan 2023 13:55:49 +0000 (14:55 +0100)]
Revert "Bug 32208: (follow-up) Fix compile issue"

This reverts commit 610644ae89b97ee27864eaff8d0f16f351356ea9.

Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 31908: [21.11.x] Fix Auth.t
Marcel de Rooy [Fri, 13 Jan 2023 08:15:05 +0000 (08:15 +0000)]
Bug 31908: [21.11.x] Fix Auth.t

Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 31908: [21.11.x] Fix Auth.pm
Marcel de Rooy [Fri, 13 Jan 2023 08:08:43 +0000 (08:08 +0000)]
Bug 31908: [21.11.x] Fix Auth.pm

Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 31908: [21.11.x] Revert "Resolve second login with another userid"
Marcel de Rooy [Fri, 13 Jan 2023 08:03:22 +0000 (08:03 +0000)]
Bug 31908: [21.11.x] Revert "Resolve second login with another userid"

This reverts commit 0a89528d580596a694b05d3853a7627ac75dd5df.

Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoMerge branch '21.11.x-security' into 21.11.x
Arthur Suzuki [Fri, 13 Jan 2023 10:02:08 +0000 (11:02 +0100)]
Merge branch '21.11.x-security' into 21.11.x

Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoBug 31064: (follow-up) Remove duplicate login button
Tomas Cohen Arazi [Thu, 5 Jan 2023 13:49:03 +0000 (10:49 -0300)]
Bug 31064: (follow-up) Remove duplicate login button

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
17 months agoBug 32208: (follow-up) Fix compile issue
Martin Renvoize [Thu, 5 Jan 2023 12:16:38 +0000 (12:16 +0000)]
Bug 32208: (follow-up) Fix compile issue

The tests are failing, so this needs some more thought.

17 months agoBug 32208: Adjust Auth.pm for relogin without perms
Marcel de Rooy [Tue, 15 Nov 2022 13:55:18 +0000 (13:55 +0000)]
Bug 32208: Adjust Auth.pm for relogin without perms

If a second login on top of a current session fails on
permissions, we should not grant access without context.

Test plan:
[1] Run t/db../Auth.t, it should pass now.
[2] Test interface with/without this patch:
    Pick two users: A has perms, B has not.
    Put two staff login forms in two tabs.
    Login as A in tab1. Login as B in tab2.
    Without this patch, B gets in and crashes.
    With this patch, B does not get in ('no perms').
    Bonus: Go to opac if on same domain. You are still
    logged in as B.

NOTE: I added a FIXME here, since you could argue about filling
the session info or otoh deleting the session. We present an
authorization failure; people may not realize that they are
still logged in (see test plan - bonus).

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 0cc7c4991c6d09492c4389be5bee9cc92b7694da)

17 months agoBug 32208: Extend Auth.t
Marcel de Rooy [Tue, 15 Nov 2022 13:53:17 +0000 (13:53 +0000)]
Bug 32208: Extend Auth.t

Test plan:
Without follow-up patch, Auth.t should fail:
    not ok 5 - No permission response
    not ok 6 - checkauth returned failure

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit a1134bfd8a55181be627aba8a7af47df27fe4484)

17 months agoBug 31908: Add selenium tests
Jonathan Druart [Fri, 11 Nov 2022 12:08:53 +0000 (13:08 +0100)]
Bug 31908: Add selenium tests

Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit e378ee05f497768d8e8720175db8421032a59f37)

17 months agoBug 31908: Resolve second login with another userid
Marcel de Rooy [Tue, 8 Nov 2022 13:40:17 +0000 (13:40 +0000)]
Bug 31908: Resolve second login with another userid

Somewhere the line undef $userid got removed.
We need it to resolve the second login situation.

Test plan:
Login in staff with user missing privileges.
On the login form login again with another staff user.
Note that you do no longer crash.

Run t/db../Auth.t
Run t/db../Koha/Auth/TwoFactorAuth.t

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 2d0a2c44e7def9002b6fc11a83c3219d070343a3)

17 months agoBug 31908: Add a test to show issue
Marcel de Rooy [Mon, 14 Nov 2022 11:07:09 +0000 (11:07 +0000)]
Bug 31908: Add a test to show issue

Test plan:
Without next patch, run Auth.t.
Should fail now before next patch resolves problem:
    not ok 2 - Login of patron2 approved
    ok 3 - Did not return previous session ID
    not ok 4 - New session ID not empty

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit d916250d31debddc4e69fd05f7d44ea38f254dda)

17 months agoBug 31908: Replace an exit by a safe_exit in Auth.pm L1314
Marcel de Rooy [Mon, 14 Nov 2022 11:09:43 +0000 (11:09 +0000)]
Bug 31908: Replace an exit by a safe_exit in Auth.pm L1314

No change in user experience. But since we can mock safe_exit,
we can enhance test results.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 7373a1e414ffc74ac17a5c2d4b03b0ee33031cda)

17 months agoFix db_revs permissions
Tomas Cohen Arazi [Fri, 23 Dec 2022 14:47:35 +0000 (11:47 -0300)]
Fix db_revs permissions

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
17 months agoUpdate release notes for 21.11.15 release
Arthur Suzuki [Fri, 23 Dec 2022 12:09:43 +0000 (13:09 +0100)]
Update release notes for 21.11.15 release

Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoIncrement version for 21.11.15 release
Arthur Suzuki [Fri, 23 Dec 2022 12:04:37 +0000 (13:04 +0100)]
Increment version for 21.11.15 release

Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
17 months agoTranslation updates for Koha 21.11.15
Koha translators [Thu, 22 Dec 2022 18:58:20 +0000 (15:58 -0300)]
Translation updates for Koha 21.11.15

17 months agoBug 31086: (follow-up) There's no ->fill in 21.11
Tomas Cohen Arazi [Fri, 23 Dec 2022 14:43:22 +0000 (11:43 -0300)]
Bug 31086: (follow-up) There's no ->fill in 21.11

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
17 months agoBug 32208: (follow-up) Fix compile issue
Martin Renvoize [Thu, 5 Jan 2023 12:16:38 +0000 (12:16 +0000)]
Bug 32208: (follow-up) Fix compile issue

The tests are failing, so this needs some more thought.

17 months agoBug 32208: Adjust Auth.pm for relogin without perms
Marcel de Rooy [Tue, 15 Nov 2022 13:55:18 +0000 (13:55 +0000)]
Bug 32208: Adjust Auth.pm for relogin without perms

If a second login on top of a current session fails on
permissions, we should not grant access without context.

Test plan:
[1] Run t/db../Auth.t, it should pass now.
[2] Test interface with/without this patch:
    Pick two users: A has perms, B has not.
    Put two staff login forms in two tabs.
    Login as A in tab1. Login as B in tab2.
    Without this patch, B gets in and crashes.
    With this patch, B does not get in ('no perms').
    Bonus: Go to opac if on same domain. You are still
    logged in as B.

NOTE: I added a FIXME here, since you could argue about filling
the session info or otoh deleting the session. We present an
authorization failure; people may not realize that they are
still logged in (see test plan - bonus).

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 0cc7c4991c6d09492c4389be5bee9cc92b7694da)

17 months agoBug 32208: Extend Auth.t
Marcel de Rooy [Tue, 15 Nov 2022 13:53:17 +0000 (13:53 +0000)]
Bug 32208: Extend Auth.t

Test plan:
Without follow-up patch, Auth.t should fail:
    not ok 5 - No permission response
    not ok 6 - checkauth returned failure

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit a1134bfd8a55181be627aba8a7af47df27fe4484)

17 months agoBug 31908: Add selenium tests
Jonathan Druart [Fri, 11 Nov 2022 12:08:53 +0000 (13:08 +0100)]
Bug 31908: Add selenium tests

Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit e378ee05f497768d8e8720175db8421032a59f37)

17 months agoBug 31908: Resolve second login with another userid
Marcel de Rooy [Tue, 8 Nov 2022 13:40:17 +0000 (13:40 +0000)]
Bug 31908: Resolve second login with another userid

Somewhere the line undef $userid got removed.
We need it to resolve the second login situation.

Test plan:
Login in staff with user missing privileges.
On the login form login again with another staff user.
Note that you do no longer crash.

Run t/db../Auth.t
Run t/db../Koha/Auth/TwoFactorAuth.t

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 2d0a2c44e7def9002b6fc11a83c3219d070343a3)

17 months agoBug 31908: Add a test to show issue
Marcel de Rooy [Mon, 14 Nov 2022 11:07:09 +0000 (11:07 +0000)]
Bug 31908: Add a test to show issue

Test plan:
Without next patch, run Auth.t.
Should fail now before next patch resolves problem:
    not ok 2 - Login of patron2 approved
    ok 3 - Did not return previous session ID
    not ok 4 - New session ID not empty

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit d916250d31debddc4e69fd05f7d44ea38f254dda)

17 months agoBug 31908: Replace an exit by a safe_exit in Auth.pm L1314
Marcel de Rooy [Mon, 14 Nov 2022 11:09:43 +0000 (11:09 +0000)]
Bug 31908: Replace an exit by a safe_exit in Auth.pm L1314

No change in user experience. But since we can mock safe_exit,
we can enhance test results.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 7373a1e414ffc74ac17a5c2d4b03b0ee33031cda)

18 months agoFix db_revs permissions
Tomas Cohen Arazi [Fri, 23 Dec 2022 14:47:35 +0000 (11:47 -0300)]
Fix db_revs permissions

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
18 months agoBug 31086: (follow-up) There's no ->fill in 21.11
Tomas Cohen Arazi [Fri, 23 Dec 2022 14:43:22 +0000 (11:43 -0300)]
Bug 31086: (follow-up) There's no ->fill in 21.11

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
18 months agoUpdate release notes for 21.11.15 release v21.11.15
Arthur Suzuki [Fri, 23 Dec 2022 12:09:43 +0000 (13:09 +0100)]
Update release notes for 21.11.15 release

Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
18 months agoIncrement version for 21.11.15 release
Arthur Suzuki [Fri, 23 Dec 2022 12:04:37 +0000 (13:04 +0100)]
Increment version for 21.11.15 release

Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
18 months agoTranslation updates for Koha 21.11.15
Koha translators [Thu, 22 Dec 2022 18:58:20 +0000 (15:58 -0300)]
Translation updates for Koha 21.11.15

18 months agoBug 27265: (QA follow-up) Typo on L99 cron script
Marcel de Rooy [Mon, 17 Oct 2022 13:08:33 +0000 (13:08 +0000)]
Bug 27265: (QA follow-up) Typo on L99 cron script

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit ae986b992dfc2299ec58f4d1c0079fbac1ec4a03)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 2438b040765a1bfb23503e64467fec878ad086b1)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
18 months agoBug 27265: (follow-up) Use existing parameter
Nick Clemens [Fri, 30 Sep 2022 12:32:25 +0000 (12:32 +0000)]
Bug 27265: (follow-up) Use existing parameter

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit a39ecfd7f766be77d92d0054364ecda65942d2ec)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 6132f9708d6c7b8da006cf7f2d12eb2e469a58a5)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
18 months agoBug 27265: Enable message queue cron to accept multiple codes and types
Kyle M Hall [Fri, 18 Dec 2020 13:45:06 +0000 (08:45 -0500)]
Bug 27265: Enable message queue cron to accept multiple codes and types

It would be nice to be able to combine several types in a single run,
but exclude others, without having to have multiple cron lines

Test Plan:
1) Apply this patch
2) Run process_message_queue.pl with a single -c parameter
3) Note behavior is unchanged
4) Run process_message_queue.pl with multiple -c parameters
5) Note all the codes specified are processed
6) Repeat 2-5 with -t for type limits

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.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 da7bcc2252666e31c64d7edaecc3fc59ead79a0d)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit b51e6cd465b8078c6757b17e9fe6b5980612381a)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
18 months agoBug 32114: Add missing html_helpers.inc
Owen Leonard [Sat, 5 Nov 2022 16:02:55 +0000 (16:02 +0000)]
Bug 32114: Add missing html_helpers.inc

This patch makes a minor modification to the OPAC
search results RSS template so that an error isn't
triggered. The html_helpers include was missing.

To test, apply the patch and perform a catalog
search in the OPAC which will return results.

At the end of the "Your search results" heading
you should see an orange RSS icon. Clicking on it
should take you to an RSS feed instead of an
error page.

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 2621f28376b0c82205f3faf5e06c1f788e6c9b2a)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 5e6d1a10bb88b79d12bc1cd39338a4e21296cabd)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
18 months agoBug 31976: Incorrect default category selected by authorized values page
Owen Leonard [Wed, 26 Oct 2022 15:52:18 +0000 (15:52 +0000)]
Bug 31976: Incorrect default category selected by authorized values page

This patch removes some obsolete code for selecting a default authorized
value category to be shown when the user first arrives on the authorized
values page. This has not been necessary since we switched to an
interface which lists all categories.

NOTE: This bug will not be reproducible if your first authorized value,
alphabetically, has no values associated with it. For instance, if you
delete all authorized values in the AR_CANCELLATION category.

To test, apply the patch and go to Administration -> Authorized values.

In the breadcrumbs menu you should see "Home -> Administration ->
Authorized values."

Clicking any of the authorized value categories in the list should take
you to a view of that category's values.

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 0ec29e5d4ecdf5dd3156b53320eac1250d065e3b)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 0b0dcefd5aea5a6d7b551372557eb56ec6859aa8)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
18 months agoBug 31196: Remove 'default_value_for_mod_marc-' clear_from_cache calls
Jonathan Druart [Wed, 20 Jul 2022 07:38:57 +0000 (09:38 +0200)]
Bug 31196: Remove 'default_value_for_mod_marc-' clear_from_cache calls

We are seeing the following lines several times in the codebase
  $cache->clear_from_cache("default_value_for_mod_marc-");

But values are never set for this key.

Test plan:
Ask you, "Is the above correct?"
Use the correct 'git grep' and 'git log' and confirm the assertion.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 93d44d18759d43a09f6c623ffe4fa81dca4dcaa2)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 867c03bf6abba10eff72d125efca02c72ecba2e0)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
18 months agoBug 19693: (QA follow-up) Replace changed tag test
Marcel de Rooy [Fri, 7 Oct 2022 08:41:20 +0000 (08:41 +0000)]
Bug 19693: (QA follow-up) Replace changed tag test

The test
  $MARCfrom->field('1..', '2..'))[0]->tag ne ($MARCto->field('1..', '2..'))[0]->tag
is not completely consistent with following code in sub merge.
I decided to get the authtype code from the old record that comes
from Koha and should include the type.
Remaining changes refer to indentation/comments.

Test plan:
Run t/db_dependent/Authority/Merge.t
Note: The test actually could be extended a bit for mocking MARC
flavor, but needs some additional framework support to work.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit d7d33744ba34ef95aa3845ca4160abdece4d0f7a)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 90e4cdb752601d273aa1807a88330da29034305c)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
18 months agoBug 19693: Update of an authority record creates inconsistency when the heading tag...
Janusz Kaczmarek [Mon, 25 Jul 2022 20:46:58 +0000 (22:46 +0200)]
Bug 19693: Update of an authority record creates inconsistency when the heading tag is changed

In those rare cases when authorities are updated by an external agency (or
even internally, by reviewing and correcting an exported authority file)
when the heading tag will be changed (seems odd but happens:

111 Congress ==> 110 Corporate body.Congress ;
100 Person ==> 110 Corporate body (a company named with person's name ;
151 City--object ==> 150 Object (city) etc.)

and then the authority record in Koha database will be updated with
bulkmarcimport or by calling directly ModAuthority from a custom script,
the merge function "doesn't know" that the change to the authority type
has been made and, consequently, doesn't adequately change the tag in
related fields in biblio records (as it would if two different records
with different authtypecode were merged with Koha interface).

This is because at the moment when merge function is being called
by ModAuthority:
Koha::Authority::Types->find($autfrom->authtypecode)
Koha::Authority::Types->find($authto->authtypecode)
both have the same value (because $mergefrom == $mergeto).

Therefore in case when $mergefrom == $mergeto and the heading tag changes,
$authtypefrom and $authfrom calculated in merge in the ordinar way are
misleading and should not be taken unto consideration.

Test plan:
==========

1. run t/db_dependent/Authority/Merge.t
2. you should see problems in "Test update A with modified heading tag
   (changing authtype)"
3. apply the patch
4. run t/db_dependent/Authority/Merge.t again
5. the test should pass

Alternatively:

1. have an authority record used in biblio;
   export it to file;
   change 1XX heading tag to a different (but reasonable) value
   and possibly change also the content of the heading
   (one can delete also 942 but it doesn't matter);
   make bulkmarcimport.pl -a -update -file <modified_auth_file> and
   see that the tag in biblio record has not been changed (whereas
   the type of authority record did change);

2. make orders in database (so that the authority type and the tag of
   the field in biblio record correspond); apply the patch;

3. repeat the test from 1.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.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 03da66ce20ea6b8dd9e46841c3c8df427efbe4e4)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 3cf8c3881d86f44cc4c35d9572a7e119c5dcf399)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
18 months agoBug 19693: Add test sub to Merge.t
Janusz Kaczmarek [Mon, 25 Jul 2022 20:27:32 +0000 (22:27 +0200)]
Bug 19693: Add test sub to Merge.t

In those rare cases when authorities are updated by an external agency (or
even internally, by reviewing and correcting an exported authority file)
when the heading tag will be changed (seems odd but happens:

111 Congress ==> 110 Corporate body.Congress ;
100 Person ==> 110 Corporate body (a company named with person's name ;
151 City--object ==> 150 Object (city) etc.)

and then the authority record in Koha database will be updated with
bulkmarcimport or by calling directly ModAuthority from a custom script,
the merge function "doesn't know" that the change to the authority type
has been made and, consequently, doesn't adequately change the tag in
related fields in biblio records (as it would if two different records
with different authtypecode were merged with Koha interface).

This is because at the moment when merge function is being called
by ModAuthority:
Koha::Authority::Types->find($autfrom->authtypecode)
Koha::Authority::Types->find($authto->authtypecode)
both have the same value (because $mergefrom == $mergeto).

Therefore in case when $mergefrom == $mergeto and the heading tag changes,
$authtypefrom and $authfrom calculated in merge in the ordinar way are
misleading and should not be taken unto consideration.

Test plan:
==========

1. run t/db_dependent/Authority/Merge.t
2. you should see problems in "Test update A with modified heading tag
   (changing authtype)"
3. apply the patch
4. run t/db_dependent/Authority/Merge.t again
5. the test should pass

Alternatively:

1. have an authority record used in biblio;
   export it to file;
   change 1XX heading tag to a different (but reasonable) value
   and possibly change also the content of the heading
   (one can delete also 942 but it doesn't matter);
   make bulkmarcimport.pl -a -update -file <modified_auth_file> and
   see that the tag in biblio record has not been changed (whereas
   the type of authority record did change);

2. make orders in database (so that the authority type and the tag of
   the field in biblio record correspond); apply the patch;

3. repeat the test from 1.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.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 4d75a9b3b786d75e1afb5f66e51f48e9e503d454)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 1ac516addb95cfaf7778a02387722edfb2b21a38)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
18 months agoBug 31459: (QA follow-up) Add missing TT filters
Katrin Fischer [Mon, 17 Oct 2022 19:24:32 +0000 (19:24 +0000)]
Bug 31459: (QA follow-up) Add missing TT filters

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
https://bugs.koha-community.org/show_bug.cgi?id=31559
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 6cc3a85eb13042c49a9ba1742fce0f0741949fa5)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 246ee24210b2f004d6af81ab47a5f4db42724646)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
18 months agoBug 31459: (follow-up) Return 'Keep current' option
Nick Clemens [Mon, 17 Oct 2022 11:56:57 +0000 (11:56 +0000)]
Bug 31459: (follow-up) Return 'Keep current' option

This patch restores the option to keep current budget, in the case that receiver can receive, but cannot order on current budget

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
https://bugs.koha-community.org/show_bug.cgi?id=31559
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit b86e5b542378c19ec8675a9beeb8d856c9b057c8)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit c005ef2108f06146995b507f682c09ba2c3b30e8)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
18 months agoBug 31459: (follow-up) Preserve budget period display
Nick Clemens [Wed, 12 Oct 2022 14:55:55 +0000 (14:55 +0000)]
Bug 31459: (follow-up) Preserve budget period display

This patch adds a level to the budget_loops and displays the budgets
as optgroups for the funds

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
https://bugs.koha-community.org/show_bug.cgi?id=31559
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 2a22c13cf38b45c145fc3ece7d044fefb1dd78e5)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 63a56840208480efbd9615f81efdc8b8e9925904)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
18 months agoBug 31459: Use the same dropdown as when adding orders to a basket
Nick Clemens [Thu, 25 Aug 2022 11:26:33 +0000 (11:26 +0000)]
Bug 31459: Use the same dropdown as when adding orders to a basket

Current order receive code loops over each budget period and gets the hierarchy, this
is slow when systems have many budgets. Additionally, the list includes inactive items
by default

We can switch to a single call, and add consistency by adopting the same dropdown as used
when placing an order

To test:
1 - Add some budgets with funds - ensure you have at least one inactive budget and fund
2 - Place an order, observe the fund selection menu
3 - Close basket, receive order, observe the fund menu
4 - Apply patch
5 - Cancel receipt
6 - Receive again
7 - Observe fund menu, confirm it matches the order placing menu
8 - Confirm inactive are not displayed by default, but are when button is checked

Signed-off-by: Joonas Kylmälä <joonas.kylmala@iki.fi>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
https://bugs.koha-community.org/show_bug.cgi?id=31559
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 24e7703aef42b2e9e7900dc36eb5c8f1d3f73e4f)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 382e80b7377f2f000b4ae94f4526b608ed80fe71)
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
18 months agoBug 15048: Index all possible searched subfields for index-term-genre
Nick Clemens [Thu, 23 Jun 2022 11:40:44 +0000 (11:40 +0000)]
Bug 15048: Index all possible searched subfields for index-term-genre

Currently we only index a - but we can setup the system such that avxyz are searched

To test:
 1 - define both a 655$a *and* 655$x value in a bib, save, reindex
 2 - Set system preferences:
      TraceSubjectSubdivisions: Include
      TraceCompleteSubfields: Force
 3 - View the record edited above in the opac
 4 - Click on the subject heading
 5 - No results found
 6 - Copy zebra files:
  sudo cp ./etc/zebradb/marc_defs/marc21/biblios/biblio-koha-indexdefs.xml \
  /etc/koha/zebradb/marc_defs/marc21/biblios/biblio-koha-indexdefs.xml
  sudo cp etc/zebradb/marc_defs/marc21/biblios/biblio-zebra-indexdefs.xsl \
  /etc/koha/zebradb/marc_defs/marc21/biblios/biblio-zebra-indexdefs.xsl
 7 - restart all and reindex
 8 - Click on the subject heading in OPAC
 9 - Sucess!
10 - Repeat with other fields (vyz)
11 - Repeat under ES, reindexing and resetting mappings

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 57ea65e725f4208274023c4cdc63fd90ab6014ed)

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