]> git.koha-community.org Git - koha.git/log
koha.git
23 months agoBug 32254: (follow-up) Add missing div around "Older transactions"
Owen Leonard [Fri, 18 Nov 2022 16:29:46 +0000 (16:29 +0000)]
Bug 32254: (follow-up) Add missing div around "Older transactions"

To test:

- Tools -> Cash summary for <library> and Tools -> Transaction history
  for <register>
  - In the "Older transactions" section, submit start and end dates
    which will return results.
  - The table of results should be styled correctly.

Signed-off-by: David <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32254: (follow-up) Add page section to Cashup history
Katrin Fischer [Thu, 17 Nov 2022 18:45:33 +0000 (18:45 +0000)]
Bug 32254: (follow-up) Add page section to Cashup history

Adds one missing page section on the last table of the
POS transactions page.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: David <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32254: Add 'page-section' to various tools pages
Owen Leonard [Thu, 17 Nov 2022 17:24:03 +0000 (17:24 +0000)]
Bug 32254: Add 'page-section' to various tools pages

This patch adds a .page-section div to various pages in the tools
section in order to provide a consistent page structure.

Also changed: Corrected a couple of templates which were missing some
<tr> tags.

This patch includes indentation changes, so please ignore whitespace
when looking at the diff.

To test, apply the patch and view the following pages to confirm that
the primary page content is wrapped in a container with a white
background:

- Tools -> Access files
- Tools -> HTML customizations
  - Additional contents, news or pages-- all use the same template.
  - Check the list of existing entries.
- Tools -> Batch extend due dates
  - Choose a set of criteria that will return results and click
   "Continue".
  - Check the list of checkouts to be updated.
- Tools -> Batch patron modification
  - Submit a batch of patrons for modification.
  - Check the list of patrons to be modified.
- Tools -> Upload patron images
  - Upload one or more patron images
  - Check the view of results
- Tools -> Upload
  - Upload a file and view the results, or perform a search and check
    the view of results.
- Tools -> Patron card creator -> New patron card batch.
  - Submit a set of patrons and check the display of patrons in the
    resulting batch.
- Tools -> Cash summary for <library> and Tools -> Transaction history
  for <register>
  - Confirm that the table of data looks correct

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: David <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 31080: Prevent bundles from being nested
Martin Renvoize [Fri, 1 Jul 2022 14:02:58 +0000 (15:02 +0100)]
Bug 31080: Prevent bundles from being nested

This is a follow-up for bug 28854 to prevent bundle type items from
being nested in to other bundles.

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>
23 months agoBug 31080: Unit tests
Martin Renvoize [Mon, 4 Jul 2022 10:20:31 +0000 (11:20 +0100)]
Bug 31080: Unit tests

Unit tests for add_to_bundle functionality that prevents bundle nesting.

Test plan
1) Run t/db_dependent/Koha/Item.t
2) The test should fail
3) Apply the second patch
4) Re-run the test and watch it pass.

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>
23 months agoBug 32237: Fix using a list as base for batch record deletion
Géraud Frappier [Wed, 16 Nov 2022 21:54:41 +0000 (16:54 -0500)]
Bug 32237: Fix using a list as base for batch record deletion

When a list was used to select records for batch deletion, the
record IDs were no longer found.

To test:

1. Go to Lists in the intranet.
2. Add a list by clicking on "New list". Choose a random name for it and select private or public and save.
3.Add one or more items into it and save.
4.Go back to the main page and select "Cataloging".
5.Go to "Batch record deletion".
6.In "upload a file" select "Select a list of records" and choose a list and keep the Bibliographic on.
7.Select continue and see that the list of records is not shown.

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>
23 months agoBug 32167: (bug 14860 follow-up) Populate price fields even if no discount on vendor
Nick Clemens [Thu, 10 Nov 2022 19:24:25 +0000 (19:24 +0000)]
Bug 32167: (bug 14860 follow-up) Populate price fields even if no discount on vendor

On bug 14860 an 'else' was removed, assuming the price fields were set before discount,
this was incorrect. This patch renames the variable and always set the price, only discounting
ecost if a discount, but setting the values even if not

To test:
 0 - Have a vendor with a discount of 0% specified (no discount)
 1 - Export a record from your Koha
 2 - Stage the record for import and match on biblionumber
 3 - Add to a basket in acq from the staged file
 4 - Select the title, and set order price to $10 and do not fill the discount field
 5 - Add the order - note $0 order line
 6 - Repeat with another vendor with a 10% discount and confirm that is correct
 7 - Apply patch
 8 - Repeat 2-4
 9 - Add the order and confirm $10 price
10 - Repeat with discounted vendor, confirm prices are set discounted correctly

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>
23 months agoBug 24606: (QA follow-up) Fix Template.t
Marcel de Rooy [Tue, 22 Nov 2022 15:49:02 +0000 (15:49 +0000)]
Bug 24606: (QA follow-up) Fix Template.t

The test cases here still assumed UTF-8 enocding in the middle
of the process. Can be much simpler.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 31891: (bug 27421 follow-up) Remove one additional click
Jonathan Druart [Wed, 16 Nov 2022 06:40:59 +0000 (07:40 +0100)]
Bug 31891: (bug 27421 follow-up) Remove one additional click

From comment 0
"""
Moving marc batch import actions to background jobs has introduced some confusing
clicks to the process. Before this change, after staging a batch one was taken
to a "MARC staging results" page with details of how the staging went and, most
importantly, a link straight to the batch you'd just staged
(at manage-marc-import.pl?import_batch_id).

Now, however, one must click the status bar to get to details of the job
and then click "View batch" from there. Not only is that an extra click
and page load, but neither of those links are particularly large or
obvious.
"""

Test plan:
- Stage a record for import, notice that the "View batch" link appears
when the job is finished
- Add order to basket from a new file, select a file and import
Notice that the "Add staged files to basket" link is displayed when the
job is finished

Note for QA: We should have a js_callback in the background_job include
file instead.

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>
23 months agoBug 32308: Update Chocolat image viewer CSS to conform to redesign color scheme
Owen Leonard [Mon, 21 Nov 2022 16:30:33 +0000 (16:30 +0000)]
Bug 32308: Update Chocolat image viewer CSS to conform to redesign color scheme

This patch makes minor modifications to the Chocolat CSS so that the
buttons (next, previous, close) are styled with colors that conform to
the new interface color scheme.

Note: You may encounter Bug 32307 when testing.

To test, apply the patch and enable at least two cover image services in
the staff interface: Amazon, Local cover images, and/or Coce.

Locate a bibliographic record which has at least two cover images and
view the detail page. Click on the cover image to trigger the image
viewer overlay.

Confirm that the controls in this view are colored green, matching the
current color scheme.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Katrin <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32045: Use bootstrap tabs to select item tab
Nick Clemens [Tue, 15 Nov 2022 14:13:53 +0000 (14:13 +0000)]
Bug 32045: Use bootstrap tabs to select item tab

When the form to add orders from a staged file is validated, we use
toptabs functionality to switch to the item tab if there are missing fields.

The display now uses bootstrap tabs, so the JS is throwing an error:
Uncaught Error: cannot call methods on tabs prior to initialization; attempted to call method 'option'

This patch simply switches the call to switch tabs

To test:
1 - Stage a file for import
2 - Either use Marc(Item)FieldsToOrder to populate the orders
    or select a budget on the third tab
3 - View the second tab, items info, confirm itemtype is required, but don't populate it
4 - Attempt to save order, nothing happens
5 - Check the JS console (F12)
6 - Note the error:
    Uncaught Error: cannot call methods on tabs prior to initialization; attempted to call method 'option'
7 - Apply patch
8 - Cancel and add from staged file again
9 - Select a budget and save
10 - You now get an error popup: Some required item subfields are not set
11 - Confirm after the error you are shown the items tab
12 - Select itemtype
13 - Save
14 - Confirm orders added successfully

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>
23 months agoBug 30794: Insert blank rule (unlimited) for max_holds
Jonathan Druart [Thu, 17 Nov 2022 08:28:39 +0000 (09:28 +0100)]
Bug 30794: Insert blank rule (unlimited) for max_holds

Related to bug 24669, why didn't we use strip_non_numeric for one occurrence?

Note that there is still a problem, if none of the 3 inputs is filled,
no rule will be created (ie. action ignored)

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>
23 months agoBug 32298: Page section added to cataloguing search
Matt Blenkinsop [Mon, 21 Nov 2022 15:20:02 +0000 (15:20 +0000)]
Bug 32298: Page section added to cataloguing search

Added div to "Records found in this catalog".
Added page-section class to "Records found in the reservoir".
Corrected level two heading and removed horizontal line as it is now superfluous.

Test plan:
1) Apply patch from bug 32298
2) Navigate to Cataloging
3) Enter a search into the search field and run the search
4) Verify that the white page section identifier is now visible around both sections

Mentored-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Sponsored-by: PTFS Europe
Signed-off-by: Hammat Wele <hammat.wele@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32270: Add page section to label layouts
Jacob O'Mara [Fri, 18 Nov 2022 16:13:07 +0000 (16:13 +0000)]
Bug 32270: Add page section to label layouts

Test plan:
1) Navigate to `Cataloguing > Label creator > Manage label layouts`
2) Observe the missing page section surrounding the table
3) Apply patch
4) Observe that missing page section has now appeared

Mentored-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Sponsored-by: PTFS Europe
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>
23 months agoBug 32010: 2AF selenium tests - Alert can appear when we are waiting for ajax
Jonathan Druart [Mon, 21 Nov 2022 06:55:52 +0000 (07:55 +0100)]
Bug 32010: 2AF selenium tests - Alert can appear when we are waiting for ajax

If we are waiting for ajax (there is a sleep 1s) and the alert pops up
at the same time, Selenium is raising "unexpected alert open"

We should not wait for the ajax request, but better wait for the
alert actually.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 31378: (QA follow-up) Defer store until JSON fields are populated
Tomas Cohen Arazi [Fri, 18 Nov 2022 15:29:55 +0000 (12:29 -0300)]
Bug 31378: (QA follow-up) Defer store until JSON fields are populated

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32178: (QA follow-up) Correct modules import
Tomas Cohen Arazi [Fri, 18 Nov 2022 15:00:06 +0000 (12:00 -0300)]
Bug 32178: (QA follow-up) Correct modules import

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32178: Adapt tests to new auth.session params
Tomas Cohen Arazi [Fri, 18 Nov 2022 14:59:23 +0000 (11:59 -0300)]
Bug 32178: Adapt tests to new auth.session params

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32212: Updated yarn.lock
Tomas Cohen Arazi [Fri, 18 Nov 2022 14:45:06 +0000 (11:45 -0300)]
Bug 32212: Updated yarn.lock

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32268: Prevent XSLT.t to fail randomly
Jonathan Druart [Fri, 18 Nov 2022 13:41:51 +0000 (14:41 +0100)]
Bug 32268: Prevent XSLT.t to fail randomly

Can't call method "itemnumber" on an undefined value at /kohadevbox/koha/Koha/Recall.pm line 343.

We should set item_level and not let TestBuilder pick a value.

This may have been caught (make it more obvious) by the recent change to
TestBuilder for boolean (Bug 32030: fix test builder for boolean)

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32010: Make sure the alert will be displayed after the ajax call
Jonathan Druart [Wed, 2 Nov 2022 08:08:46 +0000 (09:08 +0100)]
Bug 32010: Make sure the alert will be displayed after the ajax call

There is a missing wait_for_ajax call at after we click but wait_for_ajax
is waiting for the return of success, and the alert is there.

22:01:57 koha_1       | STRACE: /usr/share/perl5/Try/Tiny.pm:123 in Selenium::Remote::Driver::catch {...}
22:01:57 koha_1       |  /usr/share/perl5/Selenium/Remote/Driver.pm:361 in Try::Tiny::try
22:01:57 koha_1       |  (eval 541):1 in Selenium::Remote::Driver::__ANON__
22:01:57 koha_1       |  (eval 543):2 in Selenium::Remote::Driver::__ANON__
22:01:57 koha_1       |  /usr/share/perl5/Selenium/Remote/Driver.pm:654 in Selenium::Remote::Driver::_execute_command
22:01:57 koha_1       |  t/db_dependent/selenium/authentication_2fa.t:282 in Selenium::Remote::Driver::get_alert_text
22:01:57 koha_1       |  /usr/share/perl/5.32/Test/Builder.pm:334 in main::__ANON__
22:01:57 koha_1       |  /usr/share/perl/5.32/Test/Builder.pm:334 in (eval)
22:01:57 koha_1       |  /usr/share/perl/5.32/Test/More.pm:809 in Test::Builder::subtest
22:01:57 koha_1       |  t/db_dependent/selenium/authentication_2fa.t:291 in Test::More::subtest
22:01:57 koha_1       |
22:01:57 koha_1       |     # Looks like you planned 7 tests but ran 4.
22:01:57 koha_1       |
22:01:57 koha_1       | #   Failed test 'Enforce 2FA setup on first login'
22:01:57 koha_1       | #   at t/db_dependent/selenium/authentication_2fa.t line 291.
22:01:57 koha_1       | Error while executing command: no such alert at /usr/share/perl5/Selenium/Remote/Driver.pm line 411.
22:01:57 koha_1       |  at /usr/share/perl5/Selenium/Remote/Driver.pm line 356.
22:01:57 koha_1       | # Looks like your test exited with 255 just after 4.
22:01:57 koha_1       | [20:59:37] t/db_dependent/selenium/authentication_2fa.t

Test plan:
Confirm that the test pass (execute it in a loop, hundreds of times)
Confirm that the behaviour of 2FA "enforced" (see bug 30588) is still
working as expected.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 24606: (QA follow-up) Add test for encoding/decoding
Marcel de Rooy [Thu, 17 Nov 2022 10:15:30 +0000 (10:15 +0000)]
Bug 24606: (QA follow-up) Add test for encoding/decoding

NOTE: I have the impression that this unit test is quite
rudimentary. I do not see the apply function tested?

Test plan:
Run t/db_dependent/Koha/Item/Templates.t

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
tcohen amended: stray deps
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 24606: (QA follow-up) Fix encoding/decoding
Marcel de Rooy [Thu, 17 Nov 2022 10:02:08 +0000 (10:02 +0000)]
Bug 24606: (QA follow-up) Fix encoding/decoding

We should use OO interface and leave encoding to database
layer.

Test plan:
Add a new item template containing real Unicode chars.
Save. Apply on new item.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32267: (bug 32154 follow-up) Fix Agreements.t
Jonathan Druart [Fri, 18 Nov 2022 13:02:06 +0000 (14:02 +0100)]
Bug 32267: (bug 32154 follow-up) Fix Agreements.t

    #   Failed test at t/db_dependent/Koha/ERM/Agreements.t line 111.
    #     Structures begin differing at:
    #          $got->[0]{user_role_id} = '2'
    #     $expected->[0]{user_role_id} = Does not exist
    # Looks like you failed 1 test of 4.

Another fix may be better, please suggest if you disagree

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32104: Prevent console error on additonal-contents.pl
Lucas Gass [Thu, 3 Nov 2022 22:20:57 +0000 (22:20 +0000)]
Bug 32104: Prevent console error on additonal-contents.pl

To test:
1. Make a new HTML customization, news item, or page with the text editor ( CodeMirror ).
2. Save the content ( not Save and continue )
3. Notice the console error:
4. Apply patch
5. Try 1 & 2 again.
6. No error.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32181: ERM - Fix 'filter by expired' when adding an agreement to EBSCO's package
Jonathan Druart [Fri, 11 Nov 2022 15:31:40 +0000 (16:31 +0100)]
Bug 32181: ERM - Fix 'filter by expired' when adding an agreement to EBSCO's package

We shouldn't change the current route (which will lead to change the
view) when we are adding an agreement to a EBSCO's package

Test plan:
Go to E-Resource management / eHoldings / EBSCO / Packages
Search for a package, select one
Click "Add new agreement"
Use the "Filter by expired" filter
=> Without this patch you are redirected to the package list view
=> With this patch applied the table is filtered as expected

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32093: Make help and code match for bg-days in cleanup_database.pl
Katrin Fischer [Tue, 15 Nov 2022 16:54:47 +0000 (16:54 +0000)]
Bug 32093: Make help and code match for bg-days in cleanup_database.pl

There as a mismatch between the parameter name in documentation (bg-days)
and what was checked in the code (bg-jobs). This makes both match.

To test:
* Apply patch
* Make sure you have some background_jobs older than one day
* Verify the help of the script documents the parameter bg-days
* Run the cleanup_database.pl job
  Example:  ./misc/cronjobs/cleanup_database.pl --bg-days  --confirm -v
* Verify there are no errors and the lines have been deleted as expected

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32212: (bug 32030 follow-up) Restore bootstrap 4
Jonathan Druart [Thu, 17 Nov 2022 06:48:54 +0000 (07:48 +0100)]
Bug 32212: (bug 32030 follow-up) Restore bootstrap 4

During the development of the eRM module I've tried to use bootstrap 5
(and vue-bootstrap), but I didn't manage to make it work without
modifying the version used in Koha. This change is actually not needed
and we can keep version 4.
See commit 8c32f186d5a62e742621c35cfacff5b22bb42b71
Bug 32030: ERM - Remove BootstrapVue3

Test plan:
% yarn install
% git diff
you should notice the version change in yarn.lock

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32242: Add selenium tests
Jonathan Druart [Thu, 17 Nov 2022 13:32:49 +0000 (14:32 +0100)]
Bug 32242: Add selenium tests

This is not testing the thing at the correct level, but at least we test
the whole workflow.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32242: Resolve encoding issue when sending to Net::Stomp
Marcel de Rooy [Thu, 17 Nov 2022 09:29:42 +0000 (09:29 +0000)]
Bug 32242: Resolve encoding issue when sending to Net::Stomp

This is meant as a quick fix. It should be enhanced later on by
letting Net::Stomp do the UTF8 conversion.

Test plan:
Run batch mod items. Add a Unicode char in the notes.
Check if job runs and results are correct.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32224: Add prettier to yarn commands
Jonathan Druart [Thu, 17 Nov 2022 07:53:40 +0000 (08:53 +0100)]
Bug 32224: Add prettier to yarn commands

xt/vue_tidy.t was failing with:
  error Command "prettier" not found.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32224: Add cypress to yarn commands
Jonathan Druart [Wed, 16 Nov 2022 08:19:12 +0000 (09:19 +0100)]
Bug 32224: Add cypress to yarn commands

Either I am missing something obvious, or we need to add cypress to the scripts of package.json

With /kohadevbox/node_modules only (ie. without $SYNC_REPO/node_modules), I cannot run
  yarn run cypress run

`cypress run` is working with an adjusted PATH (see https://gitlab.com/koha-community/koha-testing-docker/-/issues/313#note_1173792905) but I think both should work.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32248: Remove t/00-checkdatabase-version.t
Jonathan Druart [Thu, 17 Nov 2022 13:52:25 +0000 (14:52 +0100)]
Bug 32248: Remove t/00-checkdatabase-version.t

Since bug 25078 we do no longer use updatedatabase.pl. This test was
there to make sure the RM(aints) was replacing the XXX correctly.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 31937: Fix Patrons::search_unsubscribed - sharpen condition
Marcel de Rooy [Wed, 26 Oct 2022 15:00:53 +0000 (15:00 +0000)]
Bug 31937: Fix Patrons::search_unsubscribed - sharpen condition

The condition is fine as long as we only have GDPR consents.
But if you dont, you would have trouble. I know :)
Lets prevent that here, although the table still has an ENUM. So
double safety.

Test plan:
Run t/db_dependent/Koha/Patrons.t
Bonus: Run cleanup_database.pl and check for unusual number of
locked accounts:
     misc/cronjobs/cleanup_database.pl --confirm -v --sessions

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32131: Make sure we login before we restore original pref's value
Jonathan Druart [Wed, 16 Nov 2022 07:59:13 +0000 (08:59 +0100)]
Bug 32131: Make sure we login before we restore original pref's value

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32131: Move set_ERM_sys_pref_value to before
Jonathan Druart [Wed, 16 Nov 2022 07:57:40 +0000 (08:57 +0100)]
Bug 32131: Move set_ERM_sys_pref_value to before

We cannot (yet) move login to before, but we can set the pref before all
the tests. We need to login in before anyway to retrieve the value of
the pref.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32131: Cypress tests are failing if ERMModule is off
Pedro Amorim [Sat, 12 Nov 2022 20:32:21 +0000 (19:32 -0100)]
Bug 32131: Cypress tests are failing if ERMModule is off

This patch solves this by enabling the system preference before each test,
right after login. It also sets the system preference back to its original
initial value after the tests finish running.

To test:
1) Disable ERMModule system preference
2) Run cypess tests: yarn cypress open / yarn cypress run
3) Verify that tests run successfully
(Optional): While tests are running, visit the system preferences panel and verify that the system preference is now "Enable".
4) Wait for the tests to finish and confirm that the system preference is set back to its original "Disable" value.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32240: Prevent erm_users.t to fail if checkout exist
Jonathan Druart [Thu, 17 Nov 2022 08:51:42 +0000 (09:51 +0100)]
Bug 32240: Prevent erm_users.t to fail if checkout exist

We should not (never) remove all patrons before tests

Test plan:
0. Don't apply the patch
1. Check an item out
2. Run the tests
=> Fail
3. Apply the patch
4. Create a patron with the erm permission
5. Run the tests
=> Must return green

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 31774: Add 'page-section' to list of imported records
Katrin Fischer [Wed, 16 Nov 2022 19:12:52 +0000 (19:12 +0000)]
Bug 31774: Add 'page-section' to list of imported records

To test:
* Stage a MARC file with a few records
* Look at the import results
* The list of imported records doesn't have the white
  page section background
* Apply patch
* Refresh page and verify the table now is contained

Signed-off-by: Jacob O'Mara <jacob.omara@ptfs-europe.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32154: Fix db_rev permissions
Tomas Cohen Arazi [Thu, 17 Nov 2022 11:44:51 +0000 (08:44 -0300)]
Bug 32154: Fix db_rev permissions

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32214: Prevent empty search option block in catalog search header
Jonathan Druart [Wed, 16 Nov 2022 06:53:42 +0000 (07:53 +0100)]
Bug 32214: Prevent empty search option block in catalog search header

In the header, if "Search catalog" is selected, there is an "option"
icon to display some filters.
Fitlers are displayed if IntranetCatalogSearchPulldown or
IntranetAddMastheadLibraryPulldown is set. If none are set we should
hide the icon to avoid and empty div to be displayed

Test plan:
Confirm that the icon is only displayed if one of the 2 prefs is turned
on.

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>
23 months agoBug 31543: (follow-up) Use url filter for opac components search
Nick Clemens [Wed, 16 Nov 2022 11:02:29 +0000 (11:02 +0000)]
Bug 31543: (follow-up) Use url filter for opac components search

The previous patch switches to using 'query_string' which is returned encoded.
Using uri we doulbe encode the string - this patch prevents that

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>
23 months agoBug 31543: Use query string, rather than query, to build link
Nick Clemens [Wed, 26 Oct 2022 10:46:12 +0000 (10:46 +0000)]
Bug 31543: Use query string, rather than query, to build link

This patch returns the query string from build_query_compat
Under Zebra, either works for the link, for ES we need the simple string

I expand the test for get_components_query to test both engines

To test:
1.0) Set search engine to Elasticsearch
1.1) Go to Tools > Stage MARC records for import
1.2) Upload the example file
1.3) In the form, choose the format 'MARCXML'
1.4) Click 'Stage for import'
1.5) Click 'Manage staged records'
1.6) Click 'Import this batch into the catalog'

2) Change MaxComponentRecords to 10
3) In the staff interface, search the catalog for 'easy piano'
4) Click on the record 'Easy piano pieces for children'
5) Click on the 'show all component parts' link at the bottom of the Components tab
--> it searches for HASH(...) - returns no results
6) Try the same in OPAC
--> it searches for HASH(...) - returns no results
7) Apply patch and restart all
8) repeat 3-6
9) Results returned!

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>
23 months agoBug 32109: Compiled CSS
Tomas Cohen Arazi [Wed, 16 Nov 2022 18:55:40 +0000 (15:55 -0300)]
Bug 32109: Compiled CSS

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32109: Fix spacing in toolbars containing text links
Owen Leonard [Fri, 4 Nov 2022 11:42:47 +0000 (11:42 +0000)]
Bug 32109: Fix spacing in toolbars containing text links

This patch adds a new class to toolbars in certain contexts: Where the
toolbar contains only text links (as opposed to Bootstrap-styled
controls). This lets us set some comfortable padding on the links.

To test, apply the patch and rebuild the staff interface CSS.

Test the following pages to confirm that the toolbar of selection links
("Select all," "Clear all," etc.) has legible spacing.

- Cataloging -> Batch item modification -> List of submitted barcodes
- Cataloging -> Batch item deletion -> List of submitted barcodes
- Cataloging -> Batch record modification -> List of submitted records
- Cataloging -> Batch record deletion -> List of submitted records
- Circulation -> Checkout notes
- Tools -> Batch extend due dates -> Preview results
- Tools -> Batch patron modification -> List of submitted patrons
- Tools -> OPAC problem reports

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>
23 months agoBug 32171: Store after populating order
Nick Clemens [Thu, 10 Nov 2022 20:23:17 +0000 (20:23 +0000)]
Bug 32171: Store after populating order

This updates the call to store after populating the order

I put this on it's own bug just for sake of dependency, in case it is needed
seperate from 32166 for backports

To test:
1 - Apply and test with bug 32166

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>
23 months agoBug 32166: Use import record id for retrieving correct inputs
Nick Clemens [Thu, 10 Nov 2022 20:11:58 +0000 (20:11 +0000)]
Bug 32166: Use import record id for retrieving correct inputs

When importing from a staged file we retrieve the records form the DB, skip any that are not selected,
and process the rest.

When we skip some, we still raise our record count, and use this to retrieve the inputs.

When building the page, we don't increment for skipped reocrds, so there can be a mismatch, i.e.
Record #1 on the page to add records may be the 3rd record in the import file

Rather than using a counting system, let us use the import record id directly

To test:
 0 - Set system preferences:

MarcFieldsToOrder:
price: 949$g
quantity: 949$k
budget_code: 949$l
discount: 949$m
sort1: 949$n
sort2: 949$q

MarcItemFieldsToOrder:
homebranch: 949$a
holdingbranch: 949$b
itype: 949$y
nonpublic_note: 949$x
public_note: 949$z
loc: 949$c
ccode: 949$8
notforloan: 949$7
uri: 949$u
copyno: 949$t
price: 949$g
replacementprice: 949$v
itemcallnumber: 949$o
quantity: 949$k
budget_code: 949$l

 1 - Stage attached sample file, Format:MARCXML, Record matching:Koha biblio 999$c
 2 - Add to a basket from the staged file
 3 - Select 1st record to basket and save
 4 - Record is added with the fields above as expected
 5 - Add to basket again, select 2nd record
 6 - Record is added with price from 020a, ignoring incoming fields
 7 - Repeat with 3rd, same problem
 8 - Apply patch
 9 - Stage file and repeat step 3
10 - Confirm added with correct values
11 - Add 2nd record and save, values correct
12 - Add 3rd record, values correct

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>
23 months agoBug 32172: Remove biblionumber param from Z3950 popup on results
Nick Clemens [Thu, 10 Nov 2022 20:59:28 +0000 (20:59 +0000)]
Bug 32172: Remove biblionumber param from Z3950 popup on results

This param is not defined in routine, who knows whereit comes from

To test:
1 - Enable coce and coce intranet, select all providers:
    https://coce.bywatersolutions.com
2 - Search on staff client
3 - Click Z3950 search
4 - Note url contains a random biblionumber
5 - Apply patch
6 - Repeat
7 - No biblionumber

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 31751: Compiled CSS
Tomas Cohen Arazi [Wed, 16 Nov 2022 12:43:58 +0000 (09:43 -0300)]
Bug 31751: Compiled CSS

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 31751: Breadcrumb style
Owen Leonard [Tue, 15 Nov 2022 19:23:01 +0000 (19:23 +0000)]
Bug 31751: Breadcrumb style

This patch updates the breadcrumb style to use the old caret icon
instead of a slash.

I've left the italic because I think it works well to set the text off
from the normal text above, in the search bar, and below in the main
body of the page.

To test, apply the patch and rebuild the staff interface CSS. Look at
various pages in the staff interface and check the style of the
breadcrumbs menu.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32182: Compiled CSS
Tomas Cohen Arazi [Wed, 16 Nov 2022 12:36:29 +0000 (09:36 -0300)]
Bug 32182: Compiled CSS

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32182: Replace static tabs markup with Bootstrap
Owen Leonard [Mon, 14 Nov 2022 14:47:19 +0000 (14:47 +0000)]
Bug 32182: Replace static tabs markup with Bootstrap

This patch reimplements certain tabbed interfaces to use Bootstrap
markup. Previously these tabs required special CSS because they're
static, i.e. not JS-driven tabs for switching in-page. The tabs are
links to separate pages.

Note: This patch includes whitespace changes, so use diff accordingly.

To test, apply the patch and rebuild the staff interface CSS.

Test the following pages to confirm that the tabs look correct and still
link to the correct locations:

- Patron details
    - Accounting
      - Pay amount
    - Transactions
    - Create manual invoice
    - Create manual credit
- Tools -> Comments

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>
23 months agoBug 32155: Fix alignment of course details page
Lucas Gass [Mon, 14 Nov 2022 21:07:21 +0000 (21:07 +0000)]
Bug 32155: Fix alignment of course details page

This patch eliminates some unnessesary CSS and converts the course details div into a fieldset.

To test:
1. Create or edit an existing course.
2. Search and add an instructor.
3. Note that the columns are misaligned: the name of the course instructor is shown first, then the label "Instructors" is shown next.
4. Add another three instructors.
5. Note that this pushes the labels for the next few fields to the right.
6. Apply patch
7. Try steps 1-4 again and confirm everthing looks and works correctly.

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>
23 months agoBug 32112: Move 'Delete selected items' to its own line
Katrin Fischer [Tue, 15 Nov 2022 16:38:57 +0000 (17:38 +0100)]
Bug 32112: Move 'Delete selected items' to its own line

This moves the checkbox and its label out of the action field set
which makes it appear above the bottons instead of in front of it.

To test:
* Go to any record
* Select items and send to item batch delete
* Verify checkbox appears in front of button
* Apply patch
* Verify the checkbox and the yellow 'delete selected items' button
  are now on separate lines

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32207: Add page-section to some circulation pages
Owen Leonard [Tue, 15 Nov 2022 11:47:16 +0000 (11:47 +0000)]
Bug 32207: Add page-section to some circulation pages

This patch adds a .page-section div to various circ-related pages in
order to provide a consistent page structure.

To test, apply the patch and view the following pages in Circulation to
confirm that the primary page content is wrapped in a container with a
white background:

- Overdues
- Overdues with fines
- Transfers to receive: Your system should have items which have been
  transfered from at least two other libraries.
- Transfers to send: Your system must have one or more items in the
  branchtransfers table with the datesent value = null.
- On-site checkouts
- Catalog -> Bibliographic record -> Items -> View item's checkout
  history

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>
23 months agoBug 32199: (follow-up) Add page-section to list of validated discharges
Katrin Fischer [Mon, 14 Nov 2022 19:19:21 +0000 (19:19 +0000)]
Bug 32199: (follow-up) Add page-section to list of validated discharges

This requires that a discharge is added to the patron account first.
Then you'll see that the 'Aready validated discharges' appear within
the white page section.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32199: (follow-up) Add page-section to circulation history
Katrin Fischer [Mon, 14 Nov 2022 19:01:45 +0000 (19:01 +0000)]
Bug 32199: (follow-up) Add page-section to circulation history

Note: There is a trick here. If OnsiteCheckouts are active,
the circulation history will be tabbed and not use page-section.
If the pref is off, you'll see the page-section with this patch.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32199: Add page-section to various patron pages
Owen Leonard [Mon, 14 Nov 2022 18:10:07 +0000 (18:10 +0000)]
Bug 32199: Add page-section to various patron pages

This patch adds a .page-section div to various patron-related pages in
order to provide a consistent page structure.

To test, apply the patch and view the following pages to confirm that
the primary page content is wrapped in a container with a white
background:

- Patrons ->
    Patron details ->
      - Files
      - Holds history
      - ILL request history
      - Notices
      - Purchase suggestions
      - Routing lists
      - Statistics
- Staff interface home page ->
    Discharge requests pending

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32170: Add page-section to csv-profiles
Martin Renvoize [Mon, 14 Nov 2022 14:47:42 +0000 (14:47 +0000)]
Bug 32170: Add page-section to csv-profiles

This patch adds a page-section div around the csv_profiles list.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32169: Add page-section and fieldsets to batch item modification
Martin Renvoize [Mon, 14 Nov 2022 15:33:45 +0000 (15:33 +0000)]
Bug 32169: Add page-section and fieldsets to batch item modification

This patch extends some alert boxes to include the error details tables
and updates the html_helpers include to add a page-section around the
item results table

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32197: Add page-section to catalog's stock rotation page
Owen Leonard [Mon, 14 Nov 2022 17:20:50 +0000 (17:20 +0000)]
Bug 32197: Add page-section to catalog's stock rotation page

This page wraps the content of the stock rotation page in the catalog
with a "page-section" div.

Note: This patch includes indentation changes, so use diff accordingly.

To test you  must have the StockRotation system preference enabled.
Apply the patch and locate a bibliographic record in the catalog.

- Click the "Rota" link in the sidebar.
- Confirm that the table of items on this page is surrounded by a
  container with a white-background.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32042: Add page-section to catalog's item detail view
Owen Leonard [Mon, 14 Nov 2022 16:48:22 +0000 (16:48 +0000)]
Bug 32042: Add page-section to catalog's item detail view

This patch adds a couple of .page-section divs to the item detail view
in the catalog. A "clearfix" class is also added in order to make sure
the sections don't overlap.

To test, apply the patch and locate a bibliographic record in the
catalog.

- In the sidebar menu of the bibliographic detail view, click "Items."
- On the item detail page, confirm that the information is displayed
  well.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32193: (follow-up) Add markup comments
Owen Leonard [Mon, 14 Nov 2022 16:35:26 +0000 (16:35 +0000)]
Bug 32193: (follow-up) Add markup comments

This patch adds comments to the template to highlight the markup
structure.

This patch should have no effect on the page's appearance or
functionality.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32193: Reindent item details template
Owen Leonard [Mon, 14 Nov 2022 16:12:04 +0000 (16:12 +0000)]
Bug 32193: Reindent item details template

This patch performs general template cleanup to the lists template:
Make indentation consistent, replace tabs with spaces, and trim trailing
whitespace.

To test, apply the patch and confirm that the layout of the page is
unchanged. Test the various operations on the page:

- Setting lost status
- Setting damaged status
- Setting withdrawn status
- Setting local holds priority status
- Adding a public or non-public note

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32154: DBIC schema
Tomas Cohen Arazi [Wed, 16 Nov 2022 12:24:09 +0000 (09:24 -0300)]
Bug 32154: DBIC schema

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32147: Capitalization: E-Resource management
Katrin Fischer [Wed, 9 Nov 2022 13:36:05 +0000 (14:36 +0100)]
Bug 32147: Capitalization: E-Resource management

When e- is used as prefix, the second word should not
be capitalized. And when e-resource-management is used
as part of a sentence, the e shouldn't be either.
See: e-mail, e-commerce. etc.

To test:
* Best to check the code... but:
* All E-Resource should now read e-resource or E-resource, as on:
  * Koha start page
  * Breadcrumbs in the ERM module
  * Descriptions of AV categories...

I chose to update the sysprefs.sql and the DB update as well
as this hasn't been released yet.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Bug 32147: (follow-up) Fix missing space

One of the AV category descriptions was missing a space
before the (e-resource management).

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32223: Remove node_modules/.bin from package.json
Jonathan Druart [Wed, 16 Nov 2022 08:09:21 +0000 (09:09 +0100)]
Bug 32223: Remove node_modules/.bin from package.json

We should not specify the node_modules/.bin part if the env is correctly configured.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 31711: (bug 27421 follow-up) Fix add to basket from a new file
Jonathan Druart [Tue, 15 Nov 2022 08:08:19 +0000 (09:08 +0100)]
Bug 31711: (bug 27421 follow-up) Fix add to basket from a new file

We lost the display of the "Add staged files to basket" link when create
a new order from a new file

Test plan:
Add order to basket from a new file, select a file and import
See the detail of the job and notice the "Add staged files to basket",
click and confirm that it works as expected.

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32178: (follow-up) Transform 'staff' interface to 'intranet'
Agustin Moyano [Tue, 15 Nov 2022 12:17:11 +0000 (09:17 -0300)]
Bug 32178: (follow-up) Transform 'staff' interface to 'intranet'

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
23 months agoBug 32178: Remove security breach introduced in bug 31378
Agustin Moyano [Fri, 11 Nov 2022 22:22:23 +0000 (22:22 +0000)]
Bug 32178: Remove security breach introduced in bug 31378

This patch removes a security breach in C4::Auth::check_api_auth introduced by bug 31378, where when someone called an api with the parameters userid and auth_client_login, check_api_auth would automatically asume the user calling was that userid.

This patch also introduces C4::Auth::create_basic_session(), a function that creates a session and adds the minimum basic parameters.

Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2 years agoBug 32191: Tidy upgrade scripts output
Tomas Cohen Arazi [Mon, 14 Nov 2022 15:02:19 +0000 (12:02 -0300)]
Bug 32191: Tidy upgrade scripts output

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2 years agoBug 32191: Add sample output for copying and pasting to skeleton.pl
Tomas Cohen Arazi [Mon, 14 Nov 2022 15:01:10 +0000 (12:01 -0300)]
Bug 32191: Add sample output for copying and pasting to skeleton.pl

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2 years agoBug 32188: Only show template controls above item form if templates have been defined
Kyle Hall [Mon, 14 Nov 2022 16:07:51 +0000 (11:07 -0500)]
Bug 32188: Only show template controls above item form if templates have been defined

The new item templates above the item edit form should only show, when at least one template has been defined.

Test Plan:
1) Browse to the item editor
2) Delete all templates
3) Note the template toolbar is displayed
4) Apply this patch
5) Reload the page, note the toolbar is not displayed
6) Create a new template, note the toolbar is now displayed
7) Delete that template, note the toolbar is no longer displayed

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2 years agoBug 31378: (QA follow-up) Remove Google OIDC syspref => IdP migration
Tomas Cohen Arazi [Mon, 14 Nov 2022 12:59:04 +0000 (09:59 -0300)]
Bug 31378: (QA follow-up) Remove Google OIDC syspref => IdP migration

This migration step was introduced by mistake and overlooked by QA.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2 years agoBug 32103: Remove flex from tab-content list elements
Lucas Gass [Thu, 3 Nov 2022 22:08:14 +0000 (22:08 +0000)]
Bug 32103: Remove flex from tab-content list elements

To test:
1. Go to HTML customization, News, or Pages and make a new entry using the text editor ( CodeMirror )
2. It is hard to focus on the Content field because the wrapper width is very small.
3. Apply patch and try again
4. The CodeMirror wrapper width should be normal again.
5. Check the other language tabs.
6. Also test the WYSIWYG editor, it should also be normal.

Note: I added some CSS to make the labels appear bold.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2 years agoBug 32099: Consistent classes for primary buttons: Assorted templates
Owen Leonard [Thu, 3 Nov 2022 15:32:45 +0000 (15:32 +0000)]
Bug 32099: Consistent classes for primary buttons: Assorted templates

This patch makes changes the button markup in various assorted
templates so that all submit buttons and any buttons that should should
be styled as primary buttons have the Bootstrap class "btn btn-primary."

To test, apply the patch and view the following pages to confirm that
everything looks correct. In most cases there are no visible changes.

- Staff interface login
- Authorities -> Add/edit
- Authorities -> Merge
- ILL -> ILL requests
- Tools -> Patron lists
- Administration -> Manage plugins -> Upload plugin
- Point of sale
- Point of sale -> Transaction history
- Holds
- Suggestions
- Tags
- Calendar

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2 years agoBug 32098: Consistent classes for primary buttons: Clubs and rotating collections
Owen Leonard [Thu, 3 Nov 2022 15:08:37 +0000 (15:08 +0000)]
Bug 32098: Consistent classes for primary buttons: Clubs and rotating collections

This patch makes changes the button markup in clubs and rotating
collections templates so that all submit buttons and any buttons that
should should be styled as primary buttons have the Bootstrap class "btn
btn-primary."

To test, apply the patch and view patron clubs and rotating collections
pages to confirm that everything looks correct. In most cases there are
no visible changes.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2 years agoBug 32096: Consistent classes for primary buttons: Tools
Owen Leonard [Thu, 3 Nov 2022 14:47:34 +0000 (14:47 +0000)]
Bug 32096: Consistent classes for primary buttons: Tools

This patch makes changes the button markup in various tool
templates so that all submit buttons and any buttons that should should
be styled as primary buttons have the Bootstrap class "btn btn-primary."

To test, apply the patch and view pages in the tools section to confirm
that everything looks correct. In most cases there are no visible
changes.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2 years agoBug 32094: Consistent classes for primary buttons: Serials
Owen Leonard [Thu, 3 Nov 2022 14:34:59 +0000 (14:34 +0000)]
Bug 32094: Consistent classes for primary buttons: Serials

This patch makes changes the button markup in serials templates so that
all submit buttons and any buttons that should should be styled as
primary buttons have the Bootstrap class "btn btn-primary."

To test, apply the patch and view serials pages to confirm that
everything looks correct. In most cases there are no visible
changes.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2 years agoBug 32086: Consistent classes for primary buttons: Patrons
Owen Leonard [Thu, 3 Nov 2022 12:01:22 +0000 (12:01 +0000)]
Bug 32086: Consistent classes for primary buttons: Patrons

This patch makes changes the button markup in patron
module templates so that all submit buttons and any buttons that should
should be styled as primary buttons have the Bootstrap class "btn
btn-primary."

To test, apply the patch and view patron module pages to confirm
that everything looks correct. In most cases there are no visible
changes.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2 years agoBug 31447: Add unit tests
Emmi Takkinen [Thu, 3 Nov 2022 12:40:40 +0000 (14:40 +0200)]
Bug 31447: Add unit tests

To test prove t/db_dependent/Circulation.t

Sponsored-by: Koha-Suomi Oy
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>
2 years agoBug 31447: Use holds pick up branch in "Please confirm checkout" message
Emmi Takkinen [Tue, 23 Aug 2022 10:48:39 +0000 (13:48 +0300)]
Bug 31447: Use holds pick up branch in "Please confirm checkout" message

When one tries to check out item which has hold in it,
"Please confirm checkout" message uses patrons home library
instead of holds pick up library. It would be more logical
to use latter here.

To test:
1. Find record with holds.
2. For first priority hold, change it's pick up library to differ from patrons homebranch if needed.
3. Check out records item for a different patron.
=> Note that notice reads: "Item ... has been on hold for ... at [patrons homebranch] since ...".
4. Apply this patch.
5. Repeat steps 2 and 3.
=> Notice should now read: "Item ... has been on hold for ... at [holds pick up branch] since ...".

Sponsored-by: Koha-Suomi Oy
Signed-off-by: Axelle Clarisse <axelle.clarisse@univ-amu.fr>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2 years agoBug 20207: Don't show search options when no suggestions show
Katrin Fischer [Sun, 13 Nov 2022 14:06:42 +0000 (14:06 +0000)]
Bug 20207: Don't show search options when no suggestions show

When you are not logged in and OPACViewOthersSuggestions is
deactivated, you don't see any suggestions.

When we see no suggestions, we should also not show the option
to serach in suggestions.

To test:
* as a logged in user and logged out, try various combinations of:
  * OPACViewOthersSuggestions
  * AnonSuggestions
* Verify display matches expectations (new button, shown suggestions,
  search input)

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2 years agoBug 20207: Don't show anyones's suggestions when OPACViewOthersSuggestions is deactivated
Mark Hofstetter [Fri, 11 Nov 2022 12:38:08 +0000 (13:38 +0100)]
Bug 20207: Don't show anyones's suggestions when OPACViewOthersSuggestions is deactivated

When you enable AnonSuggestions and ALLOW patrons that aren't logged
in to make purchase suggestions, once a suggestion has successfully
been submitted, anonymous purchase suggestions will show on OPAC even
when system preference OPACViewOthersSuggestions, is set to Don't show.

The suggestions will show on opac-suggestions.pl. However, if you search
for the title you suggested, you will get a message saying
"You are not authorized to see pending purchase suggestions."

This patch fixes the error, ie if OPACViewOthersSuggestions is set to
false not other suggestions are shown (if you are not logged in and AnonSuggestions)
OR ONLY your own suggestions if you are logged in

To test:
1) activate AnonSuggestions
2) create an anon suggestion
3) create a suggestion with a logged in user
4) toggle OPACViewOthersSuggestions Show/Don't show
5) all suggestions are shown cgi-bin/koha/opac-suggestions.pl in either case
6) apply patch
7) OPACViewOthersSuggestions is now respected ie suggestions from other users are only shown if activated
8) Please sign off

Sponsored-by: Library of the Natural History Museum Vienna
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>
2 years agoBug 32185: Fix template typo in opac-reserve.pl
Katrin Fischer [Sun, 13 Nov 2022 13:31:44 +0000 (13:31 +0000)]
Bug 32185: Fix template typo in opac-reserve.pl

This removes the %] showing for not for loan items disappear.

To test:
* Create a record with multiple items, mark one 'not for loan'
* Place an item level request on this record in the OPAC
* Make sure you 'Show nonholdable items'
* Verify the %] shows in the column with the not for loan status
* Apply patch
* Verify display is now improved

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2 years agoBug 31261: Introduce flatpickr-futureinclusive
Jonathan Druart [Fri, 4 Nov 2022 12:03:53 +0000 (13:03 +0100)]
Bug 31261: Introduce flatpickr-futureinclusive

That let us use future + today, and it's working perfectly for our use
case :)

Sponsored-by: Association KohaLa - https://koha-fr.org/
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>
2 years agoBug 31261: Disable dates in the past for curbside pickups
Jonathan Druart [Sun, 31 Jul 2022 06:29:41 +0000 (08:29 +0200)]
Bug 31261: Disable dates in the past for curbside pickups

When creating a new pickup the dates in the past won't display any
available slots. It would be better to disable them in the date picker.

Test plan:
Setup curbside pickups for your library (see bug 30650 test plan if
needed)
Create a new pickup (staff and OPAC) and confirm that the date picker widget
has the dates in the past disabled.

QA note: More work would be needed to sync calendar.inc code between
OPAC and staff. Also note that the "clear date" code wasn't needed
(please confirm).

Sponsored-by: Association KohaLa - https://koha-fr.org/
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>
2 years agoBug 31782: Remove js/autocomplete/patrons.js
Jonathan Druart [Fri, 11 Nov 2022 11:17:28 +0000 (12:17 +0100)]
Bug 31782: Remove js/autocomplete/patrons.js

On 30578 we replace circ/ysearch.pl with a call to the /api/v1/patrons
route. A new patron_autocomplete JS function has been written
(js/patron-autocomplete.js) for that purpose.

However 3 occurrences were using an existing patron_autocomplete
function, and 30578 didn't take care of adjusting correctly the call to
the REST API route.

On this patchset I am suggesting to copy/paste the JS functions defined
in js/autocomplete/patrons.js, because we are very close of the 22.11
release. But ideally we should improve js/patron-autocomplete.js to add
a new 'on-select-add-to' option that will take care of add/remove/hide
behaviour. IMO that must be done on a separate bug, and after 22.11 is
released (to not need to retest the other occurrences of the patron
autocomplete)

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>
2 years agoBug 31782: Fix autocomplete when duplicating orders
Jonathan Druart [Fri, 11 Nov 2022 11:16:35 +0000 (12:16 +0100)]
Bug 31782: Fix autocomplete when duplicating orders

Test plan:
Add a new order to a basket from an existing order
Search for the order to duplicate using the "Basket created by" field

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>
2 years agoBug 31782: Fix patron autocomplete on order search
Jonathan Druart [Fri, 11 Nov 2022 11:13:21 +0000 (12:13 +0100)]
Bug 31782: Fix patron autocomplete on order search

Test plan:
Search for order using the "Basket created by" field

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>
2 years agoBug 31782: Fix patron autocomplete on patron list
Jonathan Druart [Fri, 11 Nov 2022 11:10:28 +0000 (12:10 +0100)]
Bug 31782: Fix patron autocomplete on patron list

Test plan:
Add new patrons to a patron list

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>
2 years agoBug 32179: Add page-sections as appropraite to the ERM module
Martin Renvoize [Fri, 11 Nov 2022 14:30:18 +0000 (14:30 +0000)]
Bug 32179: Add page-sections as appropraite to the ERM module

We missed the page-section addition when ERM was updated for the new UI
prior to push.

Test plan
1) Start a koha-testing-docker
2) Build the ERM module with 'kshell > yarn install > yarn build_js'
3) Enable the ERM module via the system preferences
4) Enable both 'EBSCO' and 'Local' as providers
4) Check the following pages
   * ERM > Agreements
   * ERM > Licenses
   * ERM > eHoldings > Local > Packages
   * ERM > eHoldings > Local > Titles
   * ERM > eHoldings > Local > Titles > Add from a list
   * ERM > eHoldings > EBSCO > Packages
   * ERM > eHoldings > EBSCO > Titles
5) Apply this patch
6) Build the app again 'yarn build_js'
7) Confirm page-sections appear as expected on the pages mentioned in
   step 4.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2 years agoBug 32072: Consistent classes for primary buttons: Cataloging
Owen Leonard [Wed, 2 Nov 2022 12:18:31 +0000 (12:18 +0000)]
Bug 32072: Consistent classes for primary buttons: Cataloging

This patch makes changes the button markup in Cataloging templates
so that all submit buttons and any buttons that should should be styled
as primary buttons have the Bootstrap class "btn btn-primary."

To test, apply the patch and view pages in Cataloging to confirm
that everything looks correct. In most cases there are no visible
changes.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2 years agoBug 24606: (QA follow-up) Remove duplicate include
Tomas Cohen Arazi [Fri, 11 Nov 2022 18:47:36 +0000 (15:47 -0300)]
Bug 24606: (QA follow-up) Remove duplicate include

2 years agoBug 24606: Fix encoding issues on decoded content
Tomas Cohen Arazi [Fri, 11 Nov 2022 18:26:39 +0000 (15:26 -0300)]
Bug 24606: Fix encoding issues on decoded content

This patch makes the `decoded_contents` method UTF-8 encode the data
before calling the relevant decode_json, as expected by the JSON library
[1].

To test:
1. Apply the regression tests patch
2. Run:
   $ kshell
  k$ prove t/db_dependent/Koha/Item/Template.t
=> FAIL: Tests fail!
3. Apply this patch
4. Repeat 2
=> SUCCESS: Tests pass!

[1] `Any decoding or encoding (e.g. to UTF-8 or UTF-16) needs to be done
yourself, e.g. using the Encode module.` https://metacpan.org/pod/JSON

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2 years agoBug 24606: Regression tests
Tomas Cohen Arazi [Fri, 11 Nov 2022 18:14:52 +0000 (15:14 -0300)]
Bug 24606: Regression tests

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2 years agoBug 32151: Resolve uninitialized warn in numeric ne in C4::Ris
Marcel de Rooy [Wed, 9 Nov 2022 15:12:31 +0000 (15:12 +0000)]
Bug 32151: Resolve uninitialized warn in numeric ne in C4::Ris

We should not write:
    if ($kwfield != undef) {

Test plan:
Pick record with UTF8 chars.
Download via cart or shelf in RIS format.
Check your logs.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2 years agoBug 32158: Compiled CSS
Tomas Cohen Arazi [Fri, 11 Nov 2022 12:01:00 +0000 (09:01 -0300)]
Bug 32158: Compiled CSS

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2 years agoBug 32158: Specify due date field is very long now
Owen Leonard [Thu, 10 Nov 2022 19:04:11 +0000 (19:04 +0000)]
Bug 32158: Specify due date field is very long now

This patch adds a reasonable width to the "specify due date" date field
on the circulation page.

To test, apply the patch and rebuild the staff interface CSS.

Check out to a patron and click the "setting" icon on the "Enter item
barcode" field.

In the checkout setting panel, confirm that the date field isn't
unreasonably wide.

Signed-off-by: Barbara Johnson <barbara.johnson@swbell.net>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2 years agoBug 32163: (bug 32030 follow-up) Fix koha_object[s]_class for ErmUserRole
Jonathan Druart [Thu, 10 Nov 2022 07:16:06 +0000 (08:16 +0100)]
Bug 32163: (bug 32030 follow-up) Fix koha_object[s]_class for ErmUserRole

Test plan:
run t/db_dependent/TestBuilder.t and confirm that the error related to
this module is gone. Another one may still fail however

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>