koha.git
3 years agoBug 27351: DBRev 20.12.00.002
Jonathan Druart [Fri, 8 Jan 2021 14:21:22 +0000 (14:21 +0000)]
Bug 27351: DBRev 20.12.00.002

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 555080c1ddb5178d9673b22fde385219d0fd22ec)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27351: (QA follow-up) Use skeleton.perl and add description
Nick Clemens [Fri, 8 Jan 2021 13:35:38 +0000 (13:35 +0000)]
Bug 27351: (QA follow-up) Use skeleton.perl and add description

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit e6426a540bfdc64c55abc824c901d0ed24dc8779)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27351: Fix UsageStatsCountry system preference wrong type
Fridolin Somers [Wed, 6 Jan 2021 14:32:37 +0000 (15:32 +0100)]
Bug 27351: Fix UsageStatsCountry system preference wrong type

UsageStatsCountry system preference type 'YesNo' is wrong since it has
several values.
Change to 'Choice'.
Looks like this error whas only in updatedabase 3.17.00.030.

Test plan :
1) Run atomic update
2) Check in database 'UsageStatsCountry' system preference type is
   'Choice'

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit bbab6615637c60c757df79bdc695a606622ed96a)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27164: Fix item search CSV export
Fridolin Somers [Mon, 7 Dec 2020 16:03:40 +0000 (17:03 +0100)]
Bug 27164: Fix item search CSV export

In item search CSV export, data cells are exported with double quotes.
There should also be double quotes in header cells.
Also some spaces can be removed.
Delimiter must be from system preference 'delimiter'.
TT filter must be $raw not html, only double quotes must be espaped by
duplication of it.

This may help to open the CSV with any table/calc software.

Test plan :
1.0) Create a record with title : Laurel & "Hardy"
1.2) Create an item on this record
2.0) Without patch
2.1) Perform an item search on title 'Laurel'
2.2) Export as a CSV file and save the file locally
2.3) Open the file with a table/calc software
3.0) Apply patch
3.1) Perform same item search
3.2) Export as a CSV file and save the file locally
3.3) Open the file with a table/calc software
4.0) Compare files with diff/meld
=> you see double quotes arround header cells
   and removal of space after coma
4.1) Check that delimiter is from system preference 'delimiter'
4.2) In table/calc software they should look the same

Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 1700c393b1de3c32b3b572efd0cf935255813e2b)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26417: Remove warn in Koha::Patron is_valid_age
Fridolin Somers [Wed, 9 Sep 2020 11:54:34 +0000 (13:54 +0200)]
Bug 26417: Remove warn in Koha::Patron is_valid_age

In Koha::Patron is_valid_age the is a compare : $age < $low
But $low may be undef.
It generates a warn :
Use of uninitialized value $low in numeric lt (<)

Needs a test like for $high.

Test plan :
1) Run prove t/db_dependent/Koha/Patrons.t
2) Edit a patron catetory, empty "Age required" and save
3) Edit a patron of this category
4) Check in logs you don't see "Use of uninitialized value $low in numeric lt (<)"

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit f042c804cda09deaee614f73ec9a888bea4ab99a)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27292: Add TablesSettings directive to fix columns_settings_borrowers_table
David Cook [Wed, 23 Dec 2020 04:41:58 +0000 (04:41 +0000)]
Bug 27292: Add TablesSettings directive to fix columns_settings_borrowers_table

This patch adds the USE TablesSettings directive which allows the plugin
to be invoked to fill the columns_settings_borrowers_table variable.

Test plan:
0. Do not apply the patch
1. Go to http://localhost:8081/cgi-bin/koha/reserve/request.pl?borrowernumber=51&biblionumber=29
2. View source on the page and note columns_settings_borrowers_table has no value assigned
2. Apply the patch
3. In a new tab, go to http://localhost:8081/cgi-bin/koha/reserve/request.pl?borrowernumber=51&biblionumber=29
4. Note that nothing has changed on the surfeace
5. View source ont he page and note columns_settings_borrowers_table now has a value assigned

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 31ec92bfab16654b2a3f763d141559d0f882a1e7)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27245: Replace AutoCommit=0 with txn_begin in bulkmarcimport.pl
Jonathan Druart [Fri, 18 Dec 2020 13:41:12 +0000 (14:41 +0100)]
Bug 27245: Replace AutoCommit=0 with txn_begin in bulkmarcimport.pl

To prevent
DBD::mysql::db begin_work failed: Already in a transaction at /usr/share/perl5/DBIx/Class/Storage/DBI.pm line 1588, <GEN45> line 1.

Test plan:
1 - Export more than 100 records
2 - Use bulkmarcimport (with -commit=10) to import them
    perl misc/migration_tools/bulkmarcimport.pl -b -file testbmi.xml -v -m=MARCXML --commit=10
3 - Modify a record to make the import fail (for instance having a too long
lccn)
4 - Use bulkmarcimport (with -commit=10) to import them
    perl misc/migration_tools/bulkmarcimport.pl -b -file testbmi.xml -v -m=MARCXML --commit=10
5 - Notice that the import stops but that the imported record are imported (apart from the last batch of 10)

Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 4a90c0b647fdfdb0a39b43f6b10adba3bca53215)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26367: Prevent warn about undefined values when record level hold has an itemtype
Nick Clemens [Thu, 3 Sep 2020 12:15:57 +0000 (12:15 +0000)]
Bug 26367: Prevent warn about undefined values when record level hold has an itemtype

To test:
 1 - set AllowHoldItemTypeSelection to 'Allow'
 2 - Find a patron from Library A
 3 - Find a record with an item from Library A
 4 - Place a title level hold with itemtype specified for a delivery at Library A for patron and record above
 5 - perl misc/cronjobs/holds/build_holds_queue.pl
 6 - There are warns:
 Use of uninitialized value in hash element at /kohadevbox/koha/C4/HoldsQueue.pm line 523.
 Use of uninitialized value in string eq at /kohadevbox/koha/C4/HoldsQueue.pm line 523
 7 - Apply this patch
 8 - perl misc/cronjobs/holds/build_holds_queue.pl
 9 - No more warns!
10 - prove -v t/db_dependent/HoldsQueue.t
11 - All tests pass!

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit d2e2a3975fb66d8c2e2766ecbe014fb71952e6d0)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26367: Unit test
Nick Clemens [Thu, 3 Sep 2020 12:06:51 +0000 (12:06 +0000)]
Bug 26367: Unit test

This warn only appears when:
  The borrower and item branches match
  AND
  The hold fulfillment policy is any or the pickupbranch matches the items branch specified by hold_fulfillment_policy
  AND
  The request has an itemtype set

To trigger we simply add some itemtype to existing hold requests in the test

To test:
1 - prove -v t/db_dependent/HoldsQueue.t

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit cd83fbe58d6f3ee2cd15880acaaccd495007c83f)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26364: Don't skip records that match the isbn we passed
Nick Clemens [Wed, 9 Sep 2020 13:24:20 +0000 (13:24 +0000)]
Bug 26364: Don't skip records that match the isbn we passed

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 86617ba7cd54cbeb7f2241468cd3e10f20d2bc27)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26364: Remove false matches on isbn
Nick Clemens [Wed, 9 Sep 2020 13:33:17 +0000 (13:33 +0000)]
Bug 26364: Remove false matches on isbn

The test here was returning 0590353403 when searched for 9780590353403
because of the regex matching

Koha doesn't work this way unless SearchWithISBNVariations is set to 'search'
and you use a dropdown to select ISBN for searching

To test:
1 - Search catalog for nb=9780590353403
2 - Confirm you don't have results, or delete the records with results
3 - Add isbn 0590353403 to a record
4 - Repeat search, fails
5 - Enable SearchWithISBNVariations
6 - Repeat search, fails
7 - Go to advanced search, select ISBN, search for 9780590353403
8 - Get results

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 854d404a9c161845731d39980165f8d641713a80)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26364: Remove useless condition
Nick Clemens [Wed, 9 Sep 2020 13:40:37 +0000 (13:40 +0000)]
Bug 26364: Remove useless condition

$response_data is a hash with one key, content

Why are we checkiing it against a string?

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 8b22c3846caa2004b411c6bd19a5d41bc602e704)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26364: Don't discard the passed isbn
Nick Clemens [Wed, 9 Sep 2020 13:44:45 +0000 (13:44 +0000)]
Bug 26364: Don't discard the passed isbn

I don't know, if we get rid fo this check we can now check the db for the same isbn we passed

This may be useful as we may want to see the biblio with the same isbn as long as number is different?

This will make tests fail

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit feb7f5f6dd89f58f3b027898705fb0fa57a051ab)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26364: Adjust unit tests
Nick Clemens [Wed, 9 Sep 2020 14:34:26 +0000 (14:34 +0000)]
Bug 26364: Adjust unit tests

We shouldn't rely on knowing exactly which ISBNs we get, we should specifically
check for what we do or don't expect.

I believe we should return biblios that have the same isbn we passed, as it signlas we have another
biblio in the catalog that matches the one we are on.

To test:
prove -v t/db_dependent/XISBN.t

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit d9063ba246bd020de83bc67964a08855a73ccb24)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27252: DBRev 20.11.01.001
Jonathan Druart [Thu, 7 Jan 2021 14:36:20 +0000 (14:36 +0000)]
Bug 27252: DBRev 20.11.01.001

Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27252: Add deprecation warning, cross_fields pref, and add version to ES info
Nick Clemens [Wed, 16 Dec 2020 18:50:55 +0000 (18:50 +0000)]
Bug 27252: Add deprecation warning, cross_fields pref, and add version to ES info

This patch prepares Koha to officially no longer support Elasticsearch 5.X

It adds a new system preference 'ElasticsearchCrossFields' to allow users to choose whether or not
to enable this feature

It updates the about page to add a deprecation warning if a site is running ES5

To test:
 1 - Be running Koha with Elasticsearch 5.X
 2 - Attempt to search
   Error: Unable to perform your search. Please try again.
 3 - Apply patch
 4 - Update database
 5 - Searching works
 6 - Find syspref 'ElasticsearchCrossFields'
 7 - Enable it
 8 - Searching is now broken
 9 - Check the about page
 10 - you can now see the Elasticsearch version
 11 - The systeminformation tab has a deprectaion warning
 12 - Set SearchEngine preference to 'Zebra'
 13 - View the about page - no warnings
 14 - Test again with ES6 - searching should "work" with either pref setting
 15 - There should be no warning on about pages

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 181267bd2bf66a5efd065b48149eed4ff1044599)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26847: (follow-up) fix get_attribute() call
Victor Grousset/tuxayo [Tue, 5 Jan 2021 12:56:32 +0000 (13:56 +0100)]
Bug 26847: (follow-up) fix get_attribute() call

Since the upgrade to Selenium 3 in bug 27055, an additional parameter is
required for get_attribute() to actually work.
https://metacpan.org/pod/Selenium::Remote::WebElement#get_attribute

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit de739259298b323bb881b62b1bc96bc9e3589496)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26847: Add data-categorycode to opac pages
Martin Renvoize [Wed, 4 Nov 2020 14:53:57 +0000 (14:53 +0000)]
Bug 26847: Add data-categorycode to opac pages

This patch adds the data-categorycode attribute to the loggedinuser span
for all pages in the opac.

Test plan
1/ Apply first patch, varify unit test fails.
2/ Apply second patch, varify unit test now passes.
3/ Navigate to opac and login
4/ Varify that data-categorycode is present in the loggedinuser span in
the client.

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit c7e228c60cfe352ccd7f1dee54990dcaa22c0240)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26847: Add UI test for categorycode in masthead
Martin Renvoize [Wed, 4 Nov 2020 14:45:27 +0000 (14:45 +0000)]
Bug 26847: Add UI test for categorycode in masthead

This test adds a regression test for the addition of categorycode
into the masthead of the staff client.

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 69bf6e80cf4c35601dbeea871c973c7ce3997e41)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 24863: QueryFuzzy syspref says it requires Zebra but ElasticSearch has some support.
Lisette Scheer [Sat, 24 Oct 2020 19:09:59 +0000 (19:09 +0000)]
Bug 24863: QueryFuzzy syspref says it requires Zebra but ElasticSearch has some support.

This patch updates the description of the QueryFuzzy system preference
to make it more clear how it works with Zebra and how Elasticsearch has
some amount of fuzzy available for searches.

To test:
1. Go to administration
2. Search for QueryFuzzy
3. Observe the current description, which only includes Zebra.
4. Apply patch
5. Repeat steps 1-2
6. Observe the updated description.
7. Sign off

Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 137cf586551be4affb112eba3a61bc49b0099342)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 24541: Purge old messages
Didier Gautheron [Thu, 30 Jan 2020 09:35:31 +0000 (10:35 +0100)]
Bug 24541: Purge old messages

misc/cronjobs/cleanup_database.pl provides some database cleanup.

This patch adds cleanup for messages table.

Test plan :
- Count messages : select count(*),date(message_date) from  messages group by date(message_date);
- Run cleanup : misc/cronjobs/cleanup_database.pl -v --confirm --messages 365
- Recount messages

Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit ead1493f5b3baedcc1eaf062991b8792aba7f231)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 25462: Compiled CSS
Jonathan Druart [Mon, 4 Jan 2021 15:31:27 +0000 (16:31 +0100)]
Bug 25462: Compiled CSS

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit ae1ae478fd5004ba8527822aef9ce5b45b061a33)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 25462: (follow-up) Remove <br /> as it is no longer needed
Martin Renvoize [Thu, 5 Nov 2020 11:34:54 +0000 (11:34 +0000)]
Bug 25462: (follow-up) Remove <br /> as it is no longer needed

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 847ef673440733c3e76bf4c520838bf8fa3db3eb)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 25462: Show shelving location on a new line after home library (OPAC)
Owen Leonard [Tue, 12 May 2020 12:44:45 +0000 (12:44 +0000)]
Bug 25462: Show shelving location on a new line after home library (OPAC)

This patch updates the OPAC CSS to move the shelving location a
new line after the 'Home library' in list of holdings on the
bibliographic detail page.

To test, apply the patch and rebuild the OPAC CSS
(https://wiki.koha-community.org/wiki/Working_with_SCSS_in_the_OPAC_and_staff_client).

- Locate a title in the OPAC which has items with a shelving
  location.
- View the detail page for that title. In the table of holdings,
  confirm that the shelving location information is on a separate line
  from the home library information.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 0da7cd5359bd1b2b96b2fd9204a07e5e10b45948)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 25462: Show shelving location on a new line after home library (staff client)
Owen Leonard [Tue, 12 May 2020 12:43:21 +0000 (12:43 +0000)]
Bug 25462: Show shelving location on a new line after home library (staff client)

This patch updates the staff client CSS to move the shelving location a
new line after the 'Home library' in list of holdings on the
bibliographic detail page.

To test, apply the patch and rebuild the staff client CSS
(https://wiki.koha-community.org/wiki/Working_with_SCSS_in_the_OPAC_and_staff_client).

- Locate a title in the staff client which has items with a shelving
  location.
- View the detail page for that title. In the table of holdings,
  confirm that the shelving location information is on a separate line from
  the home library information.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 088e798ea33b43c7dfe9a3aa3e6cdd895d32dc9c)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 25462: Shelving location should be on a new line in holdings table
David Roberts [Tue, 12 May 2020 09:56:28 +0000 (09:56 +0000)]
Bug 25462: Shelving location should be on a new line in holdings table

This patch moves the shelving location a new line after the Home library
in the holdings table.

To test:

1) Assign a shelving location with a long description to an item.
2) See that it displays on the same line as the Home Library in /cgi-bin/koha/catalogue/detail.pl
3) Apply the patch
4) Check that the shelving location is now on a new line

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 287d4aae129cb2958eae67073b9208b7db94bef4)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26875: (follow-up) Fix error message ("greater or equal")
Victor Grousset/tuxayo [Mon, 28 Dec 2020 17:28:58 +0000 (18:28 +0100)]
Bug 26875: (follow-up) Fix error message ("greater or equal")

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit a7bc53d9431b32d6560f3cf987d2c4e30c6cf34c)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26875: Allow printing of just one barcode in batch
Andrew Fuerste-Henry [Fri, 30 Oct 2020 16:25:05 +0000 (16:25 +0000)]
Bug 26875: Allow printing of just one barcode in batch

To test:
1- go to the Print Barcode Range page
2- enter From=1 and To=1
3- confirm error "Must be greater than from value."
4- apply patch, restart, reload page
5- enter From=1, To=1
6- confirm no error
7- change From to 2, error reappears

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit e581255eccb1b6851735f9eb2c297dd0c01ffa06)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27085: Corrections in overdue_notices.pl help text
Timothy Alexis Vass [Wed, 25 Nov 2020 07:45:39 +0000 (07:45 +0000)]
Bug 27085: Corrections in overdue_notices.pl help text

-library      <branchname>     only deal with overdues from this library (repeatable : several libraries can be given)
Should be <branchcode>

Help text should also be proper sentences.

To test:
0) Run misc/cronjobs/overdue_notices.pl -h
1) Check that the text is now:
   -library      <branchcode>     Only deal with overdues from this library.
2) Check that the rest of the help text are proper sentences,
   with leading capital letter and punctuation.
3) Sign off.

Sponsored-by: Lunds Universitetsbibliotek
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 1ad7d034e65d0b518335086345f2f533d1898c56)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 25954: Prevent two elements with id="description" in the DOM
Jonathan Druart [Mon, 4 Jan 2021 14:09:19 +0000 (15:09 +0100)]
Bug 25954: Prevent two elements with id="description" in the DOM

It also fixes t/db_dependent/selenium/administration_tasks.t

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit b13982d6a52dc9660e0d35ccfc40193774a336a4)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 25954: Compiled CSS
Jonathan Druart [Mon, 4 Jan 2021 12:59:38 +0000 (13:59 +0100)]
Bug 25954: Compiled CSS

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 4d7b353b628077d99d7503a3afb343e315d00e1e)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 25954: (QA follow-up) Correct label "for" attribute in authorities search
Josef Moravec [Tue, 17 Nov 2020 17:34:12 +0000 (17:34 +0000)]
Bug 25954: (QA follow-up) Correct label "for" attribute in authorities search

Change it from first select box to text input for consistancy with other
search forms

Test plan:
1) Apply the patch
2) Go to authorities search
3) Confirm the labels in all search tabs are linked to text input field

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 3b2bd038279911e8f29b376b2e70a2b9f9b6bb66)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 25954: (follow-up) Correct label "for" attribute
Owen Leonard [Thu, 6 Aug 2020 19:09:43 +0000 (19:09 +0000)]
Bug 25954: (follow-up) Correct label "for" attribute

This patch updates a couple of search include forms to change the "for"
attribute of the label. Although "idx" is the first field in this
situation, the label's text applies to the keyword field so it should
give focus to the keyword field.

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 1920c92d811dc5477a9cb1064f6f7e2dd473a380)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 25954: Replace paragraph tags with labels in header search forms
Owen Leonard [Wed, 8 Jul 2020 13:40:37 +0000 (13:40 +0000)]
Bug 25954: Replace paragraph tags with labels in header search forms

This patch replaces instances of <p class="tip"> with <label
class="tip"> in header search forms where there is not already a label
tag corresponding to the first form field.

In cases where there is already a label on the first form field the <p>
is kept.

To test, apply the patch and rebuild the staff client CSS
(https://wiki.koha-community.org/wiki/Working_with_SCSS_in_the_OPAC_and_staff_client)

Test the header search forms on the following pages:

 - Staff interface home page
 - Acquisitions home
 - Acquisitions -> Vendor -> Contracts
 - Acquisitions -> Vendor -> Add to basket -> From a suggestion
 - Advanced catalog search
 - Authorities
 - Administration
 - Administration -> Funds
 - Administration -> Desks (UseCirculationDesks must be enabled)
 - Administration -> Cities and towns
 - Administration -> Currencies and exchange rates
 - Administration -> Patron categories
 - Administration -> Z39.50/SRU servers
 - Catalog -> Search results
 - Cataloging
 - Circulation
 - Circulation -> Check in
 - Patrons
 - Serials
 - Tools -> Notices and Slips

In each case, check that the search form labels work as expected to move
focus to the corresponding form field.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 38bc9eb2a8c01c8625b1c33c7e098cd0022b2710)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27178: Add 'str' namespace to exclude-result-prefixes
Jonathan Druart [Thu, 10 Dec 2020 10:35:50 +0000 (11:35 +0100)]
Bug 27178: Add 'str' namespace to exclude-result-prefixes

Some nodes in the generated HTML document contain the 'str' namespace.
For instance, at the OPAC on the search result list, you can see:
<a xmlns:str="http://exslt.org/strings" href="/cgi-bin/koha/opac-detail.pl?biblionumber=18566&amp;query_desc=kw%2Cwrdl%3A%20spin" class="title">

The solution is to add 'str' to exclude-result-prefixes.
From https://developer.mozilla.org/en-US/docs/Web/XSLT/Element/stylesheet
"""
Specifies any namespace used in this document that should not be sent to the output document. The list is whitespace separated.
"""

Test plan:
0. Don't apply this patch
1. Launch a search at the OPAC
2. Inspect the title link for the records
=> Note the 'xmlns:str' attribute on tag "a"
3. Apply this patch
4. restart_all
5. Repeat 1. and 2.
=> Note that the attribute is gone now.

QA will check that no other occurrences is missing (note that one
NORMARC xsl is missing it, but NORMARC is deprecated)

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 71aaf8b458254921022b5e14440f158c8c7eb7bd)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27168: Sort most popular by number of issues desc
Jonathan Druart [Wed, 9 Dec 2020 15:27:41 +0000 (16:27 +0100)]
Bug 27168: Sort most popular by number of issues desc

It seems that there is a weird behavior when the title is used as a
second sort

Test plan:
Turn on OpacTopissue
Make sure the table always displays entries sorted by number of issues
desc

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit b42e08029e91fdb2d3cb9a8725314236d862269c)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26953: Hide phone and itiva from "Overdue notice/status triggers"
Jonathan Druart [Wed, 2 Dec 2020 09:52:27 +0000 (10:52 +0100)]
Bug 26953: Hide phone and itiva from "Overdue notice/status triggers"

If the prefs are off we should not display the checkboxes

Test plan:
1. Turn off PhoneNotification and TalkingTechItivaPhoneNotification
2. Go to the "Overdue notice/status triggers" and confirm that phone and
itiva columns are not displayed
3. Turn the prefs on and confirm the checkboxes are now displayed

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 6ef7cbededc424e93622b30832ebc7f609d7308d)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27310: Remove CSS float on 'Visibility' in framework edition
Fridolin Somers [Tue, 29 Dec 2020 10:55:25 +0000 (11:55 +0100)]
Bug 27310: Remove CSS float on 'Visibility' in framework edition

In administration > framework edition > subfield edition, 'Visibility' label as a CSS rule float none.
This seems obsolete, removing it will align label like others.

Test plan :
1) Go to Administration
2) Edit any framework
3) Edit any subfield
4) Look at 'Visibility'
=> Without patch label is sticked to the left
=> With patch label postion is like others

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 48b39167bb2f7fc06ece57d0fbcf94fe949b426a)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27031: Use Koha.Preference() more often in header.inc and js_includes.inc
David Cook [Thu, 24 Dec 2020 00:07:04 +0000 (00:07 +0000)]
Bug 27031: Use Koha.Preference() more often in header.inc and js_includes.inc

This patch uses the Koha.Preference() macro more often in key includes.
(In the longer term, it will help reduce dependency in problematic C4::Auth code.)

Test plan:
0. Apply patch
1. Go to http://localhost:8081/cgi-bin/koha/mainpage.pl
2. Note "Cart" link in nav bar
3. Click "Cart" and note "Your cart is currently empty" text
4. Click "More" and note "Course Reserves" in dropdown menu
5. Go to http://localhost:8081/cgi-bin/koha/catalogue/search.pl?q=test
6. Click "Select all" above search results
7. Click "Add to cart"
8. Note "Cart" now has 3 displaying next to it
9. Click "Cart"
10. Note there are three titles in the cart
11. Click "Empty and close" and click "OK" to confirm
12. Note "Cart (0)" now appears in the top nav
13. Go to http://localhost:8081/cgi-bin/koha/admin/preferences.pl?op=search&searchfield=IntranetNav
14. Save the following content in the system preference: <li><a href="/index.html">New Home</a></li>
15. Refresh the page
16. Note "New Home" appears in the top nav between "Cart" and "More"

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 4186a5873bdeca5b57b153f07494d800ca93cb8b)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26996: Convert Elasticsearch indexer commit buffer size to integer
Björn Nylén [Wed, 11 Nov 2020 07:35:21 +0000 (08:35 +0100)]
Bug 26996: Convert Elasticsearch indexer commit buffer size to integer

When multithreaded indexing is used, the commit size for children are spread
out resulting in them being of type float. When records are processed and the
commit counter decreased it may then never reach *exactly* 0. This means records
are never commited. This patch makes sure the counter is an integer to avoid the
problem.

To test you must find a set of circumstances that causes the issue. For me:
1. Run: ./rebuild_elasticsearch -v -b -p 2 -c 400
2. Note that only one process is logging "Committing xxx records..."
3. Kill processes.
4. Apply patch.
5. Repeat 1
6. Note that both processes are logging "Committing xxx records..."

Sponsored-by: Lund University Library
Signed-off-by: Joonas Kylmälä <joonas.kylmala@helsinki.fi>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit ba9c9cc794123d60c92a4ce499aa4554299936b6)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27135: Adjust "upload image" button when viewing item's cover images
Jonathan Druart [Thu, 3 Dec 2020 08:40:45 +0000 (09:40 +0100)]
Bug 27135: Adjust "upload image" button when viewing item's cover images

When viewing the cover image of an item, the "upload image" button is
about to upload an image at biblio level.

Test plan:
- Attach a cover image to an item
- View it
- Notice the "Upload image" button, confirm that with this patch applied
the wording changed and that clicking it will attach a cover image to
the item
- Attach a cover image to the biblio
- View it
- Notice the "Upload image" button, confirm that with this patch applied
the wording changed and that clicking it will attach a cover image to
the biblio

Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit f0209415245fec941f44ed40ee47d8f163e5bb48)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27043: Add to number_of_replicas and number_of_shards to index config
Fridolin Somers [Tue, 17 Nov 2020 13:49:58 +0000 (14:49 +0100)]
Bug 27043: Add to number_of_replicas and number_of_shards to index config

With Elasticsearch 6 (>6.4), we have a warning on index creation :
  the default number of shards will change from [5] to [1] in 7.0.0

See https://github.com/elastic/elasticsearch/pull/30587

I propose to add number_of_shards in index config.

Also add number_of_replicas that is better explicit.
In case on only one node, it must be 0.

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 you dont have a warning about number of shards
5) Check the settings of index :
   curl '<cluster>:9200/<myindex>_biblios/_settings?pretty&filter_path=**.number_of_*'
6) You should see :
   "number_of_shards" : "5",
   "number_of_replicas" : "1"

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 3dc90c66c7e3e53c6fab1792ebac65767e770c5e)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26171: (QA follow-up) Add table name and object type to message
Nick Clemens [Mon, 21 Dec 2020 19:24:05 +0000 (19:24 +0000)]
Bug 26171: (QA follow-up) Add table name and object type to message

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 0f7bbb64df376cd0998d6e882ad2f0a699187863)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26171: adapt Koha/Exceptions.t
Fridolin Somers [Fri, 7 Aug 2020 08:30:55 +0000 (10:30 +0200)]
Bug 26171: adapt Koha/Exceptions.t

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit c961b238a2c726f7bf2dc70a672d31c43da84f29)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26171: Show biblionumber in Koha::Exceptions::Metadata::Invalid
Fridolin Somers [Fri, 7 Aug 2020 08:05:52 +0000 (10:05 +0200)]
Bug 26171: Show biblionumber in Koha::Exceptions::Metadata::Invalid

Bug 23846 added a check for invalid MARCXML in search_for_data_inconsistencies.pl.
But the error message does not show the biblionumber of invalid biblio record.

Test plan:
1) Import a bibliographic record with invalid XML, you can add non printable characters, like 0x1F (CTRL-V 1F with vim)
2) Run misc/maintenance/search_for_data_inconsistencies.pl
3) Check you see correct biblionumber in error message :
Invalid data, cannot decode object (id=xxx, biblionumber=yyy, format=marcxml, schema=zzz, decoding_error=...

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 3b987412f699d16794520e1b3ec1b04b82fdd4e4)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27280: (bug 27026 follow-up) Make consistent the explanation for "Days mode"
Jonathan Druart [Fri, 18 Dec 2020 15:23:54 +0000 (16:23 +0100)]
Bug 27280: (bug 27026 follow-up) Make consistent the explanation for "Days mode"

We have "Skip closed days" in the dropdown, but "Calendar" on the table. Both must match

Test plan:
Go to the circ rules, select a value for "Days mode", save the rule,
confirm that the dropdown list values are matching the ones we displayed
in the cells

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 8a067f145b85870328fbcd10b2e510cb7006b749)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoUpdate release notes for 20.11.01 release v20.11.01
Fridolin Somers [Wed, 6 Jan 2021 16:27:31 +0000 (17:27 +0100)]
Update release notes for 20.11.01 release

Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoIncrement version for 20.11.01 release
Fridolin Somers [Wed, 6 Jan 2021 16:07:57 +0000 (17:07 +0100)]
Increment version for 20.11.01 release

Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoTranslation updates for Koha 20.11.01
Koha translators [Wed, 6 Jan 2021 08:47:26 +0000 (05:47 -0300)]
Translation updates for Koha 20.11.01

3 years agoBug 27004: Prevent claim resolution to fail
Jonathan Druart [Mon, 21 Dec 2020 10:05:26 +0000 (11:05 +0100)]
Bug 27004: Prevent claim resolution to fail

If the account of the patron who created a claim is removed, then the
claim won't be resolvable.
Trying to resolve the claim will result in a 500:
[2020/12/21 10:05:55] [ERROR] PUT /api/v1/return_claims/1/resolve: unhandled exception (Koha::Exceptions::Checkouts::ReturnClaims::NoCreatedBy)<<[created_by is mandatory]>> Koha::REST::Plugin::Exceptions::__ANON

We should not check if created_by exist when we update an existing hold,
only when we create it.

Test plan:
- Login with patron A
- set a value to syspref ClaimReturnedLostValue
- Check an item out
- Claim returned it
- Login with patron B
- Delete patron A
- Resolve the claim
- ERROR in api-error.log an UI never confirming the resolution
- apply patch & restart services
- Resolve the claim
- it works

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 92dbe809021ea1f7ee44e51387b48d9ffbda1fea)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27004: Regression tests
Tomas Cohen Arazi [Tue, 29 Dec 2020 17:35:27 +0000 (14:35 -0300)]
Bug 27004: Regression tests

This patch introduces regression tests for the change in
Koha::Checkouts::ReturnClaim->store.

To test:
1. Apply this patch
2. Run:
   $ kshell
  k$ prove t/db_dependent/Koha/Checkouts/ReturnClaim.t
=> FAIL: Tests fail

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit c4702149b2a9d3ec6216a7526a2c52b91de5d4cd)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27276: Fix syntax error
Kyle M Hall [Mon, 4 Jan 2021 13:12:25 +0000 (08:12 -0500)]
Bug 27276: Fix syntax error

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 4f112b782b706d906fb39dd0d7a708f7d12da45f)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27276: Prevent borrowers-force-messaging-defaults.pl to crash
Jonathan Druart [Fri, 18 Dec 2020 13:28:13 +0000 (14:28 +0100)]
Bug 27276: Prevent borrowers-force-messaging-defaults.pl to crash

MySQL 5.7 does not allow queries using 0000-00-00

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit f228c9ee9fc7094054b687b26ae4306254922019)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 17809: FR installer: fix duplicate authorised value qualif 370
Victor Grousset/tuxayo [Mon, 28 Dec 2020 14:48:25 +0000 (15:48 +0100)]
Bug 17809: FR installer: fix duplicate authorised value qualif 370

Monteur vs Réalisateur

Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit ca50623a6082c0aec51d817bd8fddfdb022c8d1b)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 17809: Fix ER country appearing twice in fr-FR database files
Fridolin Somers [Thu, 22 Dec 2016 15:03:57 +0000 (16:03 +0100)]
Bug 17809: Fix ER country appearing twice in fr-FR database files

In installer/data/mysql/fr-FR/1-Obligatoire/authorised_values.sql, ER is defined twice, for "Erythrée" (correct one) and "Allemagne".

Test plan :
- Create a new database using fr-FR or import the sql file
- Look at authorised values COUNTRY
=> without patch you have ER / Allemange
=> with patch you have ER / ErythrÃe

NOTE: Allemange occurs twice as well, correctly with DE.
      This patch correctly removes the ER one.

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Brendan Gallagher <brendan@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 016c51f3a444e50029a7053c28c6f0821d204605)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 17809: Correct authorised values for fr-FR
Mark Tompsett [Tue, 3 Jan 2017 18:02:40 +0000 (13:02 -0500)]
Bug 17809: Correct authorised values for fr-FR

This corrects:
CC -- duplicate, but name not full.
GQ -- duplicate, but only one name correct.
PK -- Poland was mislabelled.

This removes and edits duplicates and corrects PK to PL.

Signed-off-by: Luke Honiss <luke.honiss@gmail.com>
Signed-off-by: Brendan Gallagher <brendan@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 9b2dbfab9412d8c4e163c3f83241fa621b3a8123)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27331: (bug 27331 follow-up) Fix syntax error in authorised_values.sql for fr-FR
Jonathan Druart [Mon, 4 Jan 2021 13:41:56 +0000 (14:41 +0100)]
Bug 27331: (bug 27331 follow-up) Fix syntax error in authorised_values.sql for fr-FR

ERROR 1064 (42000) at line 724: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '+
+INSERT INTO authorised_values (category, authorised_value, lib) VALUES ('HOLD' at line 1

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 80029ad4725b64bb6197ced5bd867721769b04a6)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27317: (Bug 27127 follow-up) fix t/db_dependent/Koha/BackgroundJobs.t
Fridolin Somers [Wed, 30 Dec 2020 14:06:56 +0000 (15:06 +0100)]
Bug 27317: (Bug 27127 follow-up) fix t/db_dependent/Koha/BackgroundJobs.t

Bug 27127 changed  Koha::BackgroundJob->messages to return arrayref instead of array.
This impacts Unit Test t/db_dependent/Koha/BackgroundJobs.t failling on :
  not ok 10 - 10 messages generated

Test plan :
prove t/db_dependent/Koha/BackgroundJobs.t

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Edit: I fixed the indentation of the test label.
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
(cherry picked from commit 5f2414686dbba56ee8140cad55051d7b900cb47d)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27055: Fix compatibility with newer Firefox+Selenium version
Victor Grousset/tuxayo [Thu, 19 Nov 2020 12:47:45 +0000 (13:47 +0100)]
Bug 27055: Fix compatibility with newer Firefox+Selenium version

Fix "submit is not a function error"
A submit button should not be named "submit", in this case, it's id.
https://stackoverflow.com/questions/833032/submit-is-not-a-function-error-in-javascript

Fix some uses of get_attribute()

Fix a fail by setting a global implicit_wait_timeout, default value is 0
in our lib. Other libs set it higher which helps to not have to manually
deal with part of the timing issues.

Fix: remove usage of click_when_visible() because it doesn't work with
elements not in the top of the page. Because they are off screen.

Fix: use $driver->quit() in error_handler to not forget an open Firefox.
With the current version, it fills /dev/shm and fails with around 5
Firefox opened.
Also use quit() it at the end of every script.

Fix: filling item fields, to fill only the displayed one (not those
with display:none)

== Test plan ==
1. Update selenium/standalone-firefox to the latest version [1]
2. prove t/db_dependent/selenium/authentication.t
3. It fails with: arguments[0].form.submit is not a function
4. Apply patch
5. Retest
6. Success

[1] In koha-testing-docker you can do it with
docker-compose.yml:
     selenium:
-        image: selenium/standalone-firefox:2.53.1-americium
+        image: selenium/standalone-firefox

Signed-off-by: Mason James <mtj@kohaaloha.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 3c3406257e78a9407320d22820807f767b4c4df3)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27250: Fix stacked event listeners in SMTP delete modal
Tomas Cohen Arazi [Thu, 17 Dec 2020 14:53:16 +0000 (11:53 -0300)]
Bug 27250: Fix stacked event listeners in SMTP delete modal

There is a design issue on the click event listener that makes the modal
get added new event listeners on each row being deleted. This makes the
page call all the event listeners and generates an error.

This patch replaces the flawed logic (adding the event listener inside
the event listener). It makes the event listener be defined at startup
time, and make the .on('click') action just pass information around as
required.

To test:
1. Create at least 2 SMTP servers
2. Open the browser inspector, on the network tab
3. Click "Delete" for server 1
=> SUCCESS: You get a successful message (OK)
4. Click "Delete" for server 2
=> SUCCESS: You get a successful message (OK)
=> FAIL: You get also an alert message about server 1 (KO)
=> FAIL: The inspector shows more than one AJAX call has been made
5. Apply this patch and reload the page
6. Repeat 3-4
=> SUCCESS: Everything goes smooth this time
7. Sign off :-D

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 084d64b84a536c1d88f2fa477865134f97388489)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27099: Stage for import button not showing up
Owen Leonard [Mon, 14 Dec 2020 12:30:03 +0000 (12:30 +0000)]
Bug 27099: Stage for import button not showing up

In the latest version of Chrome, pages where the Humansmg library is
included have a problem where the language footer obscures the bottom of
the page.

The problem traces back to some CSS in the Humanmsg library's CSS file:

html, body {
    height: 100%; /* Damn you IE! */
}

Removing the line doesn't have any ill effects that I can see in Chrome
or Firefox, and it fixes the problem in Chrome. IE can be damned.

To test you must have one or more translations enabled in the staff
interface.

- Apply the patch and clear your browser cache if necessary.
- View pages in the staff interface which use the Humansmg library,
  e.g.:
  - Administration -> System preferences. Choose a category of
    preferences which will be numerous enough to require scrolling to
    reach the bottom of the page.
  - Tools -> Stage MARC records for import. Upload a file to display the
    form for staging the import.
  - Cataloging -> Advanced MARC editor

On each page the language footer should not obscure the bottom of the
page.

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 2498cdcc88be798b88d6a23bf6e592cff5a80f45)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27247: Re-add highlighting to the quote editor
Jonathan Druart [Wed, 16 Dec 2020 10:32:20 +0000 (11:32 +0100)]
Bug 27247: Re-add highlighting to the quote editor

Caused by
  commmit 247dca306407ac9568344a0a37aca3bbcffc2468
  Bug 23013: Upgrade DataTables in the staff client

which removed

-tr.even.selected td {
-    background-color: #D3D3D3;
-}

There was no more highlighting when trying to delete an imported quote, as there was before
(see screenshot from the manual https://gitlab.com/koha-community/koha-manual/-/blob/master/source/images/tools/qotd/selectfordelete.png)

It was, however, possible to delete imported quotes, you just don't see which ones you are deleting.

Test plan:
1) Create a CSV with two columns first the name, then the quote (I've attached a CSV that I've done for testing purposes)
2) Go to Tools > Edit quotes for the QOTD feature
3) Click 'Import quotes'
4) Click 'Browse' and choose the CSV created earlier
5) Click on the id of a couple of quotes. Notice those lintes are highlighted

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit eddf09da53b0ad21e2b2649266ca201623372d0c)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27230: Display OPAC description for OPAC_SUG
Jonathan Druart [Mon, 14 Dec 2020 13:51:17 +0000 (14:51 +0100)]
Bug 27230: Display OPAC description for OPAC_SUG

The authorised values OPAC_SUG displayed at the OPAC show the staff
description.

Test plan:
1. Create an auth value in opac_sug, with different text for the description and OPAC description.
2. Go to the OPAC and open the purchase suggestion form.
3. Note in the Reason for purchase drop down, the descriptions appear, the text entered in the OPAC description field.

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 7063f2c4763d7fec870a4c326837b8b64e64004f)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26956: Allow guarantor's controls to be set when a guarantee is created
Jonathan Druart [Wed, 2 Dec 2020 09:34:50 +0000 (10:34 +0100)]
Bug 26956: Allow guarantor's controls to be set when a guarantee is created

With AllowStaffToSetCheckoutsVisibilityForGuarantor and
AllowStaffToSetFinesVisibilityForGuarantor set to Allow, one can only see the
controls for these values in the patron record *after* the patron has been saved
with a guarantor. That makes a frustrating 2-step process. We should be able to
set those values regardless of whether or not there is currently a guarantor on
the account.

Test plan:
Create a guarantee and confirm that the 2 options "Show checkouts to
guarantors" and "Show fines to guarantors" are displayed
Select Yes, save
Confirm that the values have been correctly saved

Signed-off-by: Kelly McElligott <kelly@bywatersolutions.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 6a461382ba944a8e9f4a7c4e534dca74745f0f55)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 22243: Fix unescaped apostrophe in Z target
Andrew Isherwood [Thu, 31 Jan 2019 09:40:08 +0000 (09:40 +0000)]
Bug 22243: Fix unescaped apostrophe in Z target

This patch escapes apostrophes in the z39.50 target name prior to them
being embedded in the template.

To test:

- Create a z39.50 target containing an apostrophe in the title
- Note that the Advanced Cataloguer editor does not load
- Apply the patch
- TEST: Note that the Advanced Cataloguer editor does load

Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 7ffa71fbd1fa0e4b8c036f02b8a73eacbdfac066)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27200: Compiled CSS
Jonathan Druart [Sat, 26 Dec 2020 17:13:57 +0000 (18:13 +0100)]
Bug 27200: Compiled CSS

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 28423fa756439607fbbe72d70806e964098345a6)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27200: (follow-up) Browse search interface update
Owen Leonard [Wed, 16 Dec 2020 18:38:11 +0000 (18:38 +0000)]
Bug 27200: (follow-up) Browse search interface update

This patch updates the browse search interface to confirm to new
interface patterns in the Bootstrap 4 framework, especially in the form
markup.

The results list has been changed to a Bootstrap "Collapse" component
configured as an accordion
(https://getbootstrap.com/docs/4.5/components/collapse/#accordion-example).

Instead of loading the bibliographic record results below the list of
terms returned, the bibliographic results are now displayed in the
"panel" expanded below the selected term. Subtitle has been added to the
information displayed about the bibliographic record.

To test you must be using ElasticSearch and the OpacBrowseSearch
preference must be enabled. Apply the patch and rebuild the OPAC CSS
(https://wiki.koha-community.org/wiki/Working_with_SCSS_in_the_OPAC_and_staff_client).

- Open the "Browse search" page in the OPAC.
- Test various searches: Author, Subject, and Title.
- When results are found, the should be displayed as a Bootstrap-styled
  accordion widget. Clicking any individual result should expand the
  panel containing the corresponding records.
- Clicking the record link should open the bibliographic detail page in
  a new window.
- When no results are found, a Bootstrap-style "alert" box should
  appear.

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit e12e0ef016247003a7a97916aa760277b56782cf)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27200: (bug 20168 follow-up) Fix 'Browse search'
Jonathan Druart [Fri, 11 Dec 2020 10:19:55 +0000 (11:19 +0100)]
Bug 27200: (bug 20168 follow-up) Fix 'Browse search'

The 'hidden' class has been replaced by 'd-none' on bug 20168

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit fc2c86ba78420a083cfad726b15ed52f9cd19d53)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27196: Don't explode if item that is waiting if checked in by SIP
Jonathan Druart [Mon, 14 Dec 2020 14:54:54 +0000 (15:54 +0100)]
Bug 27196: Don't explode if item that is waiting if checked in by SIP

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 6b9b7d8e779b29ec5bb9ec2a2e84c91eb1c5b19e)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 24398: (QA follow-up) Add POD
Nick Clemens [Mon, 21 Dec 2020 13:43:21 +0000 (13:43 +0000)]
Bug 24398: (QA follow-up) Add POD

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit dd36b9bb5b05e66f01ecd32d028247894820523c)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 24398: Fix 500 when viewing a single news item at the OPAC
Jonathan Druart [Thu, 10 Dec 2020 14:10:10 +0000 (15:10 +0100)]
Bug 24398: Fix 500 when viewing a single news item at the OPAC

Test plan:
0. Set the NewsAuthorDisplay preference to 'OPAC' or 'Both OPAC and staff client.'
1. Open the OPAC main page and click on an individual news item
Without this patch you get an ugly 500
    Template process failed: undef error - The method Koha::NewsItem->author_title is not covered by tests!
With this patch applied you see the news with the author's info

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit c596f450d96e04befe6d5335d8ad12679541d220)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27256: Update click handler for point of sale
Martin Renvoize [Wed, 16 Dec 2020 19:26:11 +0000 (19:26 +0000)]
Bug 27256: Update click handler for point of sale

This patch updates the click handler to bind to the table element in the
DOM as aposed to the individual buttons by their classes. We then use
the event propogation and filter on the button class to catch the clicks
we want.

Test plan
1/ Add 22 debit_types that can be sold to the system (or reduce the
datatable paging size)
2/ Confirm that items on the second page of results cannot be added for
sale on the point of sale page.
3/ Apply the patch
4/ Confirm items from the second table page can now be added correctly
5/ Clicking add when navigating to such an item should leave the items
table unmodified.
6/ Clicking aa when the table was filtered should reset the filters
bringing the table back to the first page
7/ Signoff

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 68047132a4888db6eb5169e1cd3ceac49aa84b3b)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27148: (QA follow-up) Calculate default_strong_password correctly
Nick Clemens [Mon, 21 Dec 2020 16:06:35 +0000 (16:06 +0000)]
Bug 27148: (QA follow-up) Calculate default_strong_password correctly

Fix a typo lenght for length

If category strong password is not set, then we fall back to the preference, but that can be "" - which should be treated as 0

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 3b56076405bd0d171b702a63564339d80fa99359)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27148: (follow-up) Fix require_strong variable set
Agustin Moyano [Wed, 9 Dec 2020 18:17:15 +0000 (15:17 -0300)]
Bug 27148: (follow-up) Fix require_strong variable set

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 03839d40b1fd58a3863a1153a6ae44d1002d9afb)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27148: Fix bug on self registration when user category is hidden
Agustin Moyano [Thu, 3 Dec 2020 16:10:18 +0000 (13:10 -0300)]
Bug 27148: Fix bug on self registration when user category is hidden

This patch fixes the bug when there is no patron category available for
selection in self registration form. It uses PatronSelfRegistrationDefaultCategory
to get patron's password length and strength.

To test:
1. Do not apply this patch
2. Allow SeflRegistration, set PatronSelfRegistrationDefaultCategory to
   a valid patron category and finally add categorycode to PatronSelfRegistrationBorrowerUnwantedField
3. Go to opac and enter self registration form
CHECK => There is no patron category available for selection
      => Password's info alert shows "Password must contain at least
undefined characters"
4. Fill the form setting a password and send.
CHECH => You get an exception saying "You must provide a patron's
category to validate password's strength and length"
5. Apply this patch and restart_all
6. repeat steps 3 and 4
SUCCESS => Password's info alert message shows a number instead of
"undefined"
        => Password's strength and length checks are working
        => If you change default category's lenght or strength parameter it get's reflected when you refresh the page
        => When you click send, patron is saved

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit f5373b7a5ea125f5b3123ab038a727d13315390f)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 14564: Set permissions on configuration backups
Mirko Tietgen [Sun, 19 Jul 2015 15:16:12 +0000 (17:16 +0200)]
Bug 14564: Set permissions on configuration backups

This patch sets the group and group read permissions on
configuration backups, so that they can be downloaded
via the web staff interface.

Test plan:
0. Apply the patch
1. cp debian/scripts/koha-dump /usr/sbin/koha-dump
2. koha-run-backups --days 2 --output /var/spool/koha
3. Note *.tar.gz backups in /var/spool/koha/kohadev
now have root:kohadev-koha ownership and 640 permissions
4. vi /etc/koha/sites/kohadev/koha-conf.xml
5. Set backup_db_via_tools and backup_conf_via_tools to 1
6. echo 'flush_all' | nc -q 1 memcached 1121
7. koha-plack --restart kohadev
8. Go to http://localhost:8081/cgi-bin/koha/tools/export.pl
9. Click on "Export configuration"
10. Choose a file
11. Click Download configuration
12. Note that *.tar.gz file downloaded correctly

Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 6982680ae9e71d5d038e894842125860fcc986d6)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26941: Fix OPAC password recovery error messages
Fridolin Somers [Thu, 5 Nov 2020 14:52:47 +0000 (15:52 +0100)]
Bug 26941: Fix OPAC password recovery error messages

In OPAC password recovery perl opac/opac-password-recovery.pl
there are some error codes not in Template koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-password-recovery.tt

This patch fixes several bugs:
- remove 'use Koha::Patrons' defined twice
- remove vars $errTooManyEmailFound $errBadEmail, not used in any template
- add in template text for error 'errNoBorrowerEmail'

1) Create a patron A with login but no email
2) Create a patron B with login and valid email
3) Go to system preferences set 'OpacResetPassword' to ON
4) Make sure that OpacPasswordChange is also ON
5) Go to 'Forgot your password' in OPAC
6) Enter login if patron A and save
=> You get message 'This account has no email address we can send the email to.'
7) Enter login if patron B and save
=> Password recovery is send, no error message

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 24519: Match paycollect form validation for change collection
Martin Renvoize [Mon, 2 Mar 2020 16:45:58 +0000 (16:45 +0000)]
Bug 24519: Match paycollect form validation for change collection

This patch adds form validation to the Point Of Sale payment page such
that one cannot submit the form with a 'collected' value that is less
than the 'owed' amount.

Signed-off-by: Sally <sally.healey@cheshiresharedservices.gov.uk>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 080288bce48cf4fa94b19d35a117dd3e1967a4c9)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26849: Fix Array::Utils dependency in cpanfile
Julian Maurice [Wed, 28 Oct 2020 15:46:32 +0000 (16:46 +0100)]
Bug 26849: Fix Array::Utils dependency in cpanfile

Since bug 26434, if the module is missing Koha does not start. So it
should be marked as required

Signed-off-by: Mason James <mtj@kohaaloha.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit a43fcaf1416057905c277951fb2b0bff13977d33)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27127: Make Koha::BackgroundJob->messages return a scalar
Jonathan Druart [Tue, 1 Dec 2020 14:35:11 +0000 (15:35 +0100)]
Bug 27127: Make Koha::BackgroundJob->messages return a scalar

Otherwise the code in the template is not handled correctly:
112                     [% FOR m IN job.messages %]

m will become each key/val of the message hash:
{"type":"success","biblionumber":"1","code":"biblio_modified"}
And not the whole hash

Test plan:
Modify one biblio using the batch record modification tool
Modify two biblios using the batch record modification tool
Go to the detail view of each job and confirm that with this patch the
display is correct

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit c5efece0dc8db3a1438bab40afbcaa7f164f2f75)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27117: Only place_holds permission is needed to adjust pickup locations
Jonathan Druart [Tue, 1 Dec 2020 10:44:04 +0000 (11:44 +0100)]
Bug 27117: Only place_holds permission is needed to adjust pickup locations

The GET /pickup_locations route is requesting the whole reserveforothers
permission whereas only the subpermission place_holds is needed.

Test plan:
0. Don't apply this patch
1. Set the subpermission place_holds but modify_holds_priority
2. Edit a hold and click the pickup library dropdown list
3. You get a JS alert and log displays
  GET /api/v1/app.pl/api/v1/holds/5/pickup_locations
  403 Forbidden
4. Apply this patch
5. Reload the page, click the dropdown list, modify the pickup location
and save
=> Success!

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 69c01ee0f2dccd04cfbe8201ba580a15727f5280)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26921: Don't generate an invalid custom cover image if the url cannot be generated
Jonathan Druart [Thu, 5 Nov 2020 15:02:14 +0000 (16:02 +0100)]
Bug 26921: Don't generate an invalid custom cover image if the url cannot be generated

In case a custom cover image url is used to generate the cover image of
bibliographic records, we should not build one if the record does not
have the necessary data.

For instance if you have
CustomCoverImagesURL set to https://covers.openlibrary.org/b/isbn/{isbn}-M.jpb
and a biblio does not have the isbn defined, we should not generate and
empty image (empty or invalid src)

Test plan:
0.
Set CustomCoverImagesURL to https://covers.openlibrary.org/b/isbn/{isbn}-M.jpb
Enable CustomCoverImages and OPACCustomCoverImages
To highlight the issue you should disable LocalCoverImages and OPACLocalCoverImages.
1. Make sure you have some of your bibliographic records with a valid
isbn
2. Make sure you have at least 1 bibliographic record without an isbn
set
3. Visit the search result and detail views (OPAC and staff interfaces)
=> Without this patch you should see a "Cover image" link, and an empty
block/div on the detail page
=> With this patch applied you should only see images when the url can
be generated

Note that the problem will persist if the isbn is not valid (ie. no
image is generated)

Sponsored-by: Orex Digital
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 1ea55acd0c997b96039a2a1a4a9f9941d2558bda)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27205: Improve logic readability in conditional
Jonathan Druart [Fri, 18 Dec 2020 10:56:22 +0000 (11:56 +0100)]
Bug 27205: Improve logic readability in conditional

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 85c25260853aa1c8003b0a041dba2772cd2f316b)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27205: Check valid pickup location on POST /holds
Tomas Cohen Arazi [Mon, 14 Dec 2020 13:19:05 +0000 (10:19 -0300)]
Bug 27205: Check valid pickup location on POST /holds

This patch adds a check for valid pickup location to the POST /holds
route. A 400 code is returned if the supplied pickup library is not
valid.

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

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit c913bd7d698a8fbc9992f93db426a35c79f330c7)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27205: Check valid pickup location on PUT /holds/:hold_id
Tomas Cohen Arazi [Fri, 11 Dec 2020 20:55:40 +0000 (17:55 -0300)]
Bug 27205: Check valid pickup location on PUT /holds/:hold_id

This patch adds a test for valid pickup locations when updating a hold
through the API.

Tests are adjusted to reflect this change.

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

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 1bfe7ea16ef1346585211345ba89d18e303a0c32)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27209: (follow-up) Add ->is_pickup_location_valid
Tomas Cohen Arazi [Mon, 14 Dec 2020 10:37:53 +0000 (07:37 -0300)]
Bug 27209: (follow-up) Add ->is_pickup_location_valid

This patch simply refactors the pickup location check into a method that
can be called on its own. Tests are added, and the tests for
->set_pickup_location should pass unmodified.

To test:
1. Apply the first two patches
2. Run:
   $ kshell
  k$ prove t/db_dependent/Koha/Hold.t
=> SUCCESS: tests pass
3. Apply this refactoring patch
4. Notice the tests are similar, but check for boolean output
5. Repeat 2
=> SUCCESS: New tests pass, set_pickup_location() behavior unchanged.
6. Sign off :-D

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 865a1dab5c346920c61237c4b7593202328e04f8)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27209: Add Koha::Hold->set_pickup_location
Tomas Cohen Arazi [Fri, 11 Dec 2020 19:51:42 +0000 (16:51 -0300)]
Bug 27209: Add Koha::Hold->set_pickup_location

This patch introduces a method to safely update a hold's pickup
location. It will raise exceptionis if the passed parameters are invalid
or absent.

To test:
1. Apply this patches
2. Run:
   $ kshell
  k$ prove t/db_dependent/Koha/Hold.t
=> SUCCESS; Tests pass
3. Sign off :-D

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 672413ea294679d4b5b30d30839650f6d30b45ca)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27209: Unit tests
Tomas Cohen Arazi [Fri, 11 Dec 2020 19:51:34 +0000 (16:51 -0300)]
Bug 27209: Unit tests

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 295787223e4dbbe116cba20119db05da4992e0b1)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27124: JS error "select2Width is not defined"
Owen Leonard [Thu, 10 Dec 2020 11:48:43 +0000 (11:48 +0000)]
Bug 27124: JS error "select2Width is not defined"

This patch changes the default width paramter passed to the
select2 plugin. This allows the basic MARC editor's Select2
widgets to be styled differently than on other pages.

To test, apply the patch and view various pages where the select2 plugin
is used:

 - Basic MARC editor
 - Items edit
 - Batch item edit
 - Authority editor

In each case check that the Select2 plugin works correctly to style
fields like collection code and home library.

On the basic MARC editor page these <select>s should have a width
that adjusts as the browser window changes. On other pages the width
should be fixed.

Check the browser console and confirm that there are no JavaScript
errors.

Update: Thanks to Julian for the suggested optimization

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit ff7318c62ec7097c5b88f7278b71d0cc7feb1f39)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26634: Remove GetHoldRule subroutine in C4::Reserves
Nick Clemens [Tue, 24 Nov 2020 20:21:07 +0000 (20:21 +0000)]
Bug 26634: Remove GetHoldRule subroutine in C4::Reserves

This routine is only used internally and incorrectly overrides
the precedence of holds rules - it should be removed

This patch removes the routine, adjusts tests, and adds test to
confirm correct precedence is followed

To test:
1 - At the All Libraries level, create a circ rule for a specific patron category and a specific item type that only allows 1 hold
2 - At the branch-specific level for Branch A, create an All/All rule that allows 2 holds
3 - confirm ReservesControll is set to patron's library
4 - find a patron from Branch A of the category for which you made your rule
5 - find two bibs with items of the itype got which you made your rule
6 - place a hold on one bib. success!
7 - try to place a hold on the second bib. you're told you cannot because the patron is only allowed 1 hold
8 - apply patch, restart services
9 - try to place your second hold again, success!

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit de4d6983ab614f56d0514ff4060543da69b2b651)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27133: (bug 19351 follow-up) Add missing "Copy no" header to relative's checkouts
Jonathan Druart [Wed, 2 Dec 2020 10:31:07 +0000 (11:31 +0100)]
Bug 27133: (bug 19351 follow-up) Add missing "Copy no" header to relative's checkouts

Test plan:
Add a guarantee, go to the relative's checkouts list and confirm that
the number of headers is not correct

Signed-off-by: Kelly McElligott <kelly@bywatersolutions.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit ec1979a385cb35228d39d139d7c0bd8c685dd4a2)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27166: Set destination_loc to item->homebranch
Nick Clemens [Tue, 8 Dec 2020 14:18:35 +0000 (14:18 +0000)]
Bug 27166: Set destination_loc to item->homebranch

In bug 21020 we used the issue to fetch the item and then the homebranch.
This fails when the item is not issued. We fetch the item already, so we
can use it directly

To test:
1 - Have an item belonging to branch A
2 - Check it in via sip at branch B:
    perl misc/sip_cli_emulator.pl -a localhost -p 6001 -su term1 -sp term1 --item CHESS1 -l FPL -m checkin
3 - The read command is blank and there is a warn about uninitialized data
4 - Apply patch
5 - Restart sip server
6 - Check the item in at branch A using the sip cli emulator
7 - Check it in at branch B
8 - This time the checkin should succeed and the output msg should be included

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 9ec0744ccce7a5027373154fc0a5098e8c5260c3)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 27166: Unit tests
Nick Clemens [Tue, 8 Dec 2020 14:18:11 +0000 (14:18 +0000)]
Bug 27166: Unit tests

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 3126ae34433abe1ca1559e8123e6e1e732c1ed6c)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 25583: Improve wording
Jonathan Druart [Wed, 9 Dec 2020 10:50:24 +0000 (11:50 +0100)]
Bug 25583: Improve wording

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit cae0ef76f398bb3d9f60235ff10611cc8d8eacb7)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 25583: Disable the "claim returned" button if the feature is disabled
Jonathan Druart [Fri, 20 Nov 2020 08:18:26 +0000 (09:18 +0100)]
Bug 25583: Disable the "claim returned" button if the feature is disabled

It's possible to display the "Return claims" column on the checkout
list, even if the feature is disabled.
We should disable the link and add an explanation.

Test plan:
- Make sure ClaimReturnedLostValue is empty
- Go to a patron account
- Check out an item
- Make the claims returned column visible in the table of checkouts
=> The button is disabled and a tooltip explains that the feature is
disabled

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 3ae3981d3c881bbbd136015ae94e91961236d15e)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26905: Purchase suggestion button hidden for users with suggestion permission...
Owen Leonard [Wed, 2 Dec 2020 14:21:27 +0000 (14:21 +0000)]
Bug 26905: Purchase suggestion button hidden for users with suggestion permission but not acq permission

This patch adds a link to purchase suggestions from the header menu's
"More" submenu for users with suggestions management permission.

To test, apply the patch and log in to the staff interface as a user
with "suggestions_manage" permission.

- Click the "More" menu item in the header. You should see a link to
  "Suggestions" which takes you to the suggestions management page.

- Log in as a user without "suggestions_manage" permission. The link
  should not appear.

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 30acf1a9884b98b5e7e965fc057aa632cd781f8f)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 26946: Set maxlength for cash register name
Martin Renvoize [Mon, 9 Nov 2020 12:57:13 +0000 (12:57 +0000)]
Bug 26946: Set maxlength for cash register name

The cash register names is limited to 24 characters at the database
level and so that restriction should also be reflected in the UI.

Test plan
1/ Add or Edit a cash register ( admin > accounts > cash registers )
2/ Note that you can enter a cash register name longer than 24
characters, but upon save the value is truncated.
3/ Apply patch
4/ Note you can not longer enter a cash register name longer than 24
characters.
5/ Signoff

Signed-off-by: Sally <sally.healey@cheshiresharedservices.gov.uk>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 012229c5ea77a009dc708db4370bf499e48dad01)

3 years agoBug 27142: Don't interpolate batch_type variable
Nick Clemens [Thu, 3 Dec 2020 13:30:34 +0000 (13:30 +0000)]
Bug 27142: Don't interpolate batch_type variable

To test:
1 - Create a report like:
    SELECT * FROM borrowers LIMIT 50
2 - Run the report
3 - Attempt batch modification - it fails showing every row as an unfound cardnumber
4 - Apply patch
5 - Repeat
6 - Success!
7 - Edit report to:
    SELECT * FROM biblio LIMIT 50
8 - Repeat test
9 - Ensure batch modification and deletion work

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 9b62806a979fea789661b3d85113b57dbff0e62d)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
3 years agoBug 24658: (bug 22008 follow-up) Correct update DB entry 18.12.00.031
Jonathan Druart [Tue, 17 Nov 2020 14:15:02 +0000 (15:15 +0100)]
Bug 24658: (bug 22008 follow-up) Correct update DB entry 18.12.00.031

If the original constraint does not exist, the second one is not added.

Test plan:
1. checkout dbrev 18.12.00.030
2. Remove the constraint: ALTER TABLE accountlines DROP FOREIGN KEY accountlines_ibfk_2
3. checkout master
4.
% updatedatabase
=> The constraint accountlines_ibfk_items is not added
5. Repeat 1 to 4
=> The constraint is added correctly

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit fb0a659684a70204c1922675df18efca257bddd9)

3 years agoBug 12430: Fix Search.t failure
Jonathan Druart [Wed, 9 Dec 2020 09:52:15 +0000 (10:52 +0100)]
Bug 12430: Fix Search.t failure

t/db_dependent/Search.t ..
    #   Failed test 'buildQuery should keep 0 value'
    #   at t/db_dependent/Search.t line 669.
    #          got: 'su,phr=(rk=(0)) '
    #     expected: 'su,phr=0(rk=(0)) '

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit a37ba7903d6e7c18b2e2f8d9e145936b0dc8b938)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>