koha.git
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 months 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>
18 months 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>
18 months 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>
18 months 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>
18 months 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>
18 months 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>
18 months 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>
18 months 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>
18 months 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>
18 months 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>
18 months 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>
18 months 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>
18 months 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>
18 months 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>
18 months 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>
18 months 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>
18 months 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>
18 months 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>
18 months 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>
18 months 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>
18 months 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>
18 months 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>
18 months 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>
18 months 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

18 months 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>
18 months 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>
18 months 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>
18 months 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>
18 months 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>
18 months 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>
18 months agoBug 32161: (bug 32030 follow-up) Fix koha_object[s]_class for ErmEholdingsPackagesAgr...
Jonathan Druart [Thu, 10 Nov 2022 06:36:19 +0000 (07:36 +0100)]
Bug 32161: (bug 32030 follow-up) Fix koha_object[s]_class for ErmEholdingsPackagesAgreement

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>
18 months agoBug 32154: DBRev 22.06.00.085
Tomas Cohen Arazi [Fri, 11 Nov 2022 11:56:05 +0000 (08:56 -0300)]
Bug 32154: DBRev 22.06.00.085

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
18 months agoBug 32154: Missing primary key on erm_user_roles table
Pedro Amorim [Wed, 9 Nov 2022 17:55:20 +0000 (16:55 -0100)]
Bug 32154: Missing primary key on erm_user_roles table

The aforementioned TestBuilder should display "Koha::ERM::UserRole", not be empty.

This patch adds a primary key to the erm_user_roles table and fixes that.

Also includes atomicupdate file to update database schema as well as updates to
kohastructure.sql provided by Jonathan Druart.

Looked into the vue files but didn't find anywhere or a need to include the new
primary key in any of the requests as there is no request of users by role_user_id
being made.

Erm users are being created/updated as a relationship through licenceses/agreements.

Furthermore, when editing a role of an existing user, this new primary key is already
being supplied embeded in the license/agreement.

Test plan:
Add users to license and agreement
Run the cypress tests
Confirm that the change fix the test that was failing in TestBuilder.t
(another one may still fail however)

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>
18 months agoBug 32162: DBRev 22.06.00.084
Tomas Cohen Arazi [Fri, 11 Nov 2022 11:53:43 +0000 (08:53 -0300)]
Bug 32162: DBRev 22.06.00.084

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
18 months agoBug 32162: DBIC schema
Tomas Cohen Arazi [Fri, 11 Nov 2022 11:52:41 +0000 (08:52 -0300)]
Bug 32162: DBIC schema

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
18 months agoBug 32162: Add primar key to erm_eholdings_packages_agreements
Jonathan Druart [Thu, 10 Nov 2022 07:06:28 +0000 (08:06 +0100)]
Bug 32162: Add primar key to erm_eholdings_packages_agreements

Test plan:
Confirm that this change fixes the related TestBuilder.t failure
Confirm that it does not break the eRM app, try to attach an agreement
to a package.

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>
18 months agoBug 32130: Add a test to ensure vue files will be kept tidy
Jonathan Druart [Tue, 8 Nov 2022 06:16:04 +0000 (07:16 +0100)]
Bug 32130: Add a test to ensure vue files will be kept tidy

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
18 months agoBug 31759: Compiled CSS
Tomas Cohen Arazi [Thu, 10 Nov 2022 17:53:38 +0000 (14:53 -0300)]
Bug 31759: Compiled CSS

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
18 months agoBug 37159: Updated tab style
Owen Leonard [Wed, 26 Oct 2022 18:29:23 +0000 (18:29 +0000)]
Bug 37159: Updated tab style

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

Test plan
1) Confirm the styling change for top level tabs on patron details or catalog
   details pages.
2) Confirm the styling change is ok for a nested set of tabs (catalog
   holds page is a good example).

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
https://bugs.koha-community.org/show_bug.cgi?id=31759

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
18 months agoBug 31819: (QA follow-up) Add page section to list of items
Katrin Fischer [Thu, 10 Nov 2022 16:09:00 +0000 (16:09 +0000)]
Bug 31819: (QA follow-up) Add page section to list of items

In order to test, you need to add items on order and add
at least one to make the list appear above the item section

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
18 months agoBug 31819: (QA follow-up) Fix alignment of Statistic fields at end of form
Katrin Fischer [Thu, 10 Nov 2022 16:01:24 +0000 (16:01 +0000)]
Bug 31819: (QA follow-up) Fix alignment of Statistic fields at end of form

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
18 months agoBug 31819: Formatting of item form in acq when ordering is broken
Owen Leonard [Thu, 10 Nov 2022 14:40:41 +0000 (14:40 +0000)]
Bug 31819: Formatting of item form in acq when ordering is broken

I propose that we add CSS to the page to fix this since it's fairly
specific to the way this page is broken.

To test, apply the patch and view a basket in Acquisitions.

- Click "Add to basket" and choose "From a new (empty) record."
- Confirm that the item form layout looks correct.
- Perform the same test when adding to a basket from an existing record.

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>
18 months agoBug 32145: Compiled CSS
Tomas Cohen Arazi [Thu, 10 Nov 2022 17:49:06 +0000 (14:49 -0300)]
Bug 32145: Compiled CSS

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
18 months agoBug 32145: Fix style of buttons with class .btn-danger
Owen Leonard [Thu, 10 Nov 2022 11:49:33 +0000 (11:49 +0000)]
Bug 32145: Fix style of buttons with class .btn-danger

This patch adds style to the staff client's global SCSS which adds
correct styling to buttons classed with .btn-danger.

This isn't the correct way to fix this, but it's the fast way.
Rebuilding Bootstrap with custom colors is the correct way, but
Bootstrap 3.x doesn't use SCSS. I consider this is a FIXME for an
upgrade of Bootstrap in the staff interface.

To test, apply the patch and rebuild the staff interface CSS. Test
instances where the .btn-danger class is used. Two examples:

Holds:

- Locate a bibliographic records with holds and view the holds.
- Click the "trash" icon to delete one of the holds.
- In the confirmation modal, check that the "Confirm cancellation"
  button looks correct in its default, hover, and active ("clicked")
  state.

Cataloging:

- Open a new blank record in the basic MARC editor.
- Click "Save" without filling any mandatory fields.
- You should see a warning about the empty fields.
- Scroll down until the warning is offscreen. An "Errors" button should
  appear in the toolbar.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
18 months agoBug 32073: (QA follow-up) Fix capitalization: Cancel and Transfer all
Katrin Fischer [Thu, 10 Nov 2022 15:45:14 +0000 (15:45 +0000)]
Bug 32073: (QA follow-up) Fix capitalization: Cancel and Transfer all

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
18 months agoBug 32073: Consistent classes for primary buttons: Circulation
Owen Leonard [Wed, 2 Nov 2022 12:37:16 +0000 (12:37 +0000)]
Bug 32073: Consistent classes for primary buttons: Circulation

This patch makes changes the button markup in Circulation templates --
including offline circulation -- 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 Circulation 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>
18 months agoBug 32165: (QA follow-up) Fix tabs in ISBD details
Katrin Fischer [Thu, 10 Nov 2022 15:31:25 +0000 (15:31 +0000)]
Bug 32165: (QA follow-up) Fix tabs in ISBD details

The QA test tools complained about tabs in 2 lines, this is fixed here.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
18 months agoBug 32165: Add page-section to issuehistory
Martin Renvoize [Thu, 10 Nov 2022 10:58:59 +0000 (10:58 +0000)]
Bug 32165: Add page-section to issuehistory

Test plan
1) Confirm the issue history view now uses page-section appropriately

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
18 months agoBug 32165: Add page-section to ISBDdetail
Martin Renvoize [Thu, 10 Nov 2022 10:44:29 +0000 (10:44 +0000)]
Bug 32165: Add page-section to ISBDdetail

We fix some whitespace and move the toolbar above the H1 too.

Test plan
1) Confirm the headings and page-sections now look correct on the ISBD
   details view

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
18 months agoBug 32165: Add page-section to labeledMARCdetail
Martin Renvoize [Thu, 10 Nov 2022 10:38:31 +0000 (10:38 +0000)]
Bug 32165: Add page-section to labeledMARCdetail

Test plan
1) Confirm that page-sections now appear as expected on the labeled marc
   view.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
18 months agoBug 24606: DBIC schema
Tomas Cohen Arazi [Thu, 10 Nov 2022 17:44:59 +0000 (14:44 -0300)]
Bug 24606: DBIC schema

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