Commit graph

21627 commits

Author SHA1 Message Date
Katrin Fischer
8dcdeaf23d
Bug 33499: (QA follow-up) Open external links in new tab
Adds target="_blank" to the vendor website and interface URLs,
as we can expect them to be external sites.

Also changes mark-up a little so that the URL is shown without
an additional space in front, lining up with the other fields.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-22 12:35:48 -03:00
f6b9f25a4f
Bug 33499: Make interface URL clickable on vendor details
This patch adds markup around the vendor details interface URL so that
it is a clickable link.

To test, apply the patch and go to Acquisitions.

- Search for a vendor
- If you don't have a vendor with interfaces defined, edit one
  - Under Interfaces -> Interface details, fill out the form, including
    the URI field.
  - Add more than one interface
- Save your changes and then view the vendor details page
- In the Interfaces section the interfaces you defined should have
  clickable links.

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-22 12:35:48 -03:00
60f0aee9b6
Bug 34215: Introduce a ToolbarButton Vue component
Our toolbar component is not flexible enough, we cannot:
* have something else than a router-link
* have a link outside of the app (it needs to be a Vue route)

This patch adds a ToolbarButton component that is used for existing
button. But other buttons can be added without being a router-link.

Test plan:
No change in behaviour here! Test the buttons in the 4 existing toolbar
(in the ERM module)

Sponsored-by: BULAC - http://www.bulac.fr/
Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-22 11:35:48 -03:00
3da3e6e8ff
Bug 34453: Update background of quick spine label pop-up
This patch updates the quick spine label popup so that the footer uses
the same markup as the recently updated Z39.50 popup window in
cataloging.

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

Go to Cataloging -> Quick spine label creator.

 - Test the form with both an existing barcode and a non-existent
   barcode.
   - In the pop-up window, confirm that the footer looks correct and
     that the buttons in the footer, in both cases, work correctly.

Signed-off-by: Sam Lau <samalau@gmail.com>
Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-22 11:35:48 -03:00
d92f033cfc
Bug 34383: Fix inconsistencies in Patron attributes page titles, breadcrumbs, and header
This patch makes changes to the patron attribute types administration
template so that the page title, breadcrumb navigation, and page headers
are more consistent with each other and with other parts of Koha.

To test, apply the patch and go to Administration -> Patron attribute
types. Test these versions of the page to confirm that the breadcrumbs
and page title are consistent with each other:

- Main view
- New patron attribute type
- Edit patron attribute type
- Confirm deletion of attribute type

Signed-off-by: Christian Nelson <christian.nelson@uwasa.fi>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-22 11:35:47 -03:00
160bfe32ad
Bug 34553: Update send list and send cart popup footers
This patch updates the templates behind the "send cart" and "send list"
pop-ups in order to make the style of the footer consistent with some
recently-updated similar examples, like the catalog's Z39.50 search
popup.

The patch also makes a minor change to our global JavaScript include so
we can get away from using the "close" class as a trigger for closing a
pop-up window. Bootstrap has a built-in "close" class that we always
have to override. "close_window" is added as another class to use, and
the other instances can be cleaned up overy time.

To test, apply the patch and perform a catalog search in the staff
interface.

 - Add one or more items to the cart.
 - Open the cart popup and click the "Send" button.
 - In the pop-up window, confirm that the footer looks correct.
 - Test the process of using the tab key between input fields and
   submit/cancel buttons. All controls should be accessible.
 - Test the "Cancel" button to confirm that it closes the window.
 - Reopen the window and test sending the email.
 - On the confirmation page, confirm that the footer looks correct and
   that the "Close window" button works.

 - Test the same processes in the Lists module: View a list in the staff
   interface and test the process of sending a list.

Signed-off-by: Andrew Auld <andrew.auld@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-22 11:35:46 -03:00
4b588121e4
Bug 34199: Add full title information to subscription detail page
Show the full title information, including part_name and part_number
on the subscription detail page.

To test:
* Add a subscription linked to a record with 245$abnp set
* Verify only 245$ab will show up on the subscription detail page
* Apply patch
* Verify that the full title information shows up on the detail page

Signed-off-by: Sam Lau <samalau@gmail.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-22 11:35:46 -03:00
b770b691e6
Bug 34230: Add part_name and part_number to subscription search results
This adds biblio.part_name and biblio.part_number to the SELECT of
SearchSubscriptions in order to be able to display the information in
the results list. It does not affect search.

To test:
* Add one or more subscriptions
* Make sure at least one is linked to a title with 245$abnp
* Verify that the result list only shows 245$ab
* Apply patch
* Verify full title information is now shown

Signed-off-by: Sam Lau <samalau@gmail.com>
Signed-off-by: Michaela Sieber <michaela.sieber@kit.edu>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-22 11:35:45 -03:00
Katrin Fischer
f4ee7f2bb9
Bug 34446: (QA follow-up) Add colons on delete confirm page
This adds the missing colon on the 'confirm deletion' page.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-22 11:35:44 -03:00
Laura Escamilla
f9a4097200
Bug 34446: Added missing colon to Can be guarantee
To test:

1. Go to Administration > patron categories and edit or create a new category. Notice that “Can be guarantee” does not have a colon.
2. Apply patch and refresh the page.
3. Can be guarantee now has a colon — yay!
4. Sign off and have a great day. :)

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-22 11:35:43 -03:00
1a398c5e9d
Bug 34885: Improve confusing pref description for OPACHoldsIfAvailableAtPickup
Changes pref description and sysprefs.sql.
The change is not important enough for a dbrev.

Test plan:
Look at the changed text in Systempreferences.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-22 11:02:13 -03:00
Katrin Fischer
b47431b395
Bug 33911: Move variables into strings
This has the advantage that translators can tell the full
context and are also able to move the variable if needed
for better grammar.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-22 10:52:51 -03:00
b2f479f51c
Bug 33911: Improve translation of title tags: Catalog, basket, and lists
This patch updates catalog, basket, and lists templates so that title
tags can be more easily translated.

To test, apply the patch and confirm that the following pages have the
correct title tags:

 - Advanced search
   - Search results
     - Bibliographic details
       - MARC preview
       - Image viewer (with local cover images)
       - MARC details
       - Labeled MARC details
       - ISBD details
       - Items
       - Checkout history
       - Rota
   - Add titles to the cart and view the cart
     - Send cart
 - Item search
 - Lists
   - View list
   - New list
   - Edit list
   - Send 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>
2023-09-22 10:52:50 -03:00
26d3520ed7
Bug 33927: Improve translation of title tags: Tools
This patch modifies tools templates so that title tags can be
more easily translated. The patch also makes some modifications to
titles, breadcrumb navigation, and page headers in order to make them
more consistent with each other and with other similar pages.

To test, apply the patch and go to Tools. Test each of the following
pages and each variation of the page to confirm that titles,
breadcrumbs, and page headers look correct.

- Tools home page
- Import patrons
  - Import results
- Notices and slips
  - Main page
    - Main page filtered by library
    - New notice
    - Edit notice
      - Preview notice: With a CHECKIN, CHECKOUT, or HOLD_SLIP notice,
        fill in the "Data for preview" box in the "Email" section.
        Although the template loads in a modal window which doesn't show
        the page title, you can confirm that there are no errors.
- Overdue notice/status triggers
- Batch patron deletion
  - Confirmation page
- Batch patron modification
- Batch extend due dates
- Upload patron images

Print notices: With useDischarge enabled, log into the OPAC as a
user with no checkouts. Go to the "Ask for a discharge" tab and click
"Ask for a discharge."

Locate the patron's record in the staff interface and click "Discharges"
in the left-hand sidebar menu. Click "Generate discharge." Open the
resulting PDF file in a browser. The page title should be "Print notices
for [date]."

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-22 10:52:49 -03:00
3f6b956533
Bug 33919: Improve translation of title tags: Patron clubs
This patch updates patron clubs templates so that title tags can be more
easily translated.

The patch also makes some minor changes to some templates to improve
consistency between page title, breadcrumb navigation, and page heading.

To test, apply the patch and confirm that the following pages have the
correct title tags:

- Tools -> Patron clubs
  - New and Edit club template
  - New and Edit club
  - Club enrollments (from the list of clubs choose Actions ->
    Enrollments)

Signed-off-by: Salah Ghedda <salah.ghedda@inLibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-22 10:52:49 -03:00
8ff6189c2a
Bug 33918: Improve translation of title tags: Patron card creator
This patch updates patron card creator templates so that title
tags can be more easily translated.

The patch also makes some minor changes to some templates to improve
consistency between page title, breadcrumb navigation, and page heading.

To test, apply the patch and confirm that the following pages have the
correct title tags:

- Tools -> Patron card creator home page
  - New -> Card batch
  - New -> Image
  - New -> Layout
  - New -> Card template
  - New -> Printer profile
  - Manage -> Card batches
  - Manage -> Images
  - Manage -> Layouts
  - Manage -> Card templates
  - Manage -> Printer profiles

Signed-off-by: Émily-Rose Francoeur <emily-rose.francoeur@inLibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-22 10:52:48 -03:00
0f3a1fe137
Bug 34055: Rebased on top of 34219
Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-22 10:52:47 -03:00
4ffe9a6ed9
Bug 34055: Add API client class to get items
This patch add a new item-api-client.js API client to fetch items using
our /items REST API endpoint.

Test plan:
Add the following two lines to one of the existing Vue component (in
data() for instance) and hit the view that is using it.
  let client = APIClient.item
  client.items.getAll().then((items) => console.log(items))
Notice that you see all the items in the console.

Sponsored-by: BULAC - http://www.bulac.fr/
Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>

Was failing the pretty test, fixed with yarn pretty
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-22 10:52:47 -03:00
e28ea9c4af
Bug 34880: (follow-up) Make condition more specific
To test (applies to both patches):

* Add a new basket as 'standing order' and with 'items created in cataloguing'
* Create an order line
* Receive shipment and create an invoice
* Receive your order
* Verify:
  * Quantity ordered: 1
  * Quantity received: 1 (pre-filled)
  * No item form on the right
* Confirm
* Receive error:
  Order X: No quantity to receive set. No items will be created.
* Verify no receive was processed (received orders remains empty)
* Apply patch
* Verify receive works as expected

Other possible combinations to test:

* Standing order, items on receive
* Standing order, items on order (no items are created)
* Standing order + order from subscription + any item setting (no items are created)
* No standing order + items in cataloguing
* No standing order + items on receive
* No standing order + items on order
* No standing oder + order from subscription + all item settings (no items are created)

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Michaela Sieber <michaela.sieber@kit.edu>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-22 10:52:42 -03:00
9dd6fa2d8d
Bug 34880: Fix order receive for standing orders
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Michaela Sieber <michaela.sieber@kit.edu>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-22 10:52:41 -03:00
2661943214
Bug 34730: Add responsive behavior to more tables in the OPAC
This patch adds responsiveness to several DataTables which were not
updated in 32341. The patch removes the CSS-based responsive styling
which was previously used for these tables.

This patch also adds some additional configuration to the tables on the
user home page so that the title column is always prioritized when
DataTables collapses columns in narrow views.

To test, apply the patch and rebuild the OPAC CSS. Ideally this should
be tested with a user who has checkouts, overdues, holds, tags, and a
checkout history.

- Log in to the OPAC and test the user summary page. Check that each
  table adjusts well to narrow browser widths. In each case the column
  containing the title should never be hidden no matter how narrow the
  window:
  - Checkouts
  - Relatives' checkouts (requires that the user is a guarantor for a
    patron with checkouts and that the guarantee's account is set up to
    show checkouts to the guarantor).
  - Overdues
  - Holds
  - Article requests

The new places the responsive DataTables extension is being used:

- Checkout history
- Suggestions
- Tags (in the table of user-submitted tags)
- Most popular

Again, in each case the table should be responsive and the title column
should be prioritized so that it doesn't get hidden at narrow page
widths.

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-19 16:38:23 -03:00
7c736793cb
Bug 34804: Fix translations
This patch fixes some translations in the ERM module

Translations should be wrapped in this.$__()

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-19 16:38:22 -03:00
d80827f033
Bug 33716: (QA follow-up) Fix xt/yaml_valid.t
Test plan: Run
prove -vv xt/yaml_valid.t

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-19 16:34:37 -03:00
53ab81b450
Bug 33716: (QA follow-up) Fix styling for Type_disclaimer_date and Type_disclaimer_value on 'Request details'
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-19 16:34:35 -03:00
53a08bcbe6
Bug 33716: (follow-up) Move sysprefs to new Workflow sub heading
Move ILLModuleCopyrightClearance, ILLCheckAvailability,  and ILLModuleDisclaimerByType sys prefs
State that ILLModuleCopyrightClearance is OPAC only in its description
Correct 'bold' reference in ILLModuleDisclaimerByType description

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-19 16:34:33 -03:00
Katrin Fischer
5d85c270eb
Bug 33716: (follow-up) Add cancel links and update breadcrumbs
For both staff interface and OPAC:
* Update breadcrumbs to have a new entry for the page
* Rename button From Next to submit
* Add a cancel link to back out

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-19 16:34:33 -03:00
Katrin Fischer
a9c700f8e6
Bug 33716: (follow-up) Amend system preference descrpition and improve formatting
This adds some documentation for the different options presented in
the example YAML entry and improves formatting a little for better
readability of the example.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-19 16:34:32 -03:00
753e5a86d9
Bug 33716: ILL Type Disclaimer - OPAC
Update the way Availability is handled
Add the new type disclaimer workflow operation
after Availability

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-19 16:34:31 -03:00
0d45394827
Bug 33716: ILL Type Disclaimer - Staff
Update the way Availability is handled
Add the new type disclaimer workflow operation
after Availability

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-19 16:34:30 -03:00
1009d3fca8
Bug 33716: New ILLModuleDisclaimerByType sys pref
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-19 16:34:29 -03:00
Caroline Cyr La Rose
7d46c54966
Bug 33828: ExportCircHistory description is misleading
This patch removes the mention of checkout history from the
ExportCircHistory system preference description, as this system
preference only allows to export current checkouts, not checkout
history.

This patch also modifies the description of the ExportRemoveFields
system preference to also remove mention of checkout history.

To test:
0. Apply patch
1. Go to Administration > System preferences > Circulation
2. Read the description for ExportCircHistory, make sure it makes sense,
   and that spelling and syntax are correct
3. Read the description for ExportRemoveFields, make sure it makes
   sense, and that spelling and syntax are correct

Signed-off-by: Sam Lau <samalau@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-19 16:34:28 -03:00
Caroline Cyr La Rose
dd493fe2cb
Bug 34807: Move EnableItemGroups in cataloging preferences
This patch moves the EnableItemGroups system preference with cataloging
preferences, as it deals with the grouping of items in a bibliographic record.

To test:
1. Apply patch
2. Go to Administration > System preferences
3. Search for enableitemgroup
--> EnableItemGroups should be in cataloging preferences
--> EnableItemGroupHolds should be in circulation preferences

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-19 16:34:28 -03:00
befb7f9f42
Bug 32984: (QA follow-up) Update to respect EDIFACT preference
Since the first submission of this patch we have introduced a system
preference to enable/disable edifact in it's entirety. This patch adds
the check for this preference.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-19 16:34:26 -03:00
2fb758d395
Bug 32984: Add link to EDI invoice to "Invoice" column if there is one
Test Plan:
1) Find or create an item invoiced via an EDI INVOICE message
2) Ensure you have the edi_manage subpermission
3) View catalogue/detail.pl, not the invoice link in the invoice column
4) Apply this patch
5) Restart all the things!
6) Reload catalogue/detail.pl
7) Note the new "(EDI invoice)" link in the column for the item
8) Verify the link does not show if you do not have the edi_manage
   subpermission

Signed-off-by: Jeremy Evans <Jeremy.Evans@ukhsa.gov.uk>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-19 16:34:26 -03:00
51e602e61c
Bug 33734: Remove incorrect URL escaping on search filters
This patch removes an incorrect URL escaping on search filter
facet URLs.

Without this patch, search filters using non-ASCII characters won't
return results.

To test:
0. Apply patch
1. Enable SavedSearchFilters syspref
2. Search for "the"
3. Save as search filter (to show on both OPAC and staff interface)
4. Search for "ü" in staff interface
5. Apply the "the" filter
6. Note that search results appear
7. Search for "ü" in OPAC
8. Apply the "the" filter
9. Note that search results appear

Signed-off-by: Michaela Sieber <michaela.sieber@kit.edu>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-19 16:34:24 -03:00
Katrin Fischer
8a833a3510
Bug 27634: (QA follow-up) Add punctuation to message on About page
This just adds some missing commas and turns a pref into preference
in the messages displayed on the system information tab.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-19 16:34:21 -03:00
44e2eef451
Bug 27634: Hide "Register here" links
Make sure the pref is filled with a valid patron's category to display
the "register" link

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>
2023-09-19 16:34:20 -03:00
6ea09bbe0a
Bug 27634: Add a warning to the about page if PatronSelfRegistrationDefaultCategory not set
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>
2023-09-19 16:34:19 -03:00
dcf02a9e4b
Bug 27634: Force include of dateexpiry
Otherwise we see a "Date expiry" entry in the form.

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>
2023-09-19 16:34:19 -03:00
461cd34698
Bug 27634: Add the ability to exclude fields from "modal" sysprefs
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>
2023-09-19 16:34:18 -03:00
931d39a197
Bug 27634: Force include categorycode to PatronSelfRegistrationBorrowerUnwantedField
We should always use the category defined in
PatronSelfRegistrationDefaultCategory.
This could be discussed however.

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>
2023-09-19 16:34:17 -03:00
4e4a4a2d44
Bug 34626: Add waitingdate to holdswaiting patron message
To test:
1. Apply patch
2. Place 2 or more holds for a patron and trigger them so they are waiting holds.
3. Now go to both moremember.tt and circulation.tt for that patron.
4. Confirm that you now see a 'Waiting here since' message.

Signed-off-by: Kelly <kelly@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-18 15:31:53 -03:00
5d70f71774
Bug 33924: Improve translation of title tags: Rotating collections
This patch updates rotating collection templates so that title tags can
be more easily translated.

The patch also makes some corrections to breadcrumb navigation and page
headers to make sure they are consistent with titles.

To test, apply the patch and confirm that the following rotating
collection pages have the correct title tags:

- Tools -> Rotating collections
  - Rotating collections list
  -> New collection
  -> Edit collection
  -> Delete collection -> Confirmation page
  -> Transfer collection

Signed-off-by: Salah Ghedda <salah.ghedda@inLibro.com>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-18 15:31:52 -03:00
5f6e1a1cf7
Bug 34740: Update sort options in ES config to by Yes/No
At some point the option for 'undef' was removed from te sort options
and was collapsed to yes/no

The dropdowns when adding a new field were missed, this patch corrects that.

While undef in a mappings file wil stil load, when saving we should not privde undef any longer

To test:
1 - Browse to bottom to add a new field on the 'Bibliographic records' tab in
    Administration > Search engine configuration (Elasticsearch)
2 - Set sortable column to undef, set other columns and provide a valid field
3 - Click '+Add'
4 - Click 'Save'
5 - At top of page you receive an error:
 An error occurred when updating mappings: DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::mysql::st execute failed: Column 'sort' cannot be null at /kohadevbox/koha/Koha/SearchField.pm line 37 .
6 - Apply patch, restart all
7 - Add a new mapping, your only choices are Yes/No
8 - Save mapping
9 - Confirm it saves correctly

Signed-off-by: Salah Ghedda <salah.ghedda@inLibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-18 15:31:52 -03:00
3cf3ab9a8d
Bug 34660: Make deliveries table on housebound.tt a DataTable
To test:
1. Turn on the housebound module ( HouseboundModule )
2. From a staff account add at leats one staff member as a Deliverer and a Chooser.
3. From a patron account click on the 'Housebound' tab. Add some deliveries.
4. Notice they sort with the oldest deilivery first.
5. Apply patch and reload the page.
6. Now the table is a DataTable and can be dymacially sorted.

Signed-off-by: Rhonda Kuiper <rkuiper@roundrocktexas.gov>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-18 15:31:51 -03:00
d947ae3c1a
Bug 34728: Make pre tag conditional
This patch makes the pre-formatting of notice templates conditional on the content type.

Test plan:
1) Navigate to tools > Notices and slips
2) Edit the notice with the code of HOLD
3) Under print, paste the following
<p>Please collect within 10 days from the date of this letter and don't forget to bring your library card with you.</p>
<p>Be aware that opening hours vary at different library branches so if in doubt double check the times before you visit.</p>
<p>Should you no longer require this item please contact us so we can make it available for another customer.</p>

<p>Thank you</p>
4) Check the box that says HTML message and save the notice
5) In Patrons, select a patron and in Patron messaging preferences, check the box in the Email column for Hold filled
6) Find a record in the catalogue
7) Copy the barcode for one of the items
8) Place a hold on the item for the patron you selected
9) Navigate to Circulation > Check-in
10) Paste the barcode in the Check-in box and click Check-in
11) In the pop-up box, click Confirm hold
12) In the command line, run perl misc/cronjobs/gather_print_notices.pl --letter_code=HOLD --html /tmp
13) cd /tmp
14) There should be a file in there called 'notices_HOLD-date.html
15) cat this file
16) The html you pasted in the template will be wrapped in a <pre> tag
17) Apply patch and restart_all
18) rm the notices file that was created
19) cd /kohadevbox/koha
20) Select a new record from the catalogue and repeat steps 7-15 for this record, using the same patron
21) This time, the html file should not contain the <pre> tag
22) Sign off!

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-18 15:31:49 -03:00
a4bdd27fd9
Bug 34613: Replace onclick attributes in midiplayer.js
This patch replaces the onclick attributes in midiplayer.js
with Javascript click handlers.

To test:
0. Apply patch
1. Clear browser cache (it may be necessary to go into the
   Network tab and explicitly disable cache)
2. Add 031 subfields 2gopnu to Default framework
3. Create a catalogue record with a 031 like follows:
2: pe
g: G-2
o: 4/4
p: 4bB''C2bE/2F4GbB/'bB2''C4D/F2.bE/4GG2bB/4'''C2C4''bB/4bE2G4bB/4bE2.F/
n: xFCGD
4. Enable the following sysprefs:
   OPACShowMusicalInscripts
   OPACPlayMusicalInscripts
5. Go to OPAC record view and click "Play this sample"
6. Play with the "Pause/Start" and "Stop" buttons
7. If the buttons work, it means the patch worked

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-18 15:31:47 -03:00
3db74c8086
Bug 34781: Add a span tag in opac-memberentry
Test plan:
Enable self registration and GDPR consent (privacy policy).
Look at selfreg page on OPAC. Scroll to bottom.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-18 12:06:26 -03:00
6091a938c1
Bug 33876: Add class for styling
To test:
1. Checkout and item that has a public and nonpublic note.
2. In the checkout table ( Title column ) notice the notes display. If you use the browser dev tools to inspect you'll notice a "-" outside of any HTML element.
3. Apply patch.
4. See the '-' is now inside of a html element with class of seperator.

Signed-off-by: Sam Lau <samalau@gmail.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-18 12:06:25 -03:00
c997fe863f
Bug 34711: Remove use of onclick for opac-privacy.pl
This change removes the "onclick" attribute for the buttons
on opac-privacy.pl.

Note: The Javascript is placed in a separate file, which is
the preferred way for Javascript to be handled by
Content-Security-Policy

Test plan:
0. Apply the patch
1. Go to http://localhost:8081/cgi-bin/koha/admin/preferences.pl?op=search&searchfield=OPACPrivacy
2. Set syspref to "Allow"
3. Go to http://localhost:8080/cgi-bin/koha/opac-privacy.pl
4. The confirmation modal appears and "OK" and "Cancel" buttons work as
   expected

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-18 12:06:24 -03:00
bc8a062001
Bug 34724: (QA follow-up):
Replace href from thumbnail link with a # to keep pointer event. The href link gets reconstructed by showCover anyway
Remove return false from on click event, its not triggering a location change anymore because of the above
Remove check for imagenumber, its a non-null primary key, if the image exists, then the imagenumber must also exist

Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-18 12:06:23 -03:00
847b5f0777
Bug 34724: Remove inline onclick handler for opac-imageviewer.pl
This patch moves the click handler for thumbnails for opac-imageviewer.pl
out of the inline HTML and out to an existing <script> element.

Test plan:
0. Apply the patch (including dependent patches)
1. Go to
http://localhost:8081/cgi-bin/koha/admin/preferences.pl?tab=&op=search&searchfield=localcover
2. Change both *LocalCoverImages sysprefs to "Show"
3. Go to
http://localhost:8081/cgi-bin/koha/admin/preferences.pl?tab=&op=search&searchfield=AllowMultipleCovers
4. Change "AllowMultipleCovers" to "Allow"
5. Go to
http://localhost:8081/cgi-bin/koha/catalogue/detail.pl?biblionumber=29
6. Click "Images (0)" tab
7. Download or make two JPEG images
8. Upload the images
9. Go to http://localhost:8080/cgi-bin/koha/opac-imageviewer.pl?biblionumber=29
10. See one large image in the centre and two smaller thumbnails on the right side
11. Click on the thumbnail of the image that isn't displayed in the centre
12. Note that the image changes
13. Click the other thumbnail and note that the image changes back

PA amended patch: Added missing test plan step

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-18 12:06:23 -03:00
9e39d2d671
Bug 34725: Remove use of onclick for OPAC cart
This patch moves the click handler in the OPAC cart from the inline HTML
and out to an existing <script> element.

Test plan:
0. Apply the patch
1. Go to http://localhost:8080/cgi-bin/koha/opac-search.pl?idx=&q=test&weight_search=1
2. Add the results to the cart
3. Click on the "Cart"
4. One by one click on the title of each row
5. Notice how the parent window changes to the detail record for that title

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-18 12:06:22 -03:00
f636a041a6
Bug 34400: Inconsistencies in OAI sets page titles, breadcrumbs, and header
This patch fixes a couple of inconsistencies in the style of the
OIA sets administration screen, making sure the page title, breadcrumb
navigation, and page headers are consistent with each other.

The patch also corrects the structure of the form on the OAI set
mappings page so that the submit button is outside the "page-section"
area.

To test, apply the patch and go to Administration -> OAI sets. Test each
variation of the page:

- Main page
- New OAI set
- Edit OAI set
- OAI set mappings

Signed-off-by: Émily-Rose Francoeur <emily-rose.francoeur@inLibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-18 12:06:21 -03:00
7d2ce611f7
Bug 34789: Update usage throughout Koha modules and Vue components
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>
2023-09-18 12:06:18 -03:00
7b99f2eeca
Bug 34735: Remove uneeded CSS
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-18 12:06:17 -03:00
e0d3ffff48
Bug 34735: Update breadcrumb markup
Make the breadcrumb navigation item markup match the rest of Koha

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-18 12:06:16 -03:00
c84d53c2cd
Bug 34735: Remove pointer events from disabled links
Add pointer-events: none to a.disabled links in staff

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-18 12:06:15 -03:00
df756cbb17
Bug 34735: Style disabled breadcrumbs
To test:
1. Turn on ERMModule.
2. Notice the disbaled breadcrumbs are color: #000;
3. Apply patch, yarn build
4. Look again, disbaled breadcrumbs are color; #696969;

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-18 12:06:15 -03:00
d3dde3c9cd
Bug 34411: Inconsistencies in Additional fields page titles, breadcrumbs, and header
This patch makes changes to the additional fields administration
template in order to make it more consistent with other pages in Koha.

To test, apply the patch and go to Administration -> Additional fields.
View each variation of the page to confirm that breadcrumb navigation,
page title, and page headings are consistent with each other.

- Main list
  - Table view (e.g. aqbasket, aqorders, etc)
    - New field
    - Edit field

Signed-off-by: Salah Ghedda <salah.ghedda@inLibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-18 12:06:14 -03:00
5064a7f76f
Bug 34409: Fix inconsistencies in Audio alerts headers
This patch makes a minor change to the structure of the audio alerts
administration template so that the add/edit form is more consistent
with other similar forms.

The patch doesn't make any changes to page title and breadcrumbs because
the add/edit action doesn't trigger a page reload, so the required
change can't be made just with markup.

To test, apply the patch and enable the AudioAlerts system preference
if necessary.

- Go to Administration -> Audio alerts.
- Click "New alert" and confirm that the form looks correct.
- Edit an existing alert to confirm that this view also looks correct.

Signed-off-by: Salah Ghedda <salah.ghedda@inLibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-18 12:06:13 -03:00
2c67096c07
Bug 34407: Inconsistencies in Z39.50 servers page titles, breadcrumbs, and header
This patch makes changes to the Z39.50 servers administration and
related templates in order to make them more consistent with other pages
in Koha.

One case has been added to page title and breadcrumb navigation: An
indication that a search has been performed. The subheading is modified
to make it clear that the search is a "starts with" search.

To test, apply the patch and go to Administration -> Z39.50/SRU
servers. View each variation of the page to confirm that breadcrumb
navigation, page title, and page headings are consistent with each
other.

- Z39.50/SRU servers list.
  - New Z39.50 server
  - New SRU server
  - Edit Z39.50 server
  - Edit SRU server
    - Modify SRU search field mapping for a bibliographic record
      server
    - Modify SRU search field mapping for an authority record server
  - Use the header search form to search for a server by name

Signed-off-by: Émily-Rose Francoeur <emily-rose.francoeur@inLibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-18 12:06:13 -03:00
b0342302a0
Bug 34380: Fix inconsistencies in Item types page titles, breadcrumbs, and header
This patch fixes inconsistencies in the item type administration page so
that page titles, breadcrumb navigation, and page headers are consistent
with each other and with other pages in Koha.

To test, apply the patch and go to Administration -> Item types. Check
each variation of the page to confirm that everything looks correct:

- Item types list
 - New item type
 - Edit item type
 - Confirm deletion of item type

Signed-off-by: Émily-Rose Francoeur <emily-rose.francoeur@inLibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-18 12:06:12 -03:00
a6c77f664c
Bug 34719: Add middle_name to patron autocomplete
To test:
1. Apply patch and clear browser cache.
2. Find some patrons with middle_name populated or add new patrons with a middle_name.
3. Make sure PatronAutoComplete is on
4. Try searching for a part of one of the patron's names who has a middle_name.
5. It should appear in the autocomplete dropdown

Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-15 15:50:45 -03:00
9b385a2c36
Bug 34794: Fix typo in recalls_to_pull.tt
Fixed typo - it's v its

Test plan:
Look at the bug patch and confirm the change is correct

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-15 15:50:44 -03:00
09b29d06da
Bug 33406: Handle ES search errors for authorities
We are dealing ok with ES exceptions for biblio records search,
catching them and raising them to the end user. But we don't for
authorities, where we explode with an ugly 500.

Test plan:
Search for "(term_1*) AND (-) AND (term_2*)" in the authority search and
notice that you don't get a 500 but an error instead saying that you
should try again

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-15 15:50:42 -03:00
5e6943562f
Bug 14156: Add id tags to each MARC note in the display
This patch adds tag number to the data which is returned by
$biblio->get_marc_notes(). The bibliographic detail page in the staff
client is modified to use the tag number in both a class (for consistent
styling across the same tag number) and id (for unique styling for each
repeated tag).

To test, apply the patch and restart services.

- As a quick test for custom CSS, go to Administration -> System
  preferences and locate the IntranetUserCSS preference.
  - Add this testing CSS:

   .marcnote { font-size:140%; font-family: serif; }
   .marcnote-500 { background-color: #66FFCC; }
   .marcnote-511 { background-color: #99FFFF; }
   .marcnote-520 { background-color: #CCFF00; }
   .marcnote-521 { background-color: #CCFFFF; }
   .marcnote-538 { background-color: #FFCCCC; }
   .marcnote-546 { background-color: #FFFFCC; }

- Locate a record with multiple notes fields. In the sample data, record
  46, "Viridiana" is a good example which works well with the above CSS.
- On the bibliographic detail page for the record, click the
  "Descriptions" tab.
  - Each MARC note should be colored according to the tag it comes from.
  - Inspect the HTML to confirm that each paragraph also has its own
    unique ID.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-15 11:57:19 -03:00
b5540d8c94
Bug 34716: Fix typo
Fixes a typo where "it's" should be "its"

Test plan:
1) Check the commit and observe that the change has been made correctly

Signed-off-by: Owen Leonard <oleonard@myacpl.org>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-15 11:57:18 -03:00
34296cd6b0
Bug 33818: Descriptive title added to opac-ISBDdetail.tt
This patch adds the biblio.title to the breadcrumb for the ISBD viewer.
This now matches the normal and MARC views and is much clearer for
screen readers.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-15 11:57:17 -03:00
93d4defeda
Bug 34443: Spelling: Patron search pop-up Sort1: should be Sort 1
This patch instances of "Sort1" and "Sort2" being used
as labels in the interface, replacing the strings with "Sort 1" and
"Sort 2"

To test, apply the patch and test this page:

With the borrowerRelationship system preference populated, edit a
child record and click the "Add guarantor" button. There are two
fields in the form with the updated labels.

Signed-off-by: Laura Escamilla <laura.escamilla@bywatersolutions.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-15 11:57:15 -03:00
Caroline Cyr La Rose
70b4f09701
Bug 34228: Add translation context to "Managed by"
This patch adds context for translators to the Managed by string when it
applies to acquisitions baskets (as opposed to purchase suggestions).

To test:
0. If you don't already have acquisitions set up, create a budget and a vendor

1. Apply patch

2. Create a basket
   2.1. Go to Acquisitions
   2.2. Search for a vendor
   2.3. Click New > Basket
   2.4. Fill out the form
   2.5. Click Save

3. View the basket details page
   --> The page works (no errors)
   --> 'Managed by:' is displayed on the right, no spelling errors

4. Click Add to basket > From a new (empty) record
   --> The page works (no errors)
   --> 'Managed by:' is displayed under Basket details, no spelling errors

5. Click Cancel

6. Update the po files

gulp po:update --lang xx-XX

for example, gulp po:update --lang fr-CA

7. Check the xx-XX-messages.po file (e.g. misc/translator/po/fr-CA-messages.po)
   --> There should be an entry for 'Managed by:' with a line msgctxt that gives the 'Acquisitions basket managed by user' context

8. Update the file with a random phrase for the 'Managed by:' translation

for example, I translated 'Managed by:' by 'AAAAAAA:', just to see the difference

\#: koha-tmpl/intranet-tmpl/prog/en/modules/acqui/basket.tt:308
\#: koha-tmpl/intranet-tmpl/prog/en/modules/acqui/neworderempty.tt:281
msgctxt "Acquisitions basket managed by user"
msgid "Managed by:"
msgstr "AAAAAAA:"

9. Install a new language
   9.1. Run the following commands in the terminal, replacing xx-XX with the language code (e.g. fr-CA)

   ./misc/translator/translate install xx-XX

   9.2. In the Koha staff interface, go to Administration > System preferences
   9.3. Search for language
   9.4. Check the box next to the new language
   9.5. Save

10. Switch the language of the interface

11. Redo steps 3 and 4
   --> The pages still work (no errors)
   --> The 'Managed by:' string should be replaced by whatever you put in step 8

Optional test
12. In the staff interface in English, view one or more of these pages, the 'Managed by' string should be unchanged
- Acquisitions > Suggestions (Managed by column heading)
- Acquisitions > Suggestions (Organize by: Managed by sorting option)
- Acquisitions > Suggestions (Filter by: Suggestion information: Managed by filter option)
- Acquisitions > Suggestions > Click on a suggestion (Managed by table row under Suggestion management)
- Patrons > Patron account > Purchase suggestions (Managed by column heading)

13. View these same pages in the other language, the Managed by string should NOT be changed to whatever you put in step 8

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-15 11:57:14 -03:00
a3e40408ea
Bug 34768: Remove checkbox column from relatives fines on OPAC
When a patron has a guarantee and can see their fines on the opac and
an opac payment plugin is enabled there is an error on the 'Charges'
tab.

The table uses a 'COLSPAN' variable which is set to 5 or 6 depending on
if OPAC payments are enabled. The guarantees table has one less column
than the patron's however, so it is going out of range and causing a JS
error. Additionally, we are adding a column to the child's table which
is not used as their fines cannot be selected for payment at this time.

This patch removes the checkbox column and sets the colspan directly to
4

I also fix an issue where the table is not being set as we need to
reference the patron object in the guarantor info to obtain the id.

To test:
1 - Set system preference: AllowStaffToSetFinesVisibilityForGuarantor to
    allow
2 - Find a patron
3 - Add some fines to their account
4 - Install and enable an opac payment plugin
    (https://github.com/bywatersolutions/koha-plugin-pay-via-govolution
    for example)
5 - Sign in to OPAC as borrower
6 - Go to 'Charges' tab
7 - Select a fee
8 - Confirm 'Make payment' button enabled and 'amount to pay' is
    updated
9 - Add a guarantee to patron in staff interface
10 - Set 'Show charges to guarantors' to 'Yes'
11 - Add and pay a fine for the child
12 - View guarantor account on the OPAC
13 - Confirm you now see child's charges
14 - Confirm selecting your own fees does not enable the button or
     update amount to pay
15 - Note JS error in console
16 - Apply patch
17 - Reload patrons page
18 - Confirm the table loads correctly (no JS error)
19 - Confirm selecting a fine updates the total and enables button
20 - Disable the payment plugin
21 - Confirm the display is still correct, no errors

Signed-off-by: Owen Leonard <oleonard@myacpl.org>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-15 11:57:11 -03:00
08858b161c
Bug 34736: Don't trigger quantity change on loading order
We have a change event to automatically check or uncheck the first items on a list when
the value is changed directly.

The code is calling this when setting the quantity when loading an order, but this is causing a problem
in that we are setting the quantity to load.switch orders and triggering the checkboxes wrongly

To test:
 1 - Create a new basket, create items on placing the order
 2 - Create an order line with 4 items
 3 - Create another order line with 2 items
 4 - Close the basket
 5 - Receive shipment and create an invoice
 6 - Select both orders via the checkboxes got multi-receive
 7 - Click "receive selected"
 8 - Edit first order line, quantity received = 1 (1 out of 4)
 9 - Verify that one item is also selected in the table
10 - Switch to "next order"
11 - Quantity received is 0, no items checked in the second order
12 - Switch to "Previous order"
13 - ERROR: Item checkbox was lost, quantity received still correct
14 - Switch to next order
15 - ERROR: item is now checked, quantity received 0
16 - Note: We see a mix up of the information entered, one has the checkbox now, the other the quantity.
17 - Save changes
18 - Click confirm
19 - Continue (complaint about the second order left unchanged)
20 - You are back on the summary:
     * pending order: quantity changed from 4 to 3 - correct
     * received order: quantity shows 1 - correct
21 - Click on receive for your updated order line (with 3 items)
     * 4 items show to be received (should be 3)
22 - Apply patch
23 - Cancel receipt of items
24 - Repeat 1-12
25 - Items are loaded correctly
26 - Try with various checkboxes and switch back and forth
27 - Confirm that manually adjusting quantity received checks the first n boxes
28 - Confirm setting quantity to 0 unchecks the boxes

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-15 11:57:09 -03:00
c503bad72d
Bug 34721: (QA follow-up) update the other labels
Showing only available items -> Showing only records with available items
Show all items -> Show all records

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-12 10:16:14 -03:00
151d947eaa
Bug 34721: Change facet availability text in staff interface and OPAC
To test:
1. Apply patch
2. Do a catalog search in the staff interface. Make sure the 'Availability' button reads 'Limit to records with available items'.
3. Do a catalog search in the OPAC. Make sure the 'Availability' button reads 'Limit to records with available items'.

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-12 10:16:13 -03:00
9da5895d79
Bug 34502: Remove useless SEARCH_RESULT.localimage
This patch removes a useless Template Toolkit tag.

To test:
0. Apply the patch
1. Go to
http://localhost:8081/cgi-bin/koha/admin/preferences.pl?op=search&searchfield=LocalCoverImages
2. Change to "Show"
3. Go to http://localhost:8081/cgi-bin/koha/catalogue/detail.pl?biblionumber=29
4. Upload an image
5. Go to http://localhost:8081/cgi-bin/koha/catalogue/search.pl?q=test
6. Note that the local cover image appears even without the TT tag

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-12 10:16:05 -03:00
Julian Maurice
68b97cc7e4
Bug 32765: Retry transfer after cancelling hold
When trying to manually transfer an item that is on hold, we have the
choice to cancel the hold and try the transfer again. When choosing
this option, the hold is correctly cancelled but the transfer is not
tried again.
This patch fixes that

Test plan:
1. Place a hold on a specific item
2. Try to transfer it manually (Circulation » Transfer)
3. Choose the option to "Cancel hold and then attempt transfer"
4. See that the hold was cancelled, but no transfer was made
5. Apply the patch
6. Repeat step 1-3
7. See that the hold was cancelled, and the transfer was made

Signed-off-by: Nicolas Giraud <nicolas.giraud@inlibro.com>
Signed-off-by: Sam Lau <samalau@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-12 10:16:04 -03:00
edb9787fc8
Bug 34572: Simplify template logic around check-in input form
This patch makes a minor simplifying change to the check-in template
around how to style the barcode input field in dropbox or fine-exempt
mode.

To test, apply the patch and go to Circulation.

- If necessary, check some items out to patrons so that you have items
  to check in.
- Go to the check-in page and click the icon inside the barcode field to
  expand the panel of options.
- Check the "book drop mode" checkbox. The barcode field should now be
  highlighted yellow.
- Check in an item. When the page redisplays, the barcode field should
  have the same highlighted style.

- If necessary, enable the finesMode system preference.
- On the check-in page, in the panel of options, check the "Forgive
  overdue fines" checkbox. Test checking in again, confirming the same
  style consistency in the barcode field.

Signed-off-by: Inkeri <inkeri.hakulinen@helsinki.fi>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-12 09:45:09 -03:00
00edf9a541
Bug 34723: Show thumbnails on opac-imageviewer.pl when imagenumber not provided
This patch fixes a method call in the opac-imageviewer.pl so that thumbnails
correctly appear.

Test plan:
0. Apply the patch
1. Go to
http://localhost:8081/cgi-bin/koha/admin/preferences.pl?tab=&op=search&searchfield=localcover
2. Change both *LocalCoverImages sysprefs to "Show"
3. Go to
http://localhost:8081/cgi-bin/koha/admin/preferences.pl?tab=&op=search&searchfield=AllowMultipleCovers
4. Change "AllowMultipleCovers" to "Allow"
5. Go to
http://localhost:8081/cgi-bin/koha/catalogue/detail.pl?biblionumber=29
6. Click "Images (0)" tab
7. Download or make two JPEG images
8. Upload the images
9. Go to http://localhost:8080/cgi-bin/koha/opac-imageviewer.pl?biblionumber=29
10. See one large image in the centre and two smaller thumbnails on the right side

PA amended patch: Added missing test plan step

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-12 09:45:08 -03:00
49bfb9ff39
Bug 27378: Introduce cookie consent to OPAC and staff client
To avoid confusion around commit messages and the content of this enhancement, this first commit is a squashed commit of all the original code submited to this bug. Following a few years of inactivity, it has been rebased and re-submitted with some fixes and concept changes contained in the more recent commits.

Signed-ff-by: Barry Cannon <bc@interleaf.ie>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>

Bug 27378: (follow-up) Add missing filters

(cherry picked from commit 6b8565b949b62269f6d850e6d412458d0dbcfb37)
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>

Bug 27378: Fix accessibility issues

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>

Bug 27378: Update to new atomicupdate structure

This patch consolidates the previous 4 database update files into one atomicupdate file in line with the new structure

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>

Bug 27378: Change ConsentJS to CookieConsentedJS

This patch updates the name of the ConsentJS syspref to CookieConsentedJS and amends the description to be more clear what the syspref is for

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>

Bug 27378: Stop the codemirror editor and delete confirmation from duplicating

Previously, if the "Add new code button" was clicked in the CookieConsentedJS editor, the original entry would have duplicated CodeMirror editors.
This was exponential, i.e adding two new lines would result in three codemirror editors appearing on the first entry, two on the second and so on.
The click event was not being applied properly and was being applied to every element with the .expand-textarea class, rather than specifically the new elements being created. The addExpandHandler function now loops through each element individually and decides whether to apply the click event handler.

Similarly, the delete confirmation was dupliacting for the same reason. This has also been resolved.

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>

Bug 27378: Remove two sysprefs and replace with html customisations

Currently there are two sysprefs - CookieConsentBar and CookieConsentPopup. These allow the user to select what text they would like to see in the consent bar and modal. These have been removed and replaced with HTML customisations to allow more flexible customisations and different languages.

Sponsored by: PTFS-Europe

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>

Bug 27378: (QA follow-up) Small fixes and tidy-ups

This patch does the following:
- Realphabetizes the lines in sysprefs.sql
- Fixes a formatting error in patrons.pref
- Adjusts the position of the cookie consent bar if the language selector is visible
- Fixes translatability on the syspref modal

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>

Bug 27378: (QA follow-up) Allow staff to view their cookie consents

This patch allows staff to view their cookie consents through a link in the dropdown menu in the navbar. Previously staff had no way of accessing their cookie consents

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>

Bug 27378: (QA follow-up) Add cancel button to cookie modal

This patch adds a cancel button to the modal for reviewing cookie consents. Previously there was no way to exit without selecting one of the cookie options

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>

Bug 27378: (QA follow-up) Add filtering for OPAC only and staff only cookies

This patch fixes an issue where cookies selected as OPAC only would still show in the staff client and vise versa. The cookies are now filtered and only the correct cookies will be used in the OPAC and staff client

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>

Bug 27378: (QA follow-up) Fix tests and character encoding

This patch fixes an encoding issue when using diacritics. It also fixes a failing test, corrects the format of the "Cancel" links in the modal and perltidy has been used on all relevant files

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-12 09:45:07 -03:00
Caroline Cyr La Rose
272a080cb3
Bug 34079: The phrase "Displaying [all|approved|pending|rejected] terms" was separated
This patch reunites the words for the sentence "Displaying
[all|approved|pending|rejected] terms" in order to facilitate
translating in languages that have a different syntax.

To test:
1. Install a new language

   ./misc/translator/translate install xx-XX

2. Check the xx-XX-staff-prog.po file for the sentence
   --> All the words are individual strings

3. Apply patch

4. Update the po files

   ./misc/translator/translate update xx-XX

5. Check the xx-XX-staff-prog.po file again
   --> The sentence is reunited for each status (Displaying all terms,
       Displaying approved terms, etc.)

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-12 09:45:06 -03:00
Caroline Cyr La Rose
5d23be933f
Bug 34081: Contextualization of "Approved" (one term) vs "Approved" (more than one term), and other tag statuses
To test:

1. Apply patch

2. Install language

   ./misc/translator/translate install xx-XX

3. Update po files

   ./misc/translator/translate update xx-XX

4. View the xx-XX-messages.po file

   --> Strings for tag statuses for one tag should be separated from
       strings for statuses for multiple tags, with context Tags
       (single) or Tags (multiple)

5. Change the strings so you know which is which

   For example, in French, the approved status for a single tag would
   be "Approuvé" and for multiple tags would be "Approuvés" (with the
   plural s at the end)

6. Apply translations

   ./misc/translator/translate install xx-XX

7. Add tags through the OPAC
   7.1. In another tab, go to the OPAC
   7.2. Log in
   7.3. Search for a record
   7.4. From the detailed record, click Add tags
   7.5. Enter a tag and click Add

8. In the staff interface, go to Tools > Tags

9. Approve/Reject the tag
   --> The status in the table and on the button should be the singular
       status, the status in the summary on the right should be plural

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-12 09:45:05 -03:00
365121cae2
Bug 34402: Sorting holds on patron account includes articles
This patch adds some configuration to the table of holds shown on the
checkout and patron detail pages so that sorting by title correctly
excludes articles.

To test, apply the patch and clear your browser cache.

- Check out to a patron who has multiple holds on titles which include
  leading articles like "a" "an" and "the."
- Click the holds tab and click the "title" column to sort by title.
  - The titles should be correctly sorted alphabetically while ignoring
    articles.

Signed-off-by: Sam Lau <samalau@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-12 09:45:03 -03:00
4fb49407dd
Bug 34624: (follow-up) Add "for" attribute to serials-search.inc label
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-12 09:45:03 -03:00
363189dddd
Bug 34624: (follow-up) fix broken <span>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-12 09:45:02 -03:00
1c3f2ef8e7
Bug 34624: Add "for" attribute to label in header search forms which lack it
This patch adds a "for" label to header search forms labels which lack
it.

To test, apply the patch and test the affected pages to confirm that
clicking the label corresponding to the active search form can be
clicked to move cursor focus to that input field.

As you activate each search form, the cursor focus will automatically be
moved to the input. Click outside of the field to remove the focus, and
then click the label to test that it is correctly tied to the field.

- Staff interface home page:
  - Checkout, Check in, Renew, Search patrons, and Search catalog.
- Acquisitions: Vendor search and orders search
- Acquisitions -> Vendor search -> Vendor -> Contracts: Contract search
- Acquisitions -> Vendor search -> Vendor -> Basket -> Add to basket ->
  From a suggestion: Search suggestions
- Authorities: Main heading ($a only), Main heading, All headings, and
  Entire record.
- Administration -> Budgets: Search funds
- Administration -> Cities & towns: City search
- Administration -> Currencies: Currencies search
- Administration -> Desks: Search desks
  * With UseCirculationDesks enabled
- Administration -> Patron categories: Search patron categories
- Administration -> System preferences: Search system preferences
- Administration -> Z39.50 servers -> Z39.50 server search
- Cataloging: Cataloging search
- E-resource management: Search agreements, Search licenses, Search
  packages, and Search titles
  * With ERMModule enabled
- Patrons -> Search patrons
- Serials: Search subscriptions
- Tools -> Notices & slips: Search notices

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>
2023-09-12 09:45:01 -03:00
7c28ce8ddc
Bug 34403: Inconsistencies in Currencies and exchange rates page titles, breadcrumbs, and header
This patch updates the currencies administration page in order to make
the page title, breadcrumb navigation, and page headings consistent with
each other.

To test, apply the patch and go to Administration -> Currencies and
exchange rates. Test each variation of the page to confirm that the
title, breadcrumbs, and headings are consistent.

- Currencies main page
- New currency
- Edit currency
- Delete currency confirmation

Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-08 11:55:00 -03:00
526904b0a0
Bug 34412: (QA follow-up) Terminology updates
- Use "system preference" instead of just "preference"
- Use "system_preference" as placeholder in translatable strings

This patch also updates a few places where the placeholder i18n syntax
can be used for consistency.

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-08 11:54:59 -03:00
767b9a5126
Bug 34412: (follow-up) Clarify page heading, remove unused markup
This patch updates the heading for the "modify" view so that it includes
the name of the preference being modified.

The patch also removes markup related to the "add_validate"
state--a view confirming that a preference has been added--because that
view doesn't exist.

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-08 11:54:59 -03:00
c46dd36389
Bug 34412: Inconsistencies in System preferences page titles, breadcrumbs, and header
This patch makes changes to the markup of various areas of the local use
system preferences template in order to make it more consistent with
other pages in Koha.

To test, apply the patch and go to Administration -> System
preferences -> Local use. View each variation of the page to confirm
that breadcrumb navigation, page title, and page headings are consistent
with each other.

- On the main page confirm that the heading is "Local use system
  preferences"
  - New preference:
    - The form on this page has been updated to make the markup
      structure more consistent with other pages, with the heading
      outside the white box of the form.
    - The two portions of the form have been combined into one so that
      the layout of the form is more consistent with similar forms.
 - Edit preference
 - Delete:
   - The deletion confirmation page has been reformatted to use an
     "alert" style dialog with styled confirmation buttons.
   - The "Data deleted" view has been reformatted to use a "message"
     style dialog.

Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-08 11:54:58 -03:00
d4e53a1362
Bug 34085: (follow-up) remove typo in Javascript
Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-08 11:54:57 -03:00
059e598f38
Bug 34085: Remove the use of event attributes from basket groups template
This patch removes the use of event attributes (onclick, onsubmit) from
the basket groups template. These events are defined now along with the
other in-page JS.

This change allows us to move the scripts to the bottom of the page.

Unrelated changes: There was no confirmation tied to the process of
deleting a basket group. I've added one. And there were several "MSG_"
variables defined which were unused and have been removed.

To test you should have at least one vendor with at least one basket
group.

- Apply the patch and go to Acquisitions.
- Locate a vendor with an associated basket group.
- Edit a basketgroup
  - Confirm that editing works correctly (leaving "Close basket group"
    unchecked")
  - Confirm that editing works correctly with "Close basket group"
    checked.
- In the list of closed basket groups, confirm that all the controls
  work correctly.
- Create an empty basket group and confirm that clicking the associated
  "Delete" button in the list of basket groups triggers a confirmation,
  "Are you sure you want to delete this basket group?" Test that both
  confirming and cancelling work correctly.

Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-08 11:54:57 -03:00
c23f36b812
Bug 34310: Input prompt in datatables column search boxes untranslatable
This patch corrects the internationalization function wrapped around the
"% search" string in datatables.js. It should be the double-underscore
function instead of the single-underscore.

To test, apply the patch and test that the placeholder string is
translatable. In this example I'm testing fr-FR:

- Update a translation:

  > cd misc/translator
  > perl translate update fr-FR

- Open the corresponding .po file for the strings pulled from
  JavaScript  e.g.  misc/translator/po/fr-FR-messages-js.po
  - Locate strings pulled from prog/js/datatables.js for
    translation, e.g.:

    \#: koha-tmpl/intranet-tmpl/prog/js/datatables.js:894
    \#, javascript-format
    msgid "%s search"
    msgstr "%s recherche"

  - Install the updated translation:

    > perl translate install fr-FR

In the staff interface, test a page that has column header filters, e.g.
patron search. Confirm that the table of search results shows the
translated string in the column header placeholders.

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-08 11:54:56 -03:00
d1d9f4698e
Bug 34038: Fix incorrect use of __() in .tt and .inc files
This patch corrects instances of the double-underscore function being
used in .tt and .inc files where the single-underscore function should
be used instead.

To test, apply the patch and update a translation, e.g. fr-FR:

  > cd misc/translator
  > perl translate update fr-FR

- Open the corresponding .po file for JavaScript strings, in this case
  misc/translator/po/fr-FR-staff-prog.po
- Confirm that the strings are now in the .po file for translation. You
  should find these lines:

- koha-tmpl/intranet-tmpl/prog/en/includes/js-biblio-format.inc: "No
  title."
- koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tt:
  "Check in and add to bundle"
  "Ignore holds and add to bundle"
- koha-tmpl/intranet-tmpl/prog/en/modules/course_reserves/add_items-step1.tt:
  "Please enter only a barcode, or only a biblionumber."
- koha-tmpl/intranet-tmpl/prog/en/modules/course_reserves/batch_add_items.tt:
  "Please enter only barcodes, or only biblionumbers."
- koha-tmpl/intranet-tmpl/prog/en/modules/tools/additional-contents.tt:
  "Please specify a content for 'Default'"

- Check fr-FR-opac-bootstrap.po for these lines:

- koha-tmpl/opac-tmpl/bootstrap/en/includes/calendar.inc:
  "Please enter a valid date (should match %s)."
- koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-basket.tt:
  "No item was selected"
- koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-reserve.tt,
  koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-results.tt,
  koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-shelves.tt:
  "No item was selected"

Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-08 11:54:49 -03:00
26141598a8
Bug 33480: Remove vendors when not needed
Several components retrieve the vendor list from store but it's not
needed in those components.

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-06 15:05:25 -03:00
e90ccb7ff3
Bug 33480: Improve vendor aliases display in dropdown list
On bug 33103 we are adding the ability to filter vendors by aliases.
To make it possible in the ERM module we are adding the alias list in
the dropdown list. However it's not nicely displayed, especially if
there are several entries.

This patch suggests to display the aliases in a different line, and not
for the selected option.

To acchieve that we create a new Vue component FormSelectVendors.

Test plan:
Create several vendors, and add some aliases to them (keep one vendor
without alias)
Go to the ERM module go to the following page, search for vendors by
aliases, save the form, and confirm that everything is nice and works
correctly:
* Add/edit an agreement
* Add/edit a license
* Add/edit a local package
* Add a new package to a title (edit a title)

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-06 15:05:24 -03:00
25e21173fd
Bug 34217: (QA follow-up) Clean-up old unused code
Spotted this and didn't want to open a new bug for it

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-06 09:57:06 -03:00
Aleisha Amohia
aea3ad0b7b
Bug 34036: Reload 'already received' table when edit modal closed
Bug 33784 introduced a fix that prevents the 'already received' table from reloading completely if the modal is hidden and there is only one order in the table. This appears to assume that the 'hidden modal' event is only triggered if the receive form is cancelled, but the 'hidden modal' event is also triggered when the receive form is submitted. This means that the table isn't redrawn when the form is submitted and there's one order already received, so the next order does not show in the table when the page reloads.

To test:
1. Set up a vendor, budget, fund, and create a new basket.
2. Add two orders (two different records) to this basket.
3. Close the basket and go to receive the orders.
4. Once on the 'Receive orders' page, use the checkboxes in the Pending orders table to receive both orders at once. Choose the 'Receive selected' button
5. Click Edit for the first order, receive the item and click 'Next order'. Receive the next item and click 'Save changes'. Then Confirm
6. Both orders should now show under Already received. Click Cancel receipt for one of the orders. It should go back to Pending orders.
7. Click Receive for the now pending order. Receive the item and Confirm.
8. Notice that the page appears to reload but the order doesn't show under Already received with the other order. The order also no longer shows under Pending orders.

9. Apply the patch and restart services. Reload the page. Cancel receipt of the order again.
10. Click Receive for the now pending order. Receive the item and Confirm.
11. The Already received table should reload so that both orders now show under Already received.
12. Click Cancel receipt for the order.
13. Click Receive for the now pending order, then Cancel without receiving the item.
14. Confirm the page loads as expected with one pending order and one already received order.

Sponsored-by: Toi Ohomai Institute of Technology
Signed-off-by: Michaela Sieber <michaela.sieber@kit.edu>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-06 09:57:02 -03:00
eaab32eb0e
Bug 34109: Check mandatory item fields when creating during recipt
This patch adds a check of mandatory item fields before saving during order receipt.
We check both when adding the item initially, and when submitting the order, as it will use
the values from the open form.

To test:
* Go to administration > frameworks > ACQ > MARC structure > 952
* Set callnumber (o) or barcode (p) to mandatory
* In acquisition:
* Create a basket with "create items on order" and "is standing"
  "standing" helps as you can do multiple receives testing different things,
  but is optional
* Add an order line
* Receive shipment
* Verify the mandatory fields show in the item form
* Set itemtype = Music
* Save with the fields blank
* Item row is added, no warning
* Edit the item, change the item type to blank
* Click 'Confirm' for the order without closing the item edit form
* Verify the item was added with itemtype Books (on sample data) and empty mandatory field
* Apply patch
* Repeat above, however, you should not be able to submit the item or order until mandatory fields are filled

Signed-off-by: Sam Lau <samalau@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-06 09:57:02 -03:00
d548f00ae0
Bug 21083: (QA follow-up) Add a hint that attributes will replace all existing attributes
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-05 14:46:08 -03:00
0663e692cf
Bug 34641: Fix Novelist display when NovelistSelectView is set to below
To test:
1. Have Novelist credentials:  NovelistSelectProfile,  NovelistSelectPassword.
2. Enable  NovelistSelectEnabled
3. Set  NovelistSelectView to 'below holdings table'.
4. Find a record on the OPAC that would have Novelist content. It does
   not display.
5. Set  NovelistSelectView to any except 'below holdings table'. Notice it displays the content.
6. APPLY PATCH
7. Try steps 1 -5 again, this time when NovelistSelectView is set to
   'below' the content should properly display.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-05 14:35:39 -03:00
c7cf368f16
Bug 33895: (follow-up) Build overdrive tab-pane only if OverDriveCirculation is turned on
Signed-off-by: Sam Lau <samalau@gmail.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-05 14:35:37 -03:00
324a501f2c
Bug 33895: Use template wrapper for tabs: OPAC user summary
This patch updates the OPAC user summary page so that it uses
the new WRAPPER syntax to generate tabs markup.

To test, apply the patch and log in to the OPAC. Check these tabs on
the patron summary page:

  - Checkouts
  - Relatives' checkouts
  - Relatives' charges
  - Overdues
  - Charges
  - Credits
  - Clubs
    - Test enrolling and unenrolling
  - Holds
  - Recalls
  - Article requests
  - Overdrive
    - Test with OverDriveCirculation enabled
    - Logging in, logging out

Signed-off-by: Sam Lau <samalau@gmail.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-05 14:35:36 -03:00
37427f1362
Bug 34394: Fix inconsistencies in MARC Bibliographic framework test page title and breadcrumbs
This patch makes some changes to the MARC bibliographic framework test
page so that breadcrumbs, page title, and page heading are consistent
with each other.

The patch also creates standard message and alert dialogs to show the
status of the check. This is more consistent than having the message
only at the bottom of the table.

The patch also changes the term "itemnum" to "itemnumber."

To test, apply the patch and go to Admnistration -> MARC bibliographic
framework test.

- The page title, breadcrumb navigation, and page heading should match:
  "MARC bibliographic framework test."
- If your system has no errors, there should be a message-style dialog
  at the top of the page saying "Configuration okay."
- Create an error in your MARC configuration:
  - Go to Administration -> MARC frameworks -> MARC structure
  - Locate the 952 tag and click Actions -> View subfields
  - Edit subfield 9 and set the "Managed in tab" dropdown to something
    other than "ignore"
- Return to the framework test page. There should be an alert-style
  dialog at the top of the page, "Configuration errors found"

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-05 11:52:28 -03:00
f20b460ab6
Bug 34196: Improve styling of sidebar form on funds admin page
This patch makes a few markup changes to the sidebar filter form on the
funds administration page in order to make it more usable and more
consistent with other similar forms.

The patch removes the link for expanding and collapsing the sidebar
filter because it looked bad and was inconsistent with all similar
forms.

To test, apply the patch and go to Administration -> Funds. Confirm that
the sidebar form looks correct. Compare to, for example, the sidebar
form at Acquisitions -> Invoices.

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>
2023-09-05 11:52:28 -03:00
cac122b611
Bug 34625: Fix search engine configuration tables header problem
This patch corrects the JavaScript which allows DataTables to be created
and destroyed based on which tab is clicked on the search engine
configuration page. When you click from one tab to the other, the
original tab's DataTable should be destroyed and the new tab's DataTable
initialized.

To test, apply the patch and go to Administration -> Search engine
configuration (Elasticsearch)

- The page should load with the "Search fields" tab enabled and the
  DataTable initialized: Sorting and filtering should work. If you
  scroll down the page the floating table header should be correct.
- Switch to the "Bibliographic records" tab. This table should have
  filtering enabled, and the floating table header should work when you
  scroll down the page.
- The same should be true for the "Authorities" tab.
- Return to the "Search fields" tab to confirm that the DataTable is
  still working as expected.

Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-05 11:52:26 -03:00
b46418478e
Bug 34043: Remove incorrect spaces
This bug looked cool and safe, but tests highlighted that the
(introduced) newlines were translated into spaces, which is not correct
in the CSV format (i.e. q{"Column 1" , "Column 2"} is not really
correct).

Also, the double quotes were forcibly introduced (semi-correct) but the
tests weren't adjusted.

We should really stop using templates for generating CSV, and use a
library for the task instead of manually crafting them. But that's for
another bug report.

This patch:

* Removes extra spaces in TT-generated CSV headers
* Adjusts the tests to the new format introduced by this report

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-04 09:30:18 -03:00
0710ccb606
Bug 34634: Show expirationdate of expired holds on reserve/request.pl
To test:
1. Place some holds and go to /reserve/request.pl for that bib.
2. If the reserves.expirationdate is set to today or some date in the past the date does not display in the Flatpickr instance.
3. Change the reserves.expirationdate to sometime in the future, the date displays.
4. Aply patch, restart_all
5. Try steps 2-3 again.
6. This time if the expiration date is in the past you should see it displayed. However it will be uneditable.
7. Make sure holds with a expiration date in the future can still be properly edited.

Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Christine <chlee@pascolibraries.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 12:08:37 -03:00
086810633b
Bug 34135: Show the icons for selected tab to the left of the search bar in the staff interface
This patch modifies header search forms so that the form label has the
same icon used by the "tab" link.

The patch also improves the responsive behavior of the header search by
using the icon as the form label when the browser window is narrow
enough to hide the label text.

I've added the "aria-hidden" attribute to other icons in the modified
templates and made the "fa-fw" class consistent for all tab icons.

To test, apply the patch and rebuild the staff interface CSS. Clear your
browser cache if necessary.

View the header search form at various browser sizes to confirm that
content is shown and hidden correctly. Test at least one page which uses
each of the modified header search includes:

 - Staff client home page
 - Acquisitions -> Acquisitions home
   - Vendor ->
     - Basket -> Add to basket -> From suggestion
     - Contracts
 - Administration ->
   - Budgets
   - Currencies
   - Desks (with UseCirculationDesks enabled)
   - System preferences
   - Z39.50/SRU servers
 - Catalog advanced search
   - Search results
 - Authorities -> Authorities home
 - Cataloging -> Cataloging home
 - Circulation -> Check out
 - E-resource management (with ERMModule enabled)
 - Patrons -> Patrons home
 - Serials -> Serials home
 - Tools -> Notices

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:43:47 -03:00
29fabf23df
Bug 34043: Improve translation of CSV header templates
This patch reformats serverl CSV header templates so that it's easier to
translate the English strings. The templates now use the [% t("  ") %]
construction to ensure that each string is managed separately.

To test, apply the patch and go to Acquisitions.

- Locate a vendor with a basket and view the basket.
  - Click the "Export as CSV" button. The CSV file you get should be
    well-formatted.
  - Go to basket groups for that vendor and click the "Closed" tab.
    - Click the "Export as CSV" button for one of the baskets. The CSV
      file should be correct.
- Go to Acquisitions -> Late orders.
  - Check some checkboxes in the list of late orders. Click "Export as
    CSV" at the bottom of the page. The CSV file should be correct.

- Go to the catalog's item search page.
  - Perform a search which will return results. On the result page,
    choose "Export all results to -> CSV" and check the resulting CSV
    file.

- Go to Reports -> Statistics Wizards -> Cash register
  - Select "To a file" under "Output" and submit. Check the resulting
    CSV file.
- Go to Reports -> Orders by funds.
  - Choose "To a file" under "Output" and submit. Check the resulting
    CSV file.

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:43:46 -03:00
84df32f16d
Bug 34247: Improve translation of notice character count
This patch restructures the template markup around the part of the
notice edit screen where the system tracks how many characters have been
entered in an SMS message. The change is intended to make translation
easier.

To test, apply the patch and run the translation script to update the
.po files, e.g.

perl misc/translator/translate update fr-FR

Check the updated .po files:

- In fr-FR-staff-prog.po there should not be a line with the string "160
  characters"
- In fr-FR-messages.po the string should have been picked up like this:

  msgid "{content_length} / 160 characters"
  msgstr ""

- Add a translation to fr-FR-messages.pl and install the updated
  translation:

  perl misc/translator/translate install fr-FR

- Switch to the update language in the staff interface and go to Tools ->
  Notices. Edit any notice and expand the "SMS" block. (you may be asked
  to enable SMSSendDriver).
- Confirm that the "X/160 characters" text updates correctly as you
  enter content into the textarea. Confirm that the same is true when
  you switch to your updated translation.

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:43:45 -03:00
ce8c78c6ba
Bug 34373: Improve layout of curbside pickups items ready list
This patch adds fieldset + list markup around the list of titles ready
for pickup on the staff interface curbside pickup page.

- Properly testing requires testing data. You can run this command to
  REPLACE your curbside pickup data with sample data:

  bash <(curl -s https://gitlab.com/-/snippets/2572579/raw/main/test_curbside_pickups.sh)
- Apply the patch and restart services.
- Place multiple holds for a single patron and check them in to mark
  them waiting.
- Under Circulation -> Curbside pickups, click the "Schedule pickup"
  tab.
  - Search for the patron you placed the holds for.
  - When the patron information comes up, the list of items ready for
    pickup should be well-formatted.

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:43:45 -03:00
95e4992b2e
Bug 32911: (follow-up) Move pref from Notifications to Features section
The new preference appeared under Notifications, but is better
suited for the Features section on the ILL tab in system
preferences.

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>
2023-09-01 11:43:41 -03:00
f0f9bd0f75
Bug 32911: Remove ILL partner_code config from koha-conf.xml and turn it into a system preference
Preparation:
1) apply patch
2) run reset_all
3) enable ILLModule sys preference
4) install a backend (e.g. FreeForm)
5) go into system preferences and confirm that ILLPartnerCode exists and is the default inter-library loan (IL)

Test plan:
1) create an ILL request
2) ensure the patron of category 'IL' has a primary e-mail configured
3) click on "place request with partners"
4) verify that the patron(s) of said category are on the partners list

Upgrade test:
1) Remove the system preference from the database, run query:
delete from systempreferences where variable="ILLPartnerCode";
2) Check or edit the value or partner_code in koha-conf.xml and run atomicupdate:
installer/data/mysql/updatedatabase.pl
3) Confirm the value in koha-conf.xml has been successfully migrated into the system preference, run query:
select * from systempreferences where variable="ILLPartnerCode";

Optional tests:
- Set a patron category in the sys pref and then delete said patron category (needs to not have patrons in it)
- Check the about page -> System information and confirm the warning message is correct

- Set the sys pref to the empty option
- Check the about page -> System information and confirm the warning message is correct

- Set the sys pref to a category that has no patrons of its type (ktd examples: Board, or Library)
- Check the about page -> System information and confirm the warning message is correct

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>
2023-09-01 11:43:39 -03:00
99929a7d89
Bug 34323: Enhance header search icon for more options
This patch modifies header search forms which have a "more options"
icon, adding a title attribute to the control and "aria-hidden" to the
Font Awesome icons.

I've added a bit of CSS and JS to change the appearance of the icon when
it is clicked to expand the panel of options.

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

- Test pages which have a "more options" icon in the search header:
  - Home -> Catalog search tab, with IntranetCatalogSearchPulldown
    enabled.
  - Acquisitions -> Orders search tab
  - Authorities -> All search tabs
  - Administration -> Budgets
  - Patrons -> Patron search tab
  - Serials -> Subscription search tab
- On all these pages, hovering your mouse over the icon in the search
  form should trigger a "More options" title.
- Clicking the icon should expand the panel, and the icon should be
  now have a highlighted style.
- Clicking the icon to collapse the panel should return the icon to its
  original state.

Signed-off-by: Sam Lau <samalau@gmail.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:23:34 -03:00
e433a92d51
Bug 33921: Improve translation of title tags: Plugins and Point of sale
This patch updates plugin and point of sale templates so
that title tags can be more easily translated.

The patch also makes some minor changes to some templates to improve
consistency between page title, breadcrumb navigation, and page heading.

To test, apply the patch and confirm that the following pages have the
correct title tags:

- Administration ->
  - Manage plugins
  - Upload plugin

  * With 'useplugins' set to 0 in koha-conf.xml you can navigate
  directly to /cgi-bin/koha/plugins/plugins-home.pl to confirm that
  the "Plugins disabled" page is shown.

With EnablePointOfSale and UseCashRegisters enabled:

- Point of sale
  - Make a sale and print a receipt for the transaction
  - Transaction history for [register]
  - Cash summary for [library]

Signed-off-by: Andrew Auld <andrew.auld@ptfs-europe.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:23:33 -03:00
7e87e39040
Bug 34691: Fix linkActiveClass in createRouter
Test plan:
1) Visit /cgi-bin/koha/erm/agreements/add
2) Notice the "Agreements" menu item is not active
3) Apply the tests patch only
4) Run tests, watch them fail
5) Apply this patch, restart yarn js:watch and hard refresh browser
6) Repeat steps 1) and 2) Verify it's now active
7) Run tests, watch them pass

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:23:32 -03:00
8c63a4bb04
Bug 34646: Fix two attributes class in OPAC masthead-langmenu.inc
In OPAC template masthead-langmenu.inc a link as two class attributes :
  <a class="dropdown-item" href="#" tabindex="-1" class="menu-inactive" role="menuitem">

Test plan :
1) Go to OPAC with at least one translation
2) Look at HTML source code
=> Without patch you see a link with 2 class attributes
=> With patch you see the 2 classes in same class attribute

Signed-off-by: Owen Leonard <oleonard@myacpl.org>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:23:30 -03:00
34d52bc641
Bug 33915: Improve translation of title tags: Installer and onboarding
This patch updates installer and onboarding templates so that title
tags can be more easily translated.

To test, apply the patch and run through the installation and
onboarding process. At each stage confirm that the page title is
correct.

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>
2023-09-01 11:23:30 -03:00
fe22e14775
Bug 33917: Improve translation of title tags: Offline circulation and patron lists
This patch updates offline circulation and patron lists templates so
that title tags can be more easily translated.

To test, apply the patch and confirm that the following pages have the
correct title tags:

- Circulation -> Upload offline circulation file
  - Add to queue
  - View pending offline circulations
- Tools -> Patron lists
  - New list, edit list
  - View list

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:23:29 -03:00
Agustin Moyano
f895e8be4c
Bug 34418: Replace dynamic parameter on unnamed route node
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:23:28 -03:00
6660b56124
Bug 34418: Add is_empty flag
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:23:27 -03:00
05637b23cf
Bug 34418: Allow empty nodes in breadcrumb's elements
Coming from an adaptation of "Bug 33169: DO NOT PUSH  Allow breadcrumbs to accept dynamic values"

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:23:27 -03:00
1b1b5cda5b
Bug 34448: Update the way we handle response in http-client.js
Test plan:
Before patch:
- Visit a non-existent ID i.e. /cgi-bin/koha/erm/agreements/999
- Visit a char ID i.e. /cgi-bin/koha/erm/agreements/abc

Apply patch:
Repeat above steps.

Run cypress tests

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:23:22 -03:00
169758fb56
Bug 31014: Minor UI problems in QOTD editor tool
This patch makes some cosmetic and functional updates to Quote of the
Day template, including simplifying some JavaScript, adding consisten
styles to buttons and page sections, and adding visible buttons to
jEditable text inputs.

The patch also improves the Quotes page breadcrumbs to add context
on the single quote entry page.

The patch removes quotes.css which is obsolete.

To test, apply the page and go to Tools -> Quote editor.

- The breadcrumbs should read "Tools -> Quote editor."
- Click the "New quote" button. The breadcrumbs should read "Tools ->
  Quote editor -> Add quote"
- Go back and click the "Import quotes" button.
- Confirm that the layout of the page looks good and that the upload
  instructions are shown.
- Upload a CSV file of quotes
  - The instructions should now show information about editing and
    saving quotes.
  - The "Save quotes" button should be styled consistently with other
    submit buttons.
  - Confirm that you can click in the "Source" and "Quote" table cells
    to trigger the display of a textarea where you can edit the text.
    Confirm that both the "Save" and "Cancel" buttons work.
  - Click the "Save quotes" button. A message should appear which shows
    how many quotes were imported.*
  - Confirm that your quotes are saved correctly, including any changes
    you made.

* This process could be improved: When the quotes are done importing the
toolbar doesn't change, and there isn't an indication that the import is
complete.

Signed-off-by: Sam Lau <samalau@gmail.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:23:20 -03:00
cdf2dfeceb
Bug 33923: Improve translation of title tags: Reports
This patch updates reports templates so that title tags can be more
easily translated.

To test, apply the patch and confirm that the following pages have the
correct title tags:

- Reports ->
  - Reports home
    - Statistics wizards ->
      - Acquisitions
      - Patrons
      - Catalog
      - Circulation
      - Serials
      - Cash register
      - Holds
    - Top lists ->
      - Patrons with the most checkouts
      - Most-circulated items
    - Inactive
      - Patrons who haven't checked out
      - Items with no checkouts
    - Other
      - Items lost
      - Orders by fund
      - Catalog by item type
      - Average loan time
    - Create guided report
    - Create from SQL
    - Use saved report
    - View dictionary

Signed-off-by: Andrew Auld <andrew.auld@ptfs-europe.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:23:19 -03:00
b0656e853c
Bug 33922: Improve translation of title tags: Recalls
This patch updates recalls templates so that title tags can be more
easily translated.

To test you must have UseRecalls enabled. Apply the patch and confirm
that the following pages have the correct title tags:

- Circulation ->
  - Recalls queue
  - Recalls to pull
  - Overdue recalls
  - Recalls awaiting pickup
  - Old recalls
- Catalog -> Locate a bibliographic record with an existing recall.
  - View the "Recalls" tab in the sidebar.

Signed-off-by: Andrew Auld <andrew.auld@ptfs-europe.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:23:18 -03:00
f69a7e4ba1
Bug 33914: Improve translation of title tags: Course reserves
This patch updates course reserves templates so that title
tags can be more easily translated.

To test you should have the UseCourseReserves system preference enabled.
Apply the patch and confirm that the following course reserves
pages have the correct title tags:

- Course reserves
- New course
- Course details
- Edit course
- Add reserves (step 1 and 2)
- Batch add reserves (step 1 and 2)
- Batch remove reserves
- Invalid course (/cgi-bin/koha/course_reserves/course-details.pl?course_id=)

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>
2023-09-01 11:07:43 -03:00
d3bfe0f809
Bug 33912: (follow-up) Correct case where a search has not been submited
The former cataloging home page, addbooks.pl, shows an extra ">" in the
title if a search has not been submitted. This patch corrects it.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:07:42 -03:00
884621825c
Bug 33912: Improve translation of title tags: Cataloging
This patch updates cataloging templates, including cataloging "value
builder" plugins, so that title tags can be more easily translated.

To test, apply the patch and confirm that the following cataloging
pages have the correct title tags:

- Cataloging home page
- Catalog concerns
- Cataloging search results
  - Select two results ->
    - Merge selected
- Basic MARC editor (Add, edit)
  - Replace via Z39.50
- Advanced MARC editor
- Item editor
- Bibliographic detail page ->
  - Edit ->
    - Attach item
  - Edit ->
    - Link to host record (with EasyAnalytics enabled)
- Authorities -> New from Z39.50/SRU

The patch updates 81 different cataloging plugins. It's not necessary to
configure your MARC framework to use any particular plugin. The plugins
can be loaded in their own tab for the purpose of testing just the
title. I've made a list of direct links here:

https://gitlab.com/-/snippets/2555254
Signed-off-by: Phil Ringnalda <phil@chetcolibrary.org>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:07:41 -03:00
c2464231b0
Bug 33908: Improve translation of title tags: Acquisitions
This patch updates acquisitions, suggestions, and ERM templates so that
title tags can be more easily translated.

To test, apply the patch and confirm that the following pages have the
correct title tags:

 - Acquisitions -> Acquisitions home
   - Ordered
   - Spent
   - Vendors: Search, new, edit
     - Baskets: New, edit
       - New order
         - From an empty record
         - From an existing record
         - From existing orders (copy)
         - From a suggestion
         - From a subscription
         - From an external source
         - From a staged file
     - Basket groups
     - Receive shipments
   - Uncertain prices
   - Late orders
   - Suggestions
   - Invoices
     - Invoice details
       - Invoice files
       - Receive orders
         - Transfer order
         - Cancel order
   - EDIFACT messages
   - Order search
 - ERM

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:07:41 -03:00
2fa6105779
Bug 33744: Fix cloning (sub)fields with framework plugins
This patch is meant as a temporary measure for fixing the problem.
Bug 30975 may resolve it further, but this is good for now.

Note: The original commit message referred to removing a deprecated internal
structure. But this patch actually still uses the structure which has been
moved to _data in jQuery now.

Test plan:
1) Apply patch
2) Repeat steps in the original bug description
3) This time clicking on the Upload button for a cloned field should launch the uploads pop up.

Signed-off-by: David Nind <david@davidnind.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:07:40 -03:00
bc427bf433
Bug 34388: Fix inconsistencies in Patron restriction types page headers
This patch fixes a couple of inconsistencies in the style of the patron
restriction types administration screen, making sure the restriction
type name is consistently in single quotes in headings and formatting
the deletion confirmation page like other administration interfaces.

Note: This patch contains indentation spaces, so ignore whitespace when
viewing the diff.

To test, apply the patch and go to Administration -> Patron restriction
types.

- If necessary, add a custom restriction type.
- After saving it, edit it.
- The page title, breadcrumb, and page heading should match: "Modify
  restriction type 'X'

- From the list of restriction types, click "Delete" on one of your
  custom restriction types.
- On the deletion confirmation page you should see a standard
  alert-style dialog box and two button options: "Yes, delete" and "No,
  do not delete." Both should work correctly.

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:07:39 -03:00
1162629cf0
Bug 34584: Remove Twitter share button from the OPAC
This patch removes the option to share content in the OPAC via Twitter
now that Twitter doesn't exist anymore.

To test, apply the patch and go to Administration -> System preferences.

- Search for "SocialNetworks."
- The menu of options should contain only email, Facebook, and LinkedIn.
- Select all options and save.
- In the OPAC, locate a bibliographic record and view its details.
- In the right-hand sidebar, you should only see options to share via
  email, Facebook, and LinkedIn.

Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:07:38 -03:00
5d3b7cf089
Bug 34650: Convert list toolbar delete into form POST
This patch adds a HTML form with a CSRF token to POST the list delete,
which is triggered by a click handler on the A element. The A element
is still needed for existing style reasons.

Test plan:
0. Apply patch
1. koha-plack --reload kohadev
2. In the staff interface, add a list
3. Go into that list (e.g. virtualshelves/shelves.pl?op=view&shelfnumber=X)
4. From the toolbar click the "Edit" dropdown
5. From the dropdown try either "Edit list" or "Delete list"
6. Note no CSRF error and operation completes as expected

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:07:37 -03:00
caf962fbaa
Bug 34650: Remove unnecessary CSRF check on edit_form
The op "edit_form" doesn't change state. It just renders the edit
form. Therefore, it doesn't need a CSRF token/check.

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:07:36 -03:00
5316b4c9cc
Bug 34466: Add listener to enable or disable clear filter button on KohaTable.vue
Test plan:
Apply only the cypress test patch
Run KohaTable_spec.ts
Notice it fails

Apply this patch, repeat

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:07:33 -03:00
20586899d5
Bug 34408: Inconsistencies in SMTP servers page titles, breadcrumbs, and header
This patch updates the SMTP servers administration page in order to make
the page title, breadcrumb navigation, and page headings consistent with
each other.

The patch also adds a space between the delete button icon and the text.

To test apply the patch and go to Administration -> SMTP servers.

- Confirm that the page header, breadcrumb navigation, and page headings
  are consistent on each view of the page:
  - Main page
  - New SMTP server
  - Edit SMTP server

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-09-01 11:07:31 -03:00
fb47d04efd
Bug 34616: Move default server info outside the <fieldset>
Also DRY current default information dialog block

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>
2023-09-01 11:07:31 -03:00
b9d3997063
Bug 34616: Add native bootstrap behaviour to default server dialog
Test plan:
Create a new SMTP server
Tick the 'default server' checkbox
Verify it now has a backdrop, closes if u click the backdrop or press 'esc'
The Yes and No buttons are now styled properly

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>
2023-09-01 11:07:29 -03:00
e26d7c783e
Bug 34066: Datatable options don't fully translate on list of saved reports
This patch corrects the DataTable option for defining an alternate
language string when no records are returned by a table filter. An
obsolete version of the option name was breaking the existing custom
option supplied by our datatables.js

To test, apply the patch and go to Reports -> Use saved..

 - In the DataTable of existing reports, all the DataTable controls
   should look correct.
 - In the filter field at the top of the table, enter a string which
   will not be found. You should see a message, "No matching reports
   found."
 - Install another language if necessary, and switch to that language.
 - The labels on all the DataTable controls should show the terms which
   have been translated for that language.

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-30 10:07:11 -03:00
60cf53cf79
Bug 34465: Make KohaTable.vue actions column not sortable
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-30 10:07:10 -03:00
cb4db13612
Bug 34522: Pass the suggestion branchcode, not the suggester branchcode
To test:
1. Turn on OPACViewOthersSuggestions
2. Log into OPAC as patron of Branch A
3. Make purchase suggestion for Branch B
4. Refresh /cgi-bin/koha/opac-suggestions.pl and see that suggestion appears to have been made for Branch A
5. View suggestion from staff client - See that it accurately reflects suggestion having been made for Branch B
6. Apply patch and try steps 2 - 5 again, this time you should see the proper branch.

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-30 10:07:09 -03:00
8341ffe13d
Bug 34571: Remove use of "onclick" for ExpandField in cataloguing editors
This change replaces the onclick HTML attribute with a Javascript binding
to make it more in line with Koha conventions and make it CSP compatible.

Test plan:
0. Apply patch
1. Go to http://localhost:8081/cgi-bin/koha/cataloguing/addbiblio.pl?frameworkcode=#
2. Try hiding/unhiding fields
3. Try cloning fields and hiding/unhiding those too
4. Note that everything works as expected
5. Do the same thing for authorities by going to
http://localhost:8081/cgi-bin/koha/authorities/authorities.pl?authtypecode=#

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-30 10:07:08 -03:00
0b992dd12e
Bug 34570: Remove use of "onclick" for PopupMARCFieldDoc()
This change removes the "onclick" attribute for the MARC doc
link in the cataloguing editor.

Test plan:
0. Apply patch
1. Go to http://localhost:8081/cgi-bin/koha/cataloguing/addbiblio.pl?frameworkcode=#
2. Click on the question mark (?) next to any of the MARC fields
3. Press the "Repeat this tag" button
4. Click on the question mark (?) on the cloned MARC field
5. Note that both times it worked

Signed-off-by: Owen Leonard <oleonard@myacpl.org>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-30 10:07:08 -03:00
Michael Hafen
275197f405
Bug 34592: Patron Search filter fields needs to be at least an empty array
If buildPatronSearchQuery() doesn't return an empty array when it exits
early, then the code that adds the sort fields to the filters will fail.

Test plan:

- If there is not all ready a patron with a sort1 or sort2 value from
  the bSort1 or bSort2 authorized values, add an authorized value if
  necessary.
- Add a patron if necessary, and set the patrons sort field to the added
  value.
- In Tools -> Patron card creator start a new card batch.
- Click on Add Patron(s) to open the patron search window.
- Pick the value in either the sort1 or sort2 drop down.
- Submit the page.  The page will reload and there won't be results.
- Apply the patch, close the patron search window, clear the browser
  cache, reload the "New patron card batch" page, and open the patron
  search window again.
- Repeat the search. There will be results.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-30 10:07:07 -03:00
cb6dd4e82b
Bug 34115: Use a global tab select function for activating Bootstrap tabs based on location hash
This patch fixes automatic tab selection by location.hash in the MARC
subfield editor. This allows links which target a specific subfield to
open the page with the subfield tab selected.

I've put this into a global function since it can be reused in multiple
places: The about page and the checkout page have variations of this
functionality which can be replaced with this function.

The patch also corrects two links in Koha pointing to the About
page which included the wrong location hash (changed in the switch to
Bootstrap tab wrappers).

To test, apply the patch and go to Adminstration -> Bibliographic
frameworks.

- View the MARC structure for any framework.
  - In the "Search for tag" input field, submit a tag and subfield which
    will be found in that framework, e.g. "245$a"
  - When you submit the form you should be sent to the MARC subfield
   structure page for that tag with the subfield tab automatically
   selected.
- View the MARC subfield structure for any framework.
  - In the table of subfields, click the subfield link in the first
    column. You should be taken to the edit form with the corresponding
    tab selected.
- Go to Circulation and check out to a patron. Append a tab anchor to
  the URL, e.g. "#holds_panel" and submit. You may have to shift-reload
  the page to see the change. (As far as I know no links in Koha take
  advantage of this)
- Perform the same test on the patron detail page
- Go to the About page and perform the same test with a tab anchor like
  "#team_panel" or "#sysinfo_panel"

Signed-off-by: Sam Lau <samalau@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-30 10:07:06 -03:00
Laura Escamilla
a5cadff482
Bug 34095: Adjust logic so that shipment cost is empty if the receiving shipment cost is blank.
Signed-off-by: Anneli Österman <anneli.osterman@koha-suomi.fi>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-30 10:07:06 -03:00
62a757acd1
Bug 34307: (follow-up) Use template wrapper for title tag
This patch updates the title tag to use a wrapper too, since Bug 33906
is in the process of getting fixed.

The patch also removes an extra <span> tag: Only the translatable string
needs the span, not the entire line.

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-30 09:02:48 -03:00
a6ec493647
Bug 34307: (QA follow-up) add <span> to have cleaner strings for i18n
Cleaner strings are extracted this way.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-30 09:02:47 -03:00
e8a4805435
Bug 34307: Update plugin template to match master conventions
This change uses WRAPPER to build the breadcrumbs and
updates the plugin template to follow some other master conventions
like differentiating between Administration and Tools for plugins.

Test plan:
0. Apply patch
1. Upload koha-plugin-test-wrapper
2. Enable the plugin
3. Click "Actions" and click "Run tool"
4. Note how the plugin page looks like a perfect Koha Tools page
5. Note that the plugin only contains 6 lines of template code
to achieve this effect

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-30 09:02:45 -03:00
3ed9168315
Bug 34567: Correct colors for advanced cataloging editor status bar
This patch updates the advanced cataloging editor CSS so that the
"status bar" footer below the editor has colors consistent with the
staff interface redesign.

To test, apply the patch and clear your browser cache if necessary.

- Enable the EnableAdvancedCatalogingEditor preference if necessary.
- Go to Cataloging -> Advanced editor.
- At the bottom of the screen below the editor the "status bar" should
  have a green border that matches color in the header search bar.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-30 09:02:40 -03:00
298043edb7
Bug 34598: Improve handling of not found ILL request
1) Enable ILLmodule and install FreeForm, run:
   bash <(curl -s https://raw.githubusercontent.com/ammopt/koha-ill-dev/master/start-ill-dev.sh)
2) Visit a request that doesn't exist (assuming empty illrequests table):
   INTRA/cgi-bin/koha/ill/ill-requests.pl?method=illview&illrequest_id=1
3) Verify an error 500 is returned with message "Can't call method
   "backend_illview""
4) Apply patch
5) Repeat steps 1-3. Verify that a "ILL request not found." message is
   now displayed

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-30 09:02:39 -03:00
1e9d4dfdd5
Bug 34601: Fix wrong quote
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-30 09:02:38 -03:00
7d5dc65867
Bug 34627: CMS pages do not correctly display the opaccredits footer
This patch corrects the page structure of CMS pages in the OPAC so that
the contents of the footer, including opaccredits, OpacKohaUrl, and the
language selection bar, are displayed correctly.

This patch contains indentation changes, so ignore whitespace when
viewing the diff.

To test you should have these settings:

- OpacKohaUrl enabled in system preferences
- Some content in the opaccredits HTML customization region
- Some content in the OpacNav HTML customization region
- At least one translation installed and enabled
- The opaclanguagesdisplay preference enabled
- The OpacLangSelectorMode set to "only footer" or "both top and footer"

- Apply the patch and go to Tools -> Pages and create a page with the
  display location "OPAC."
- Open the OPAC link for your newly-created page and confirm that the
  page looks correct:
  - The "main" region with the white background should contain the
    breadcrumb navigation, the sidebar OpacNav content, and the contents
    of your CMS page.
  - The opaccredits and OpacKohaUrl content should appear below that
    region.
  - The language selection footer should be at the bottom of the page.

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Aleisha Amohia <aleishaamohia@hotmail.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:59:08 -03:00
39ea14846c
Bug 33910: (follow-up) Remove mistaken addition of 'USE raw'
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:59:07 -03:00
f1975ff68e
Bug 33910: Improve translation of title tags: Authorities
This patch updates authorities templates so that title
tags can be more easily translated.

To test, apply the patch and confirm that the following authorities
pages have the correct title tags:

- Authorities -> Authorities home page
  - Authority search results
    - Authority details
      - Edit authority
      - Merge authorities
- Cataloging -> New or edit record
  - Trigger the authority search plugin on a field which is linked to an
    authority type.

Signed-off-by: Sam Lau <samalau@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:59:06 -03:00
Katrin Fischer
1ce37bf529
Bug 33913: (QA follow-up) Move variables into strings
To test:

1) Checking out to {patron}
* Search for any patron
* Click on cardnumber in patron search results
* Verify that page title reads correctly and includes patron's name

2) Batch check out to {patron}
* Activate BatchCheckouts system preference
* Check all patron categories for BatchCheckoutsValidCategories
* Go to any patron account
* Click on batch checkout tab
* Verify that the page title reads correctly and includes patron's name

3) Place a hold on {title}
* Search for a record with items in the staff interface catalog
* Click on 'place holds'
* Verify that the page title reads correctly and includes the title of the record

4) Overdues as of {date}
* Set DateFormat system preference to any other than default
* Go to circulation > overdues
* Verify the page title includes today's date in the correct format

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:59:05 -03:00
5c62994abd
Bug 33913: Improve translation of title tags: Circulation, holds, and ILL
This patch updates circulation, holds, and ILL templates so that title
tags can be more easily translated.

To test, apply the patch and confirm that the following pages have the
correct title tags:

 - Circulation -> Article requests
 - Catalog -> Bibliographic record -> Items -> View item's checkout history
 - Circulation -> Overdues with fines
 - Circulation -> Transfers
 - Circulation -> Checkout notes
 - Circulation -> Circulation home
 - Circulation -> Check out
 - Circulation -> Batch checkouts
 - Circulation -> Curbside pickups
 - Circulation -> On-site checkouts
 - Circulation -> Overdues
 - Circulation -> Holds to pull
 - Circulation -> Checkout to patron -> Print slip
 - Circulation -> Renew
 - Catalog -> Bibliographic record -> Request article
 - Circulation -> Hold ratios
 - Circulation -> Check in
 - Circulation -> Set library
 - Circulation -> Transfers to receive
 - Circulation -> Transfers to send
 - Circulation -> Holds queue
 - Circulation -> Holds awaiting pickup
 - ILL requests
 - Catalog -> Bibliographic record -> Holds

Signed-off-by: Phil Ringnalda <phil@chetcolibrary.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:59:05 -03:00
Pascal Uphaus
1f71c971e3
Bug 34240: Added hint about having to use Koha-to-MARC mappings for Koha link in frameworks
To test:
1. Go to administration > marc bibliographic framework > choose framework > marc structure
choose any tag
2. go to actions and edit subfields
3. check that the koha link pulldown can not be edited
=> There is no hint
4. Apply patch
5. Refresh the page, the select box is replaced by text and there is a hint on how to edit

Signed-off-by: Christina Fairlamb <cjf@wmu.se>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:59:04 -03:00
5d2ff2f80a
Bug 33920: Improve translation of title tags: Patrons
This patch updates patron module templates so that title
tags can be more easily translated.

To test, apply the patch and confirm that the following patron-related
pages have the correct title tags:

- Patrons home page
  - Patron search ->
    - Select two patrons -> Merge selected
  - Add patron ->
    - Add a patron with the same name and email address ->
      - Click "View existing record" in "Duplicate patron record?"
        dialog.
- Patron details
  - Manage API keys (must have RESTOAuth2ClientCredentials enabled)
  - Accounting
    - Transactions
      - Print fee receipt
      - Print invoice
      - Make a payment
    - Create manual invoice
    - Create manual credit
  - Routing lists (must have RoutingSerials enabled)
  - Circulation history
  - Notices
  - Statistics
  - Files (must have EnableBorrowerFiles enabled)
  - Purchase suggestions
  - Discharges (must have useDischarge enabled)
  - Housebound (must have HouseboundModule enabled)
  - ILL requests history (must have ILLModule enabled)
  - Set permissions
  - Change password
  - Print summary
  - Print account balance
  - Two-factor authentication (must have TwoFactorAuthentication
    enabled)
  - Edit patron
  - Update child to adult patron:
    - Must have more than one "adult" type category defined
    - Locate a patron with a "child" type category
    - Choose More -> Update child to adult patron
  - Delete patron (confirmation page)
- Pending discharge requests
- Patrons requesting modifications

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:59:03 -03:00
edad82662c
Bug 34356: Make sort order always default to correct column
To test:
1- Check out an item to a patron
2- View checkout history, default sort is on 'Date due'
3- Enable RecordStaffUserOnCheckout
4- View checkout history, default sort is on 'Checked out by'
5- Apply patch
6- Table should sort to 'Date due' no matter what the sys pref is set to

Signed-off-by: Jason <jrobb@sekls.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:59:00 -03:00
f2d7149603
Bug 34384: Fix inconsistencies in Library transfer limits page titles, breadcrumbs, and heading
This patch makes a few minor corrections to the library transfer limits
pages, both basic and advanced, standardizing on the name "Library
transfer limits" for page title, breadcrumb navigation, and page
heading.

To test, apply the patch and go to Administration -> Library transfer
limits.

- Confirm that the page shows "Library transfer limits for [library]
  [library code]"
- Breadcrumb navigation, page title, and heading should match.
- Swith to the advanced editor
- The title should now be simply "Library transfer limits"

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:58:59 -03:00
8460158f6b
Bug 34386: Fix inconsistencies in Cities and tows page titles, breadcrumbs, and header
This patch updates the cities administration page so that page title,
breadcrumb navigation, and headings are consistent with each other and
with other parts of Koha.

To test, apply the patch and go to Administration -> Cities and towns.
Check each variation of the page to confirm that page title, breadcrumb
navigation, and heading are correct.

- Main page (listing cities)
- New city
- Edit city
- Delete city

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:58:58 -03:00
4b3c14df4d
Bug 34382: Fix inconsistencies in Patron categories page titles, breadcrumbs, and header
This patch makes some changes to the patron categories administration
page so that the page title, breadcrumb navigation, and headings are
more consistent with each other.

To test, apply the patch and go to Administration -> Patron categories.

- Test all variations of the page:
  - Main page (listing categories)
  - New category
  - Edit category
  - Confirm deletion of category when the category is in use (there are
    existing patrons who have that category)
  - Confirm deletion of category when the category is not in use

Note: This patch contains whitespace changes, so please ignore
whitespace if you're checking the diff.

Signed-off-by: Amanda Hovey <amanda.hovey@parliament.nsw.gov.au>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:58:57 -03:00
c263a45450
Bug 34381: Correct inconsistencies in Authorized values page title
This patch rewords the authorized values template title logic so that it
matches the breadcrumb navigation for consistency.

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

Test all versions of the page to confirm that the breadcrumbs and page
title are consistent with each other:

 - Main view
 - New category
 - View category (click a category, e.g. CCODE, in the main view)
 - Add authorized value
 - Edit authorized value

Signed-off-by: Christian Nelson <christian.nelson@uwasa.fi>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:58:56 -03:00
879f7db9e8
Bug 34379: Fix label of new library group button
This patch corrects the label on the button for creating a new library
group, changing it from "Add group" to "New group" for consistency.

To test, apply the patch and go to Administration -> Library groups.
Confirm that the button is now labeled "New group" and that it
still works to trigger the library group creation modal.

Signed-off-by: Andrew <andrew.auld@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:58:56 -03:00
3c5b129f1d
Bug 34378: Fix inconsistencies in Libraries page titles, breadcrumbs, and header
This patch makes changes to the libraries administration page so that
the page title, breadcrumbs, and page headings are more consistent with
each other.

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

- Click "New library"
- The page title, breadcrumb navigation, and page heading should all
  read "New library"
- Enter some details, save your new library, and then click the "Delete"
  button corresponding to your new library.
- On the deletion conformation page, the page title and breadcrumb
  navigation should match, "Confirm deletion of library 'X'"
- Edit a library. On the edit page, the page title, breadcrumb
  navigation, and page heading should match: "Modify library 'X'"

Signed-off-by: paul <paul.poulain@biblibre.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:58:55 -03:00
c7daaa901b
Bug 34385: Correct page heading of transport cost matrix page
This patch corrects the main heading on the transport cost matrix page
so that it matches the page title and breadcrumb navigation.

To test, apply the patch and go to Administration -> Transport cost
matrix. Confirm that the page heading reads "Transport cost matrix."

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:58:54 -03:00
1156b3683b
Bug 25023: Claims returned dates not formatted according to dateformat preference
This patch updates the code for rendering the claims returned table on
the checkout and patron detail pages. Now the dates are formatted using
the global js-date-format.inc code.

To test, apply the patch and make sure the claims returned feature is
enabled by setting a value in the ClaimReturnedLostValue system
preference.

- Check out some items to a patron.
- Under the checkouts tab, mark several checkouts as "Claim returned."
- Open the claims tab.
- The dates in the "Created on" column should be formatted according to
  your dateformat system preference.
  - Change the dateformat preference and return to the checkouts page.
    Confirm that the claims tab shows dates formatted correctly.
- The "created on" and "updated on" columns should sort correctly with
  any dateformat setting. You may have to directly modify the dates in
  the database in order to have the right data for testing this.

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:37:17 -03:00
f1078daf8f
Bug 34219: Allow getAll to receive additional URL parameters
It's not possible to pass additional URL parameters. We need it at least for bug 32474.

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>
2023-08-29 14:37:17 -03:00
8d78ba7ff2
Bug 34341: Revert Bug 34072: Holds queue search interface hidden on small screens
This patch undoes the changes made by 34072 because they have had a more
far-reaching effect than was expected. I have never been able to
reproduce Bug 34072 before the patch.

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

- Go to Circulation -> Holds queue
- Try adjusting the width of the browser window to confirm that it is
  responsive at various widths.
- When the viewport width is below 768 the page layout will adjust, and
  the contents of the sidebar will drop below the table of holds. This
  is consistent with other pages in the staff interface.
- Check that the corrected CSS has resulted in a correction to the
  layout of submit buttons in forms:
  - For example, in Administration -> Cities and towns -> New city.
  - Before the patch there was no padding between the submit button and
    the white fieldset containing the form fields.
  - After the patch the correct padding has been restored.

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:37:14 -03:00
f2be2cedc5
Bug 34533: jsdiff library missing from guided reports page
This patch restores the inclusion of the jsdiff JS library on the guided
reports page when displaying saved SQL reports. This fixes a JS error in
the browser console when the user tries to use our automatic update on
SQL reports which use an older syntax.

The patch also corrects a problem with svc/convert_report which was
causing an error when trying to display the diff information.

To test, apply the patch and restart services.

- Go to Reports -> Create from SQL.
- Add a report which is based on an older db structure. The example I
  found was:

  SELECT biblionumber,
  ExtractValue(marcxml,'//datafield/@tag/text()[substring(.,1,1) = "5"]') as 'notes'
  FROM biblioitems
  HAVING notes <> ''

- Save the report and go to the list of saved reports. There should be
  an "Update" column in the table, with a message about your newly-added
  report:

  "This report seems obsolete, it uses biblioitems.marcxml field."

- Clicking the "Update SQL" button should trigger a modal window that
  shows the before an after versions of the report. There should be
  no error in the browser console. Unfortunately the diff will not
  display because of a separate bug in svc/convert_report

Signed.off-by: Jessie Zairo <jzairo@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:37:13 -03:00
fb48155cc4
Bug 34565: Label mismatch in MARC21 006 and 008 cataloging plugins
This patch modifies the JS which builds the table of options for
populating MARC21 fields 006 and 008 when using the cataloging plugin.

To test, apply the patch and go to Cataloging -> New record.

- Click the plugin trigger link next to the 006 input field (you may
  need to click the tag to expand it.
- In the table of input fields, test that clicking the label, e.g. "Type
  of material", "00 - Form of material," etc,  moves focus to the
  corresponding form field.
- Perform the same test on the plugin-popup for field 008.

Signed-off-by: Andrew <andrew.auld@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:37:12 -03:00
ac3351d4a4
Bug 34129: Fix plus and minus icon
This patch fixes the plus and minus on the buttons to expand the columns
in mobile or zoomed in view.

To test:
1. Apply the patch
2. Rebuild css (yarn build)
3. Go to the OPAC and search for a record with an item
4. Zoom in to 400% or change view to mobile
--> The items table should have a plus (+) button in the last column to
expand and have the rest of the information

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:37:11 -03:00
Katrin Fischer
3b9de04b89
Bug 34601: (QA follow-up) Fix edit/delete links in toolbar
We also need to fix the links in the toolbar visible when
'viewing' the suggestion.

1) Create a suggestion
2) Click on the title
3) Click edit > CSRF error
4) Click delete link in toolbar > CSRF error
5) Apply patch and repeat

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:37:10 -03:00
b630dfcb08
Bug 34601: Fix edit/delete links on suggestion.tt
1. Make a suggestion
2. Try to edit, delete the suggestion.
3. Error:
4. Apply patch and restart_all
5. Try again and you should not get the error anymore.

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>
2023-08-29 14:37:10 -03:00
Andreas Roussos
bee56606a6
Bug 29578: Upgrade the jQuery highlighter plugin
Under certain conditions, the jQuery term highlighter
can break and in the process make the "Highlight" /
"Unhighlight" button disappear altogether. This affects
catalog searches in both the OPAC and the Staff Client,
with UNIMARC-based instances affected the most as the
"Highlight" / "Unhighlight" button disappears if you
perform a specific OPAC search (see Test plan below).

This patch fixes that by upgrading the highlighter
plugin to its latest version for both the OPAC and
the Staff interface. Then, the changes from commit
2e4b574074 (Bug 5844) are applied to the plugin code.
Also, Koha uses "term" instead of "highlight" as the
class name for the <span> highlighting elements, so
the plugin code is modified for that aspect, too.
Finally, the plugin file is renamed to reflect the
version change (v3 -> v5) and all references to the
old filename in the Template files are updated.

Test plan:

0) In a UNIMARC instance, catalogue two books using
   the titles given below (Title subfield = 200$a):

   Book 1: Συλλογής των εν επιτομή τοῖς πάλαι γεωγραφηθέντων
   Book 2: Επιτομή της ιστορίας των Βαλκανικών Πολέμων (1912-1913)

1) OpacHighlightedWords and StaffHighlightedWords
   should both be set to "Highlight".

2) Search the OPAC for "επιτομή των" (without the
   quotes). In the results page, notice that:

   a) You get an Uncaught DOMException error in the
      web browswer's JavaScript Console (press F12):
      "Failed to execute 'splitText' on 'Text': The
      offset 3 is larger than the Text node's length."
   b) the "Highlight" / "Unhighlight" button vanishes
   c) some search terms matches are not highlighted
      (for example "των" in the 2nd Book)

3) Repeat the same search in the Staff interface.
   In the results page, notice that:

   a) You get an Uncaught DOMException error in the
      web browswer's JavaScript Console (press F12):
      "Failed to execute 'splitText' on 'Text': The
      offset 3 is larger than the Text node's length."
   b) Even though some terms are highlighted, the
      button still says "Highlight"
   c) some search terms matches are not highlighted
      (for example "των" in the 2nd Book)

4) Apply this patch.

5) Repeat the searches (you may have to press CTRL-F5
   to reload the JavaScript code). This time the
   "Highlight" / "Unhighlight" button is displayed
   in the OPAC, and all your search terms should be
   highlighted in yellow. Toggling the highlight
   should cause no problems, and there shouldn't be
   any errors logged in your browser's Console.

Signed-off-by: Christian Nelson <christian.nelson@uwasa.fi>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:37:09 -03:00
Kevin Carnes
e0007bf362
Bug 27496: Accessibility: Navigation buttons are poorly described by screen readers
This patch adds aria-haspopup and aria-expanded attributes to the language
    and welcome user buttons so that screen readers will know that they cause a
    popup menu to be displayed.

    To test:
    1. Use an installation with at least 2 active languages
    2. Log in the OPAC
    3. Use a screen reader (e.g. ChromeVox in Chrome) and use the tab key to
       navigate to the language and welcome user buttons while noticing that
       they are described as "Button collapsed" and "Button", respectively
    4. Alternatively, inspect the buttons and notice that they are missing
       aria-haspopup and aria-expanded attributes
    5. Apply the patch
    6. Observe that these buttons now are described as "Popup button collapsed"
       or that they contain the aria-haspopup and aria-expanded attributes like
       the lists button
    7. Sign off

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:37:08 -03:00
77ee1ca743
Bug 34509: Use select2 to load vendors on basket creation
This patch moves the dropdown to use select2 and avoids loading all
vendors at page load.

To test:
 1 - Create some extra vendors in your system, ideally over 20
 2 - Search for a vendor in acquisitions
 3 - Click 'New->basket'
 4 - Note the dropdown of all vendors
 5 - Choose a vendor and create a basket
 6 - Apply patch
 7 - Repeat
 8 - Note only a partial list of vendors is loaded
 9 - Search in the dropdown and confirm vendors are returned
10 - Select a vendor and create the basket

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:37:07 -03:00
b679c82211
Bug 34518: Fix 'Renew all' button in OPAC
Test plan:
- Checkout an item to koha user (42)
- Log-in to OPAC and visit user summary to see check-outs
- Press 'Renew all' button at the bottom, notice it doesn't work.
- Apply patch. Repeat and verify it now works

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-29 14:37:06 -03:00
1403fd847a
Bug 34364: Fix progress bar progress update
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-18 10:29:26 +03:00
cbee847797
Bug 12421: no way to get back to search results from overdrive results
When on your search results you can click the link to overdrive results,
but then you can't get back to your catalog search results, the
line that links to the results should be there on both pages.

Test Plan:
1) Apply this patch
2) Enable Overdrive searching
3) Perform a search
4) View the overdrive results
5) Note the "Catalog search for '$q'" link in the breadcrumbs
6) Click the link
7) Note you return to the search results page

Signed-off-by: Barry Cannon <bc@interleaf.ie>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 15:14:09 +03:00
e645bf152d
Bug 34351: Add link to access_url
On k-t-d
1) Run bash <(curl -s https://raw.githubusercontent.com/ammopt/koha-ill-dev/master/start-ill-dev.sh)
2) Create a new Freeform request
3) Update access_url field. Run this mysql query:
update illrequests set accessurl = https://koha-community.org/;
4) Visit ill table list at /cgi-bin/koha/ill/ill-requests.pl
5) Verify access url is not clickable
6) Apply patch. Refresh. Verify it's now clickable.

Signed-off by: Jeremy Evans <Jeremy.Evans@ukhsa.gov.uk>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 15:14:08 +03:00
3ac122f47d
Bug 34343: Update style of fixed footer navbar in Z39.50 searches
We use a Bootstrap fixed navbar in the footer of two pages: the popup
Z39.50 searches in cataloging and authorities. The style of these
footers needs to be udpated for the new staff interface design.

This patch also changes the style of the "cancel" controls in these
footers from links to buttons. The popup window in cataloging has been
adjusted to be the same size as the one in authorities.

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

- Go to Cataloging -> New from Z39.50/SRU.
  - In the popup window, the form should fit comfortably in the window.
  - The footer should be white with a grey border at the top, with
    Bootstrap-styled buttons aligned to the right.
- Perform the same test in Authorities -> New from Z39.50/SRU
- Install and enable an additional translation so that you can confirm
  that the language-selection footer still has the correct style.

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 15:14:07 +03:00
d8054e30fc
Bug 31667: Merge 'tip' and 'hint' classes
This patch corrects a few instances of the use of the "tip" class and
replaces them with "hint." The patch also removes the class from the
staff interface CSS.

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

- View a patron account and click the "Routing lists" link in the
  left-hand sidebar.
  - On the subscription routing lists page the "Search subscriptions"
    page label should look correct.
- Go to Reports -> Catalog by item type.
  - The "Select none..." hint should be styled correctly.
- The third instance, in the installer, is only visible if you try to
  install Koha using a MySQL user who doesn't have the correct
  privileges, so may be too much trouble to really test. A check of the
  patch should be adequate.

Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 15:14:06 +03:00
Andreas Jonsson
01a6b2b63b
Bug 33140: Use facet label value for mouseover text on facet removal link
This patch updates the facets includes in both the staff interface and
OPAC so that the title attribute on "remove" links uses the full name
rather than the code of the facet. So, library name instead of
branchcode, collection code description instead of authorized value
code.

To test, apply the patch and perform a search in the staff interface.

- Click a facet in the left-hand sidebar which will return more than one
  result.
  - On the reloaded page there should be a link next to that facet: [X].
    Hovering your mouse over it should show "Remove facet [facet name]"
    e.g. "Remove facet Centerville" instead of "Remove facet CPL"
- Test on library facets, item type facets, and collection code facets.
- Perform the same test in the OPAC.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 15:14:05 +03:00
758712dc01
Bug 34305: Account for negative prices on acq details tab
The acquisition detail tab shows the estimated cost while
the order is still pending and the actual price, once received.
At least the tool tip on the table header row says so. This
was not working correctly.

To test:
* Create a basket
* Create a new order line with a negative list price (credit)
* Close the basket
* Verify that the price shows correctly in the acquisition details
  tab on the record
* Receive the order and enter a different negative actual price.
* Reload detail view, verify it still shows the estimated price
* Apply patch, restart_all
* Verify now the correct actual price displays
* Create another basket and order line
* Verify while not yet received, it still shows the estimated price

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 15:14:04 +03:00
585138f13f
Bug 34447: Do not export "Actions" columns
In the KohaTable Vue component we should add the noExport class to the actions columns to not export them.

Test plan:
Go to the ERM module, create at least one agreement.
Go to the agreement list view and click "export" to export the table
=> Without this patch the "Actions" column was exported
=> With this patch is no longer there

Sponsored-by: BULAC - http://www.bulac.fr/
Signed-off-by: Sam Lau <samalau@gmail.com>
Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 15:14:03 +03:00
c68bec11da
Bug 34344: Make item types breadcrumbs uniform
This patch updates the breadcrumbs on the item types administration page
so that it reads "Item types" instead of "Item types administration,"
making it more consistent with other administration pages. The same
change is made to the page's main heading.

To test, apply the patch and go to Administration -> Item types.

The breadcrumbs should read "Home -> Administration -> Item types. The
page heading should read "Item types."

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 12:17:02 +03:00
d313f9b963
Bug 33848: Enabling Coce in the OPAC breaks cover images on bibliographic detail page
Bug 32412 added an additional "context" parameter to KOHA.coce.getURL.
The code which pulls a Coce image for the "main" cover image slider
needs to include the correct context parameter for the images to load.

This patch also makes a minor correction to CSS in order to make the
cover image slider "dots" change color to highlight the current slide.

To test, apply the patch and rebuild the OPAC CSS.

- Enable multiple cover image sources in the OPAC including Coce, e.g.
  Amazon, Google, OpenLibrary, etc.
- Search for a title which will match multiple cover image sources. In
  the sample data a search for "Perl" will return good results.
- Note the number of cover images loading for a title in the search
  results.
- View the detail page for that title. There should be the same number
  of covers in the cover image slider.
- Clicking the slider navigation dots should work to show each image,
  and the dot should change color to highlight the current image.

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 12:17:01 +03:00
aa8dc28e97
Bug 33848: Don't remove coce container from template
It's removed from coce.js

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 12:17:00 +03:00
37d5a0cb44
Bug 34197: Group and label vendor contact settings
This patch changes the layout of vendor contact settings, both in the
entry form and in the detail view. Now acquisitions-specific contact
settings and serials-specific contact settings are grouped together and
labeled as such.

The patch also corrects some markup to make the display more consistent.
JS handling of some labels has been removed because the structure change
eliminated the need for a "for" attribute.

The patch also makes a minor unrelated change to the display of discount
percentages to ensure that a blank value doesn't display.

To test, apply the patch and go to Acquisitions -> New vendor.

- In the vendor entry form, in the "Contacts" section, you should see
  two groups of checkboxes, "Acquisitions options" and "Serials
  options." Confirm that the labels can be clicked to check checkboxes.
- Test the process of adding another contact and confirm that the
  additional entry fields work correctly.
  - Confirm that the "Primary acquisitions contact" and "Primary serials
    contact" checkboxes act like radio buttons between the two contacts:
    Checking the box under one contact should uncheck the same box under
    the other contact.
- Confirm that all your data is saved correctly.
- Test the page during the edit process as well.
- View your updated vendor and confirm that the detail view looks
  correct.

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 12:16:58 +03:00
f049e40c44
Bug 34433: 'Custom cover image' in lightbox is untranslatable
In the staff interface, when viewing a custom cover image in the
lightbox, at the bottom, it says 'Custom cover image'. This string is
not translatable. The string is missing the _() i18n function.

This patch also corrects the "Coce image from Amazon.com" which was
missing the correct i18n function too.

If necessary, import the MARC records attached to this bug to use
in testing.

1. Enable CustomCoverImages
   1.1. Go to Administration > System preferences
   1.2. Search for CustomCoverImages
   1.3. Select "Show" in CustomCoverImages
   1.4. Set CustomCoverImagesURL to {956$u}
   1.5. Click "Save all Enhanced content preferences"

2. Install a new language
   2.1. gulp po:update --lang fr-CA
   2.2. Search for "Custom cover image" and "Coce image from Amazon.com"
        in fr-CA-staff-prog.po file, make sure it is translated
   2.3. Install translations
        ./misc/translator/translate install fr-CA
   2.4. In the staff interface, go to Administration > System
        preferences
   2.5. Search for language
   2.6. Check the box next to the newly installed language
   2.7. Click "Save all I18N/L10N preferences"

3. View the image in the lightbox in the staff interface
   3.1. If using the attached records, search the catalog in the staff
        interface for "As you like it";
        If not using the file, add an image URL in 956$u, or finagle
        something with CustomCoverImagesURL
   3.2. Click on the title to view the detailed record
   3.3. Click on the image to view it in the lightbox

Test the lightbox in the default English translation and in your
newly-translated language. In both cases the caption in the lightbox
footer should be correct.

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 12:16:57 +03:00
5749df1e3a
Bug 34434: Terminology: Biblio should be bibliographic
This patch corrects several more instances where the templates use the
term "biblio" where it should use "bibliographic."

To test, apply the patch and confirm that these instances read
correctly:

- About -> Special thanks... -> Mines Paristech: "bibliographic
  frameworks"
- Acquisitions -> Vendor -> Receive shipments: "Record count" in the
  table of shipments.
- Catalogue -> Bibliographic record details -> Labeled MARC: "Labeled
  MARC record" heading.
- Circulation -> Holds to pull: Error message, "hold has been placed at
  the bibliographic record level."
  * I'm not sure how one can trigger this error message.
- Tools -> Log viewer -> Filter by "Catalog" and "Add": "Bibliographic
  record..." link in the "Object" column.

Signed-off-by: Sam Lau <samalau@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 12:16:56 +03:00
2234ecb8c9
Bug 34354: Fix progess typo
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>
2023-08-15 12:16:55 +03:00
e50d437e87
Bug 34322: Correct icon triggering more fund search options
This patch updates the budget/fund administration header search form so
that it uses the "fa-slider" Font Awesome icon instead of a folder icon.
This makes it consistent with other search forms which have a similar
set of additional options.

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

- The "Search funds" form should have the "fa-sliders" icon.
- Clicking it should trigger the expansion of the additional search
  options.

Signed-off-by: Sam Lau <samalau@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 12:16:54 +03:00
0761107a5f
Bug 34292: (bug 33804 follow-up) Format "checked out on" date
Test plan:

1) Without applying this patch, issue an item to a patron and
   notice that in the 'Checkouts' table the 'Checked out on'
   date is of the form YYYY-MM-DD HH:MM:SS.

2) Apply this patch, restart Plack if necessary.

3) Refresh the patron 'Checkouts' table: this time the 'Checked
   out on' date will observe the setting of your `dateformat`
   System Preference.

4) Extra credit: repeat step 3) for different `dateformat`
   settings, each time you should get a 'Checked out on' date
   that matches the date format you chose.

Signed-off-by: Andreas Roussos <a.roussos@dataly.gr>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 12:16:53 +03:00
fc2dc973f0
Bug 34493: Fix indenting in search_indexes.inc
Bug 32683 broke indenting in koha-tmpl/intranet-tmpl/prog/en/includes/search_indexes.inc
Not on purpose looks like.

Test plan :
1) Look at changes to validate indenting
2) Run prove xt/tt_valid.t

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 12:16:52 +03:00
4ff9099700
Bug 34289: Add missing class to one condition of the checkin template
The markup of the checkin template varies depending on the conditions of
the operation, and in one case the barcode field was missing the
"barcode" class. This patch adds it.

To test, apply the patch and make sure the finesMode system preference
is enabled.

- Go to returns.pl (/cgi-bin/koha/circ/returns.pl)
- Expand the the options so you see 'Forgive overdue charges'.
- Check that box and check in an item
- After checkin, the barcode field should keep the same style it had
  before the transaction.
- Note: The yellow background of the input when the "Forgive" checkbox
  is checked is to be expected.

Signed-off-by: Sam Lau <samalau@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 12:16:51 +03:00
a4b7490633
Bug 34469: Block editing for received order lines
When an already received order line is modified/edited,
we experience data loss. Most prominently, we will lose the
linked invoiceid. Therefore we should not allow editing an
order line that was already received. If something needs to be
changed, the receipt should be cancelled first.

To test:
* Create basket as standing order with items added in cataloguing
* Add an order line
* Receive shipment
* Go to the basket summary page, click on 'Modify'
* Change the actual cost
* Save
* Verify that the invoice is now empty
* In the database aqorders.invoiceid will be NULL
* Apply patch
* Receive another shipment for the standing order
* Go back to basket summary page
* Verify the 'Modify' link is no longer present
* Click 'Modify' on the unreceived order line
* Edit the URL parameter odernumber to have the number of an
  already received order line
* Verify you see a nice error message:
  This order cannot be edited, the basket is closed or the order was already received.

Signed-off-by: Sam Lau <samalau@gmail.com>
Signed-off-by: Michaela Sieber <michaela.sieber@kit.edu>
Signed-off-by: Laura Escamilla <laura.escamilla@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 12:16:50 +03:00
27cf76b484
Bug 34108: Preserve checked orders after item editing
The js that buils the new row after editing expects to receive a
value '_checked' indicating if theitem was selected. The 'item' variable
used to create the row after edit comes from the api and doesn't include this.

We need to inspect the previous html before building the new row to confirm the box wa checked

To test:
 1 - Create a basket with 'items created on receive'
 2 - Add an order line with multiple items to it
 3 - Close basket
 4 - Receive shipment
 5 - Add invoice information
 6 - Receive through receive link in the table
 7 - Check some items
 8 - Click on the "Edit" link and make some change to the item
 9 - Save
10 - Checkboxes have disappeared
11 - Cancel receipt
12 - Apply patch
13 - Reload the page
14 - Repeat 7-9
15 - Checkbox is preserved

Signed-off-by: Sam Lau <samalau@gmail.com>
Signed-off-by: Michaela Sieber <michaela.sieber@kit.edu>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 12:16:49 +03:00
813cfe1eec
Bug 34056: Add -api-client suffit to authorised-values API client
In koha-tmpl/intranet-tmpl/prog/js/vue/fetch all files have the -api-client suffix but authorised-values. For consistency we should add it.

Test plan:
Go to the ERM module and confirm that dropdown lists are correctly
filled in with authorised values.
You can also inspect the console and confirm that a GET query to /authorised_value_categories is done

Sponsored-by: BULAC - http://www.bulac.fr/
Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 11:25:57 +03:00
Katrin Fischer
ad41643d5a
Bug 34436: (QA follow-up) Move spans to surround full text
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 11:25:56 +03:00
8933036742
Bug 34436: Some breadcrumbs lack <span> for translatability
This patch modifies several templates which were updated recently so
that breadcrumbs markup could be built using template wrappers. The
patch wraps strings in <span> in cases where it is necessary to make
them translatable.

To test, apply the patch and view the following pages to confirm that
the breadcrumbs still show up correctly:

- Administration -> MARC bibliographic framework
  - Add framework
  - Edit framework
  - Delete framework
- Administration -> Share content with Mana KB
- Administration -> Circulation and fine rules
- Authorities ->
  - Add authority
  - Edit authority
- Catalog -> Advanced search
  - Bibliographic detail page
    - Must have EasyAnalyticalRecords enabled.
    - Edit -> Link to host record
- Patrons
- Reports -> Average loan time
- Serials -> Serials home

Signed-off-by: Sam Lau <samalau@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 11:25:55 +03:00
33f5982c3e
Bug 33909: (follow-up) QA fixes
Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 11:25:52 +03:00
9bd21c7a38
Bug 33909: Improve translation of title tags: Administration
This patch updates administration templates so that title tags can be
more easily translated.

To test, apply the patch and confirm that the following
Administration pages have the correct title tags:

 - Libraries
 - Library groups
 - Item types
 - Authorized values
 - Patron categories
 - Circulation and fines rules
 - Patron attribute types
 - Library transfer limits
 - Library transfer limits advanced editor
 - Transport cost matrix
 - Item circulation alerts
 - Cities and towns
 - Curbside pickup
 - Patron restriction types
 - Debit types
 - Credit types
 - Cash registers
 - Manage plugins
 - Manage jobs
 - MARC bibliographic framework
 - Koha to MARC mapping
 - MARC Bibliographic framework test
 - Authority types
 - Classification configuration
 - Record matching rules
 - Record overlay rules
 - OAI sets configuration
 - Item search fields
 - Search engine configuration
 - Currencies and exchange rates
 - Budgets
 - Funds
 - EDI accounts
 - Library EANs
 - Network Printers
 - Identity providers
 - Z39.50/SRU servers
 - SMTP servers
 - Did you mean?
 - Table settings
 - Audio alerts
 - Share your usage statistics
 - Share content with Mana KB
 - Additional fields
 - Keyboard shortcuts

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 11:25:51 +03:00
Katrin Fischer
19f9240759
Bug 34345: (QA follow-up) Fix some more occurrences
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 11:25:50 +03:00
452ac93b92
Bug 34345: 'Circulation and fine rules' vs 'Circulation and fines rules'
This patch corrects two instances of the phrase "Circulation and fines
rules" in favor of the more common "Circulation and fine rules" for
consistency's sake.

To test, apply the patch and go to Administration.

- In the description under the "Circulation and fine rules" link it
  should read, "Define circulation and fine rules..."
- Open the Circulation and fine rules page and confirm that the link in
  the sidebar menu is correct.

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 11:25:49 +03:00
Julian Maurice
9b1bd01a42
Bug 34155: Hide 'Next available' at OPAC when item-level hold is forced
This was a regression caused by bug 24860

Test plan:
1. Set up circulation rules so that OPAC users can place holds only on
   specific items ("OPAC item level holds" = "force")
2. Try to place a hold at OPAC. The "Next available item" option should
   not appear.
3. Set "OPAC item level holds" to "allow"
4. Try to place a hold at OPAC. The "Next available item" option should
   appear

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 11:25:45 +03:00
e211d8b34b
Bug 34269: (QA follow-up) Add missing TT filters
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>
2023-08-15 11:25:44 +03:00
e0fdb2db51
Bug 34269: Convert to using codes in select compares
This patch updates the logic in smart rules to compare option values to
codes as apposed to option texts to value descriptions.

0. Apply patch
1. Install another language in the staff interface
   1. ./translate install xx-XX
   2. Check the box of the language in the 'language' system preference
   3. Refresh
2. Create an item type with a parent
   1. Go to Administration > Item types
   2. Create a new item type or modify an existing one, assigning a parent type
      Example: Create a 'Children's books' itemtypetype
      and assig 'Books' as its parent
   3. Create a third item type with the same description but something added in ():
      Example: 'Children's books (3-5)'
3. Create a circulation rule for the parent type
   Example: All/Books, with 2 checkouts allowed
4. Create a circulation rule for:
   All/All with 3 checkouts allowed
5. In English, click on "Edit" next to the parent type rule (All/Books)
   --> Note that the item type in the bottom row (the modifiable row) is changed to 'Books (All)'
6. Modify the number of checkouts allowed (e.g. 99)
   --> The All/Books rule is modified
7. Switch the interface to the other language
8. Click on "Edit" next to the parent type rule (All/Books)
   --> The All/Books rule is modified
9. Add rules for Children's books and Children's books (3-5)
10. Click on "Edit" next to each rule and change a value
   --> Verify that the changed values are always saved for the correct rule

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>
2023-08-15 11:25:43 +03:00
72ef65edbe
Bug 34452: Restore fund label and 'Update adjustments' button
This patch fixed 2 small and recent regressions:

* The "Update adjustments" button used to always display. It's
  required to save a new first adjustment, but also to save
  changes to existing adjustments edited inline. It now would
  only display after "Add adjustments" was clicked. We retore
  to display it always. (bug 32746)

* We have several "Fund" pull downs on this page, but they are
  for different things and require different labelling.
  "Fund" was changed to "Shipping fund" which matches at the top,
  but doesn't work for the adjustments table and single adjustment
  form. Now we use "Shipping fund" "Fund" and no label in the table
  as the table header covers it there. (bug 33721)

To test.
  * Add a vendor
  * Receive shipment
  * Add invoice and save
  * Click on "Finish receiving"
  * Verify the button "Update adjustments" appears after clicking
    "Add new adjustment"
  * Verify the button is gone after you clicked it and the table shows
  * Change something in the table - no button to save change :(
  * Apply patch
  * Repeat steps, button "Update adjustments" should not always be
    visible.

Signed-off-by: Sam Lau <samalau@gmail.com>
Signed-off-by: Michaela Sieber <michaela.sieber@kit.edu>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-15 11:25:42 +03:00
98a4b52be1
Bug 30524: (QA follow-up) Only generate CSRF token if it will be used
This patch avoids generating CSRF tokens unless the csrf-token.inc file
is included in the template.

Passed token doesn't need HTML escaped. The docs for WWW::CSRF state:
  The returned CSRF token is in a text-only form suitable for inserting into a HTML form without further escaping (assuming you did not send in strange things to the Time option).

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-07 21:00:06 -03:00
75d66cd266
Bug 22990: Fix template toolkit syntax issues in shelves_results.tt
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-07 21:00:03 -03:00
30a763a9be
Bug 22990: Fix for shelves table
Signed-off-by: David Cook <dcook@prosentient.com.au>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-07 21:00:02 -03:00
Amit Gupta
1a64c1c1db
Bug 22990: Add CSRF protection to boraccount, pay and suggestion
Signed-off-by: David Cook <dcook@prosentient.com.au>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Test plan would have been nioe.
Tested by changing MAX_AGE with suggestions.
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-07 21:00:01 -03:00
593e1dc584
Bug 34368: Add CSRF token to Content Management pages
This change adds a CSRF token to the Content Management pages
at additional-contents.pl.

Test plan:
0. Apply patch
1. koha-plack --restart kohadev
2. Try to add "News", "HTML customizations", and "Pages".
3. Try to delete these new content entries
4. Note that you were successful in your endeavours

JD amended patch: remove empty line removal (no need to create
unecessary conflicts)

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-07 21:00:00 -03:00
0221fec5ac
Bug 30524: Core CSRF checking code
Split out from bug 22990 as requested.

Signed-off-by: David Cook <dcook@prosentient.com.au>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-08-07 20:59:58 -03:00
96187695d7
Bug 28966: Prefetch patron data for holds queue viewer
Test Plan:
1) Generate the holds queue
2) Load the holds queue viewer page
3) Apply this patch
4) Restart all the things!
5) Reload the page
6) Note nothing has changed

Signed-off-by: Owen Leonard <oleonard@myacpl.org>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-25 16:25:38 -03:00
958c37c5c9
Bug 34226: Use 'type' at the datatable config level
Lets use 'type' definitions at the datatables settings level instead

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-25 16:25:35 -03:00
4e3b209a0d
Bug 34226: DT wrapper - pre-processed date term when filtering
If we have filters on top of column on a table that is using the DT REST API wrapper,
we cannot filter on date using formatted dates.

This was done for "date of birth" for bug 32505.
Here we want to provide a generic approach.

Note that we cannot use what has been done on bug 22440 in some cases
(when we don't write the thead DOM directly but rely on DataTables
constructor, for instance bug 33568). The data- attributes are not
passed by DT.

Test plan:
On top of 33568, filter date columns using the full version of the
formatted date

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-25 16:25:35 -03:00
71377c5e7b
Bug 34169: (follow-up) Fix ordering from staged files by removing superfluous form
Removes the unneded new form element as we have one big form for the whole page.

This should fix the situation where only the prices and information
of the first selected record carreid over into the order.

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-24 14:55:35 -03:00
c943fddac6
Bug 34169: Add decimal class to all relevant input fields in the acquisitions module
This is a first step towards more consistency and possibly supporting
multiple input formats as well in the future. It marks all input fields
for monetary values, such as prices, replacement prices etc. with a class
that is linked to a check for number format with the jQuery Validator plugin.

To test:

For any input field to test, try adding various false entries, like "abc" or "1,00".
It should only accept inputs with decimal dot, like: "1.00"

0) Apply patch, restart_all
1) Suggestion
  * Add a new suggestion in the staff interface
  * Test: price input field at the bottom of the form.
  * Accept the suggestion
2) Order form
  * Create a new basket
  * Create an order line from an existing record
  * Test: list price, replacement price, and actual price.
  * Check the checkbox for uncertain price before you save
3) Uncertain prices
  * Go to the uncertain prices page for this vendor
  * Test: price field
    Note: this form does its own validation, but the change should not change behaviour for now
  * Resolve the uncertain price
  * Close order
4) Receive shipment
  * Test: Shipping cost
5) Receive the order
  * Test: replacement price, actual price
  * Check checkbox for price in foreign currency
  * Test: price in foreign currency
  * Receive order line
6) Invoice summary
  * Finish receiving
  * Test: shipping cost
  * Test: invoice adjustments: amount in the form for the first entry, amount in the table after adding it
7) Merging invoices
  * Receive another shipment and create and invoice
  * Go to invoices and search all
  * Check the 2 entries for merging
  * Test: shipping cost
8) Adding orders from a staged/new file
  * Export some records using the cart or list
  * Create a new basket
  * Order from new file
  * Import your file, ignore item records
  * Test: price and replacement price
  + Bonus: also test with items, test plan and file from bug 22802 are really helpful here

Signed-off-by: Michaela Sieber <michaela.sieber@kit.edu>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-24 14:55:34 -03:00
6b2308c17b
Bug 34169: Use jQuery validator plugin to validate amounts
This is a first step towards more consistency and possibly supporting
multiple input formats as well in the future. It allows us to mark all
input fields for monetary values, such as prices, replacement prices,
fees etc. with a class that is linked to a check for the 'number' format
in the jQuery Validator plugin.

This is the base patch that does nothing by itself, please see
test plan in second patch.

Signed-off-by: Michaela Sieber <michaela.sieber@kit.edu>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-24 14:55:34 -03:00
Hammat Wele
ad124fe536
Bug 33978: Adding authority from automatic linker closes imported record
If you import a record, then create an authority record using the automatic linker, it closes the biblio record. The problem occures when a record is edited in a new tab.

To recreate:

1. Import the example records
   1.1. Download the example records
   1.2. Go to Cataloging > Stage records for import
   1.3. Choose the downloaded file
   1.4. Click Upload file
   1.5. Click Stage for import
   1.6. Click View batch
   1.7. Click Import this batch into the catalog
   1.8. Click View detail of the enqueued job
   1.9. Click Manage imported batch

Correct behaviour:

2. In another tab, search for one of the records (for example, Fafounet)
3. Click Edit > Edit record
4. Go to field 100
5. Click Link authorities automatically
   --> It should say 100 - No matching authority found.
6. Click the plus sign next to 100
7. Fill out the mandatory fields by clinking in the text fields (000, 003, 005, 008, 040), field 100 should already be filled
8. Click 'Save'
   --> Authority number is added in 100 and you get to stay in the record for more edits if needed

Incorrect behaviour:

9. Go back to the imported batch tab
10. Click Edit next to the second title (the one by Paventi, Eza)
11. Redo steps 4 to 8
    --> Record is closedclear :(
    The behaviour should be the same, stay in the bibliographic record until it is saved.

12. Apply the patch
13. Redo step 9, 10, 4
14. Edit field 100, Type 'Paventi Test 2'
15. Redo step 5 to 8
    --> Authority number is added in 100 and you get to stay in the record for more edits if needed

Signed-off-by: Phil Ringnalda <phil@chetcolibrary.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-24 14:55:32 -03:00
3cb77a590b
Bug 34028: Show the secret when registering from the auth screen
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-24 14:55:31 -03:00
Katrin Fischer
d81b009ab0
Bug 34181: Fix jQuery selector to make delete checkboxes reappear
Bug 32257 changed the page structure slightly to fix a display
issue with the labels. This resulted in a broken selector in the
function for displaying the checkboxes for deleting/emptying a
certain patron field.

To test:
* Go to Tools > Batch patron modifications
* Enter some cardnumbers or borrowernumbers
* On the batch patron edit form, verify that the checkboxes
  behind each input field are missing
* Apply patch
* Verify the checkboxes reappeared
  * Verify that for mandatory fields the checkbox is locked
* Make some batch edits and verify the checkboxes work as
  intended

Signed-off-by: Lisette Scheer <lisette.scheer@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-24 13:58:26 -03:00
050c173f6c
Bug 32711: Add biblio details to modal
This patch adds biblio details to the self-checkout modal. As part of
this we add 'biblio' to the x-koha-embed option on the public items
endpoint, clone the js-biblio-format include from the staff client
adapting it slightly for OPAC use along the way and also import
escape_str and escapeHtml from staff to opac too.

Signed-off-by: Silvia Meakins <smeakins@eso.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-24 13:58:20 -03:00
92692a2ee9
Bug 34334: Item(s) in MARCdetail untranslatable
This patch adds a <span> around the text "Item(s)" in the template for
the MARC detail page in the staff interface. Without the span the
translation tool can't detect the string.

To test, apply the patch and update a translation, e.g. fr-FR:

  > cd misc/translator
  > perl translate update fr-FR

- Open the corresponding .po file, in this case
  misc/translator/po/fr-FR-staff-prog.po
- Confirm that the string is now in the .po file for translation. You
  should find these lines:

koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/MARCdetail.tt:146
c-format
msgid "Item(s)"
msgstr "Exemplaire(s)"

I found that the translation was already populated. Install the updated
po file:

 > perl translate install fr-FR

Test the MARC detail page in your translated language to confirm that
the string is correct.

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-21 17:14:39 -03:00
c8dbed27f1
Bug 33286: Update 'catalog' to 'bibliographic' in preferences
Correct the terminology to make it clear catalog concerns only concerns
bibliographic records at the moment, not authority records too.

Signed-off-by: Sam Lau <samalau@gmail.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-21 17:14:38 -03:00
6b914e8c23
Bug 34320: Hold reordering arrows look broken after Font Awesome upgrade
This patch makes minor CSS corrections to the arrows on the place hold
page in the staff interface. The corrections are necessary because of
changes in the display of icons in Font Awesome 6.

To test, apply the patch and locate a bibliographic record in the staff
interface to place a hold on.

- Place at least one hold on that title.
- After placing the hold, you should see a table of all the existing
  holds on that record.
- The arrow control links should look correct, with the "move to top"
  and "move to bottom" arrows having an extra border to differentiate
  them from the others.

Signed-off-by: Sam Lau <samalau@gmail.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-21 17:14:37 -03:00
39496af98f
Bug 34337: (bug 33581 follow-up) Sample patrons not inserted
The "select all" link for the optional sample data is not selecting
holidays and patrons.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-21 17:14:35 -03:00
6a55fad7b4
Bug 33105: Redirect to 404 if no vendor exists
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-20 10:59:30 -03:00
0f7daf1b00
Bug 33105: Add vendor issues
This patch is the main patch of this patch set, it contains the
controller acqui/vendor_issues.pl, its corresponding template, and some
links to this script.

It adds:
* A new DB table aqbookseller_issues linked with the aqbooksellers table
* A new subpermission acquisition.issue_manage
* A new authorised value category VENDOR_ISSUE_TYPE and two examples
MAINTENANCE and OUTAGE
* A new controller couple acqui/vendor_issues.[pl,tt]

Test plan:
0. Apply the patches, run updatedatabase and restart_all
1. Go to the acquisition module, create a new vendor or use an existing
one
2. Create a couple of issues for this vendor
3. Edit/Delete and search for those issues

This is the basics for tracking issues with vendors.
Suggestions welcome, on follow-up bug reports.

Signed-off-by: Jonathan Field <jonathan.fieeld@ptfs-europe.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-20 10:59:22 -03:00
093d1959af
Bug 32271: (QA follow-up) Restore $Price filtering for valid values
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-19 13:00:39 -03:00
Géraud Frappier
adeb4d5453
Bug 32271: Fix overdue fines cap (amount) set to 0.00 when editing rule.
Signed-off-by: Anneli Österman <anneli.osterman@koha-suomi.fi>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-19 13:00:36 -03:00
67916fc23a
Bug 34133: Set default sort on first column (ID) desc
Test plan:

Before applying patch:
* Open incognito at /cgi-bin/koha/ill/ill-requests.pl,
* Verify order is by ASC (lowest ID first)
* Close incognito

Apply patch, then:
* Open incognito at /cgi-bin/koha/ill/ill-requests.pl,
* Verify order is by DESC (highest ID first)

Signed-off-by: Magnus Enger <magnus@libriotech.no>
Followed the test plan from Bugzilla, and added it above.
Works as advertised.
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-19 12:06:51 -03:00
461c1931b9
Bug 33028: (follow-up) Apply unformat_price to decimal fields
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-19 12:06:43 -03:00
31cbd5ce94
Bug 33028: (follow-up) Add unformat_price js function
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-19 12:06:42 -03:00
3c2d40bb4a
Bug 33028: Add TT filters for Price and pattern checks to input fields
With this patch, all monetary values in the table will be displayed
formatted.

Also, the input will be checked against our agreed pattern to make
sure no false values can be entered.

Missing: When editing a rule, we need to unformat the value, so that
instead of the display format we have the input format available
for editing.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-19 12:06:41 -03:00
bc13d57e02
Bug 31339: Add staff wrapper template include for tool plugins
This change adds a template include which can be used as a
WRAPPER for tool plugins, which makes it easy to pages in tool
templates without having to copy and maintain a lot of template
boilerplate.

Test plan:
0. Apply patch and koha-plack --restart kohadev
1. Upload koha-plugin-test-wrapper
2. Enable the plugin
3. Click "Actions" and click "Run tool"
4. Note how the plugin page looks like a perfect Koha Tools page
5. Note that the plugin only contains 6 lines of template code
to achieve this effect

Signed-off-by: David Nind <david@davidnind.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-18 14:07:40 -03:00
256518bf75
Bug 29471: Add display of MARC 520 to staff interface detail page
At the moment 520 only displays in the OPAC. With this patch it
also displays in the staff interface detail page.

To test:
* Find a record with 520 or add some 520 entries to a record
  Note: different ind. 1 values will result in different labels
* View the record in the staff interface and the OPAC
* Verify only the OPAC shows the 520 entries
* Apply patch
* Verify now the staff interface displays them as well

Signed-off-by: Phil Ringnalda <phil@chetcolibrary.org>

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Updated patch for displaying $u as link.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Restored signoff line from Phil. Change only for $u.
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-18 14:07:39 -03:00
5d572ec461
Bug 29732: Check alert in cataloguing authorities should be a static message
This patch modifies the authority record editor so that form
validation errors are collected in a static "dialog" at the top of the
page instead of showing in a transient JavaScript alert.

The text of the message is roughly the same as it was in the alert, and
links have been added so that the user can click to jump directly to the
field referenced.

If the user scrolls down away from the static error message, a button
appears in the floating toolbar to jump back to the message.

- Go to Authorities and create a new authority record using a framework
  which has multiple mandatory fields defined
  (e.g. an unmodified default framework)
- Without entering anything in mandatory fields, click the "Save"
  button.
- You should see a message box appear at the top of the page.
  - It should list each missing mandatory subfield and tag, each with a
    "Go to field" link next to it.
  - Clicking the "Go to field" link should switch you to the correct tab
    and scroll the mandatory field into view.
- When you have scrolled down far enough for the error messages to be
  offscreen, an "Errors" button should appear in the floating toolbar.
  Clicking it should scroll the box back into view.
- If you fix some but not all of the missing mandatory fields the
  message should update with only the current issues.
- Confirm that the record saves when all issues are resolved.

Signed-off-by: Phil Ringnalda <phil@chetcolibrary.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-18 14:07:38 -03:00
ea1a282b5e
Bug 33270: (follow-up) Handle records that fail attempt to ignore bad characters
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-18 12:46:58 -03:00
c71468537b
Bug 33270: Attempt to recover from invalid metadata exception
This patch uses the new record_strip_nonxml routine to attempt to display
the record when it contains invalid characters

Rather than silently strippg these, we warn in the logs, then add an 'about'
container to the response. It is displayed nicely in the web view or sent as "INVALID_METADATA" in
the xml response

The 'error' codes for OAI seem to be at the request level, and the offered codes don't have a match
for a bad record. Adding the about when we can recover seems the most generous response

To test:
Test plan, assumes using KTD default data - otherwise you need to find and import a record with encoding issues:
 1 - Enable OAI-PMH system preference
 2 - Browse to:
    http://localhost:8080/cgi-bin/koha/oai.pl?verb=ListRecords&resumptionToken=marcxml/350////0/0/352
 3 - 500 error:
    Invalid data, cannot decode metadata object (biblio_metadata.id=368, biblionumber=369, format=marcxml, schema=MARC21, decoding_error=':8: parser error : PCDATA invalid Char value 31...
 4 - Apply patch, restart all
 5 - Reload the page
 6 - It loads!
 7 - Click 'Metadata' for record 369 - it succeeds!
 8 - Check the logs - confirm you see a warning of the record problem
 9 - Confirm 369 has an about section
10 - Check the individul 'GetRecord' response as well
    http://localhost:8080/cgi-bin/koha/oai.pl?verb=GetRecord&metadataPrefix=oai_dc&identifier=KOHA-OAI-TEST:369

Signed-off-by: Sam Lau <samalau@gmail.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-18 12:46:57 -03:00
Jan Kissig
e3ff3a6204
Bug 34251: When using the fast add framework in addbiblio.pl there is thrown a JS error in selectTab( "#tab0XX_panel" );
This is because no nav tabs are build in addbiblio.tt as BIG_LOOP has a
length(size) of 1

To test:

1) go to More>Cataloging
2) click +New record
3) Click Settings> Fast add framework
4) take a look on console
5) try selecting a different framework now, will have no effect
6) apply patch and redo steps 1 to 5
7) there should be no error in console and a change in settings works a
   expected

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-18 12:46:55 -03:00
0db60995a8
Bug 34288: Allow access to the cataloguing module with tools permission
Bug 31162 moved the cataloguing tools to a new cataloguing module home
page. This prevents people without cataloguing permissions, but with
some tools permissions to access things like the labels creator tool.

I tracked all permissions on the cataloging-home.tt template, including
the Stock Rotation ones which I initially missed because I was focusing
on tools.

This patch makes the cataloging-home.pl page require either
'cataloguing' or any relevant 'tools' permission to allow access. the
page.

The staff interface main page and the top bar dropdown are updated using
the same logic to display the cataloguing module link.

For that purpose, I wrapped the permissions on a sub in `C4::Auth`.

To test:
1. Have a patron with only 'catalogue' and some of this permissions:

* inventory
* items_batchdel
* items_batchmod
* items_batchmod
* label_creator
* manage_staged_marc
* marc_modification_templates
* records_batchdel
* records_batchmod
* stage_marc_import
* upload_cover_images
* stockrotation => manage_rotas

2. Log in
=> FAIL: No link to the cataloguing module, neither in the dropdown
3. Apply this patch
4. Repeat 2
=> SUCCESS: You have the link!
5. Play with the different combinations and notice things are sound and
   correct
6. Sign off :-D

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-18 12:46:53 -03:00
Katrin Fischer
3f80a0fcf7
Bug 29762: (follow-up) Change field names from phone to primary phone
This change is made in order to make sure that the labels on the
normal patron form and the batch patron edit tool match up.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-14 16:52:04 -03:00
Philip Orr
782bb4acf9
Bug 29762: Change field names from "Mobile" to "Other phone"
This Patch changes the field name for "Mobile" to "Other phone"
in Patron batch modification.

To test:
1. Apply the patch
2. Go to Tools -> Batch Patron Modification and add some patrons
3. Hit "continue"
4. Verify that in the list of patrons you selected, the field
"Mobile" has been replaced by the field "Other phone"
5. Verify that down below in the fields to be batch modified,
the field "Mobile" has also been replaced by the field "Other
phone"
6. Add some data into the field "Other phone" (e.g. 12345 or
some other number) and hit save
7. Confirm that the field was correctly modified and is still
named "Other phone"

Signed-off-by: Sam Lau <samalau@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-07-14 16:52:03 -03:00