koha.git
10 months agoBug 34319: Upgrade cypress 9.7.0 to 12.17.2
Jonathan Druart [Thu, 20 Jul 2023 09:53:19 +0000 (11:53 +0200)]
Bug 34319: Upgrade cypress 9.7.0 to 12.17.2

We are currently using 9.7.0. Since 10 the config file structure changed, and has been renamed cypress.json to cypress.config.ts

https://docs.cypress.io/guides/references/migration-guide#Migrating-to-Cypress-version-10-0

Also cypress-studio (used for bug 34076) is not working on 9.7.0.

Test plan:
yarn install
yarn build
mv /root/.cache/Cypress/12.17.2/ /kohadevbox/Cypress/
perl /kohadevbox/misc4dev/run_tests.pl --run-cypress-tests-only

You should not get any failures from the tests.

Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 34043: Remove incorrect spaces
Tomas Cohen Arazi [Mon, 4 Sep 2023 12:30:14 +0000 (09:30 -0300)]
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>
10 months agoBug 32911: (QA follow-up) Adjust tests
Tomas Cohen Arazi [Mon, 4 Sep 2023 11:50:52 +0000 (08:50 -0300)]
Bug 32911: (QA follow-up) Adjust tests

This patch adjusts tests so they acknowledge the new syspref and the
fact `partner_code` will be skipped if found on the config file.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 27542: (follow-up) Fix unit test
Martin Renvoize [Wed, 8 Mar 2023 11:23:26 +0000 (11:23 +0000)]
Bug 27542: (follow-up) Fix unit test

Signed-off-by: Stephen Graham <s.graham4@herts.ac.uk>
Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 27542: (follow-up) Capitalization
Martin Renvoize [Wed, 8 Mar 2023 11:23:00 +0000 (11:23 +0000)]
Bug 27542: (follow-up) Capitalization

Signed-off-by: Stephen Graham <s.graham4@herts.ac.uk>
Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 27542: Allow cancellation of partner ILL
Andrew Isherwood [Mon, 25 Jan 2021 11:18:29 +0000 (11:18 +0000)]
Bug 27542: Allow cancellation of partner ILL

This commit enables the display of the "Revert request" button when a
request's status is GENREQ / "Requested from partners"

The relevant unit test has also been updated

Rescued-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Stephen Graham <s.graham4@herts.ac.uk>
Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 34569: (QA follow-up) Tidy block
Tomas Cohen Arazi [Fri, 1 Sep 2023 15:04:23 +0000 (12:04 -0300)]
Bug 34569: (QA follow-up) Tidy block

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 34569: Fix misc/cronjobs/holds/holds_reminder.pl trigger arg
Fridolin Somers [Thu, 17 Aug 2023 20:42:31 +0000 (10:42 -1000)]
Bug 34569: Fix misc/cronjobs/holds/holds_reminder.pl trigger arg

misc/cronjobs/holds/holds_reminder.pl help says one can use arge -t for --triggered
But not implemented in code.
Should be like in misc/cronjobs/overdue_notices.pl :
  't|triggered'    => \$triggered,

Test plan :
Play with misc/cronjobs/holds/holds_reminder.pl with arg -t and
--trigger

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>
10 months agoBug 34634: Show expirationdate of expired holds on reserve/request.pl
Lucas Gass [Mon, 28 Aug 2023 22:24:24 +0000 (22:24 +0000)]
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>
10 months agoBug 34583: Overdue notice - wrong coding in outlook in czech e-mail in “print” mode
Petr Svoboda [Tue, 22 Aug 2023 13:13:18 +0000 (15:13 +0200)]
Bug 34583: Overdue notice - wrong coding in outlook in czech e-mail in “print” mode

Koha overdue notice “print” email in Outlook is incorrectly encoded in czech language.
Tested in KohaTestingDocker - https://gitlab.com/koha-community/koha-testing-docker
This patch fixes that error.

Test plan:
Overdue notice, set print in UI, https://snipboard.io/FLkIxf.jpg.

Message body:
<table style="padding:0; margin: 0; border-collapse: collapse; font-family: 'Trebuchet MS', Helvetica, sans-serif; width: 100%; "><tr><td style="vertical-align: top; padding: 0"> </td><td style="width: 75mm; vertical-align: top;"><table style="margin-top: 2.5cm; font-size: 11pt;"><tr><td><<borrowers.cardnumber>></td></tr><tr><td><<borrowers.firstname>> <<borrowers.surname>></td></tr><tr><td><<borrowers.address>> <<borrowers.streetnumber>></td></tr><tr><td><<borrowers.city>></td></tr><tr><td><<borrowers.zipcode>></td></tr></table></td></tr><tr><td colspan="2" style="padding: 0;"><table style="width: 100%; margin: 3cm 0 0 0;"><tr><td style="width: 5mm; height: 5mm; border-bottom: 1px dotted #000;"> </td><td style="height: 1mm;"></td><td style="width: 5mm; height: 1mm; border-bottom: 1px dotted #000;"> </td></tr></table></td></tr><tr><td colspan="2"><table><tr><td style="padding: 0.5cm 0.3cm">V Chrudimi dne <<today>></td></tr><tr><td style="padding: 0 0.3cm">Upozorňujeme Vás, že byla již o 30 dnů překročena doba, na kterou jsme Vám půjčili dokumenty (celkem<<count>>). Žádáme Vás o brzké vrácení těchto výpůjček:</td></tr><tr><td style="padding: 0.5cm 0.3cm;"><table><tr><th>Od</th><th>Do</th><th>Název</th><th>Autor</th><th>Částka</th></tr><item><tr><td><<issues.issuedate>></td><td><strong><<issues.date_due>></strong></td><td><<biblio.title>></td><td><<biblio.author>></td><td><<items.fine>> Kč</td></tr></item></table></td></tr><tr><td style="padding: 0 0.3cm">Zpozdné je účtováno dle ceníku knihovny.</td></tr><tr><td style="padding: 0 0.3cm">Dokumenty můžete vrátit na jakémkoli oddělení knihovny a pobočce v jejich provozní době.</td></tr><tr><td style="padding: 0 0.3cm">Nesplní-li čtenář svou povinnost vyrovnat závazky s knihovou, má knihovna právo postupovat podle příslušných ustanovení občanského zákoníku.</td></tr></table></td></tr></table>

Set delay 1 day, https://snipboard.io/boAd3F.jpg.

Checkout any book.

Set in database issues->date_due = today() - 1
for checkouted book, https://snipboard.io/PrylGB.jpg.

Run this scripts:

koha-shell kohadev -c "/kohadevbox/koha/misc/cronjobs/overdue_notices.pl -v -t"

You must have KOHA set up for sending e-mails (SMTP server). Replace xxx@email.cz to your e-mail and run this script:

koha-shell kohadev -c "/kohadevbox/koha/misc/cronjobs/gather_print_notices.pl /var/spool/koha/kohadev/ --email xxx@email.cz"

Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 34266: Add unit tests
Julian Maurice [Thu, 13 Jul 2023 08:58:42 +0000 (10:58 +0200)]
Bug 34266: Add unit tests

Signed-off-by: joubu <xxx@example.org>
Signed-off-by: tuxayo <victor@tuxayo.net>
Took the opportunity to perltidy this file as I was signing off

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
[EDIT] Added a rollback. Shouldnt harm :)
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 34266: Default to biblioitems.itemtype only if it's a valid itemtype
Julian Maurice [Thu, 13 Jul 2023 07:22:44 +0000 (09:22 +0200)]
Bug 34266: Default to biblioitems.itemtype only if it's a valid itemtype

biblioitems.itemtype can contain values that are not itemtypes (for
instance if the MARC field mapped to it uses another authorised value
category)
This patch checks that before using it as a default value for the
'itemtypes' item subfield.

Test plan:
0. Do not apply the patch yet
1. Change your MARC framework so that the field linked to
   biblioitems.itemtype uses an authorised value category different from
   'itemtypes'
2. Make sure that you have an item subfield linked to the authorised
   value 'itemtypes' in your MARC framework
3. Create a biblio with an itemtype (using a value that is NOT an item
   type, but a value from the authorised value category you selected in
   step 1)
4. Create a new item for this biblio. Notice that the biblio itemtype is
   automatically selected for the 'itemtypes' subfield
5. Apply the patch
6. Create a new item for the same biblio. Now the 'itemtypes' subfield
   should be empty.
7. Revert the change at step 1 so that your biblioitems.itemtype MARC
   field uses the 'itemtypes' AV category
8. Modify your biblio to use a valid item type.
9. Create a new item. The biblio itemtype should be used as a default
   value

Signed-off-by: joubu <xxx@example.org>
Signed-off-by: tuxayo <victor@tuxayo.net>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 34617: Preserve calculated expiration dates if set to update on import whether...
Nick Clemens [Fri, 25 Aug 2023 14:51:28 +0000 (14:51 +0000)]
Bug 34617: Preserve calculated expiration dates if set to update on import whether column included or not

To test:
1 - Setup a csv with column headers:
    surname firstname branchcode categorycode cardnumber dateenrolled
2 - add values
    Acosta Edna CPL PT 23529001000463 02/01/2013
3 - Set PT catgeory enrollement period to a specific date in the future
4 - Import the file and overwrite patrons and update dateexpiration
5 - Check Edna, note her date is not correct
6 - Apply patch
7 - Repeat
8 - Expiration date is now set as expected

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>
10 months agoBug 34617: Unit tests
Nick Clemens [Fri, 25 Aug 2023 14:51:23 +0000 (14:51 +0000)]
Bug 34617: Unit tests

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>
10 months agoBug 34135: Show the icons for selected tab to the left of the search bar in the staff...
Owen Leonard [Tue, 27 Jun 2023 18:23:59 +0000 (18:23 +0000)]
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>
10 months agoBug 34043: Improve translation of CSV header templates
Owen Leonard [Fri, 16 Jun 2023 18:08:14 +0000 (18:08 +0000)]
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>
10 months agoBug 34247: Improve translation of notice character count
Owen Leonard [Thu, 22 Jun 2023 12:35:34 +0000 (12:35 +0000)]
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>
10 months agoBug 34373: Improve layout of curbside pickups items ready list
Owen Leonard [Tue, 25 Jul 2023 14:29:42 +0000 (14:29 +0000)]
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>
10 months agoBug 32911: DBRev 23.06.00.017
Tomas Cohen Arazi [Fri, 1 Sep 2023 14:34:03 +0000 (11:34 -0300)]
Bug 32911: DBRev 23.06.00.017

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 32911: (follow-up) Only move config value from koha-conf.xml if it exists
Pedro Amorim [Fri, 5 May 2023 15:08:24 +0000 (15:08 +0000)]
Bug 32911: (follow-up) Only move config value from koha-conf.xml if it exists

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 32911: (follow-up) Remove partner_code
Pedro Amorim [Fri, 5 May 2023 15:07:15 +0000 (15:07 +0000)]
Bug 32911: (follow-up) Remove partner_code

from debian and /etc koha-conf.xml files

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 32911: (follow-up) Remove a couple of cases from tests
Martin Renvoize [Fri, 5 May 2023 13:24:37 +0000 (14:24 +0100)]
Bug 32911: (follow-up) Remove a couple of cases from tests

This patch simply removes the partner_code defaults from some tests
where it is no longer required.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 32911: (follow-up) Move pref from Notifications to Features section
Katrin Fischer [Thu, 4 May 2023 14:53:42 +0000 (14:53 +0000)]
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>
10 months agoBug 32911: Database update
Pedro Amorim [Wed, 8 Feb 2023 17:06:56 +0000 (17:06 +0000)]
Bug 32911: Database update

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>
10 months agoBug 32911: Remove ILL partner_code config from koha-conf.xml and turn it into a syste...
Pedro Amorim [Wed, 8 Feb 2023 16:57:14 +0000 (16:57 +0000)]
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>
10 months agoBug 34584: DBRev 23.06.00.016
Tomas Cohen Arazi [Fri, 1 Sep 2023 14:32:59 +0000 (11:32 -0300)]
Bug 34584: DBRev 23.06.00.016

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 34323: Enhance header search icon for more options
Owen Leonard [Thu, 20 Jul 2023 13:03:22 +0000 (13:03 +0000)]
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>
10 months agoBug 33921: Improve translation of title tags: Plugins and Point of sale
Owen Leonard [Tue, 6 Jun 2023 15:24:02 +0000 (15:24 +0000)]
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>
10 months agoBug 34691: Fix linkActiveClass in createRouter
Pedro Amorim [Fri, 1 Sep 2023 13:03:21 +0000 (13:03 +0000)]
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>
10 months agoBug 34691: Add cypress tests
Pedro Amorim [Fri, 1 Sep 2023 13:31:23 +0000 (13:31 +0000)]
Bug 34691: Add cypress tests

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 34646: Fix two attributes class in OPAC masthead-langmenu.inc
Fridolin Somers [Tue, 29 Aug 2023 17:59:05 +0000 (07:59 -1000)]
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>
10 months agoBug 33915: Improve translation of title tags: Installer and onboarding
Owen Leonard [Tue, 6 Jun 2023 15:15:55 +0000 (15:15 +0000)]
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>
10 months agoBug 33917: Improve translation of title tags: Offline circulation and patron lists
Owen Leonard [Tue, 6 Jun 2023 15:19:20 +0000 (15:19 +0000)]
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>
10 months agoBug 34418: Replace dynamic parameter on unnamed route node
Agustin Moyano [Thu, 27 Jul 2023 13:57:37 +0000 (10:57 -0300)]
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>
10 months agoBug 34418: Add is_empty flag
Jonathan Druart [Wed, 26 Jul 2023 11:32:28 +0000 (13:32 +0200)]
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>
10 months agoBug 34418: Allow empty nodes in breadcrumb's elements
Matt Blenkinsop [Wed, 26 Jul 2023 11:17:43 +0000 (13:17 +0200)]
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>
10 months agoBug 33871: Test where parameter in Sitemapper.t
Marcel de Rooy [Wed, 31 May 2023 12:55:04 +0000 (12:55 +0000)]
Bug 33871: Test where parameter in Sitemapper.t

This makes it possible to remove the ugly global deletes at the
start.

Test plan:
Run t/db_dependent/Sitemapper.t

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 33871: Use Koha object in Sitemapper, add optional filter
Marcel de Rooy [Wed, 31 May 2023 11:44:26 +0000 (11:44 +0000)]
Bug 33871: Use Koha object in Sitemapper, add optional filter

Test plan:
Run misc/cronjobs/sitemap.pl -where "biblionumber>X" (replace X
by some clever value)
Verify results by browsing sitemap files.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 33870: Fix indentation in subtest
Marcel de Rooy [Wed, 31 May 2023 12:12:34 +0000 (12:12 +0000)]
Bug 33870: Fix indentation in subtest

Test plan:
git diff -w HEAD~1.. t/db_dependent/Sitemapper.t

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
JD amended patch: tidy

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 33870: Polishing Sitemapper.t
Marcel de Rooy [Wed, 31 May 2023 07:18:17 +0000 (07:18 +0000)]
Bug 33870: Polishing Sitemapper.t

Create subtest.
Remove (useless) mock on DateTime.
Remove T::D::C module, add TestBuilder.
Replace local slurp function by use File::Slurp.

Test plan:
Run t/db_dependent/Sitemapper.t

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 33870: Make $MAX in Sitemapper::Writer global
Marcel de Rooy [Wed, 31 May 2023 07:00:13 +0000 (07:00 +0000)]
Bug 33870: Make $MAX in Sitemapper::Writer global

This should preferably not be a lexical variable (in case we ever
should call this under Plack). A global variable will also simplify
testing (see next patch).

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 34448: Update the way we handle response in http-client.js
Pedro Amorim [Mon, 31 Jul 2023 14:57:06 +0000 (14:57 +0000)]
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>
10 months agoBug 34448: Update cypress tests
Pedro Amorim [Mon, 31 Jul 2023 15:04:09 +0000 (15:04 +0000)]
Bug 34448: Update cypress tests

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 34441: Fixed Typo "Paramater"
Pascal Uphaus [Thu, 17 Aug 2023 11:32:51 +0000 (11:32 +0000)]
Bug 34441: Fixed Typo "Paramater"

To test:
1. git grep paramater
2. notice 3 files have spelling mistakes
3. apply the patch
4. git grep paramater
5. notice there are no spelling mistakes for that word

Signed-off-by: Thomas Klausner <domm@plix.at>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 31014: Minor UI problems in QOTD editor tool
Owen Leonard [Thu, 29 Jun 2023 16:41:56 +0000 (16:41 +0000)]
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>
10 months agoBug 33923: Improve translation of title tags: Reports
Owen Leonard [Tue, 6 Jun 2023 15:26:33 +0000 (15:26 +0000)]
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>
10 months agoBug 33922: Improve translation of title tags: Recalls
Owen Leonard [Tue, 6 Jun 2023 15:25:13 +0000 (15:25 +0000)]
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>
10 months agoBug 33869: Move Matcher.t to t/db_dependent
Marcel de Rooy [Mon, 29 May 2023 07:19:06 +0000 (07:19 +0000)]
Bug 33869: Move Matcher.t to t/db_dependent

Test plan:
Run t/db_dependent/Matcher.t

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 33869: Matcher.t - indentation and whitespace changes
Marcel de Rooy [Mon, 29 May 2023 07:12:57 +0000 (07:12 +0000)]
Bug 33869: Matcher.t - indentation and whitespace changes

Test plan:
Run git diff --ignore-all-space --ignore-blank-lines HEAD~1.. t/Matcher.t; #no output expected

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 33869: Matcher.t - use TestBuilder
Marcel de Rooy [Mon, 29 May 2023 07:08:19 +0000 (07:08 +0000)]
Bug 33869: Matcher.t - use TestBuilder

Remove T::D::C

Test plan:
Run t/Matcher.t

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 33914: Improve translation of title tags: Course reserves
Owen Leonard [Tue, 6 Jun 2023 15:15:11 +0000 (15:15 +0000)]
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>
10 months agoBug 33912: (follow-up) Correct case where a search has not been submited
Owen Leonard [Fri, 7 Jul 2023 12:35:34 +0000 (12:35 +0000)]
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>
10 months agoBug 33912: Improve translation of title tags: Cataloging
Owen Leonard [Mon, 12 Jun 2023 17:21:02 +0000 (17:21 +0000)]
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>
10 months agoBug 33908: Improve translation of title tags: Acquisitions
Owen Leonard [Tue, 6 Jun 2023 14:59:36 +0000 (14:59 +0000)]
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>
10 months agoBug 33744: Fix cloning (sub)fields with framework plugins
Matt Blenkinsop [Tue, 16 May 2023 11:14:01 +0000 (11:14 +0000)]
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>
10 months agoBug 34388: Fix inconsistencies in Patron restriction types page headers
Owen Leonard [Mon, 21 Aug 2023 15:11:38 +0000 (15:11 +0000)]
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>
10 months agoBug 34584: (QA follow-up) Update system preference SocialNetworks
Katrin Fischer [Thu, 24 Aug 2023 20:14:13 +0000 (20:14 +0000)]
Bug 34584: (QA follow-up) Update system preference SocialNetworks

SocialNetworks was set to be YesNo, but is actual choice with
3 options: linkedin, facebook, email.

This updates the database and the sysprefs.sql file.

It doesn't correct the value, but if it still contains twitter, this
will be fixed by the next change of the pref and has no negative
consequences.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 34584: Remove Twitter share button from the OPAC
Owen Leonard [Mon, 21 Aug 2023 16:51:59 +0000 (16:51 +0000)]
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>
10 months agoBug 34650: Convert list toolbar delete into form POST
David Cook [Wed, 30 Aug 2023 00:28:53 +0000 (00:28 +0000)]
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>
10 months agoBug 34650: Remove unnecessary CSRF check on edit_form
David Cook [Wed, 30 Aug 2023 00:07:23 +0000 (00:07 +0000)]
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>
10 months agoBug 34609: Add missing test for Koha::Hold->biblio
Jonathan Druart [Thu, 31 Aug 2023 07:03:31 +0000 (09:03 +0200)]
Bug 34609: Add missing test for Koha::Hold->biblio

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 34609: Add biblio method to Old::Hold
Pedro Amorim [Wed, 30 Aug 2023 13:12:31 +0000 (13:12 +0000)]
Bug 34609: Add biblio method to Old::Hold

Test plan, clean k-t-d:

1) Add a reserve to koha/koha user, mysql run:
insert into reserves(borrowernumber, reservedate, branchcode, cancellationdate, timestamp, biblionumber)
VALUES (51, '2022-09-23', 'CPL', '2022-09-23', '2022-09-23 15:46:21', 76);

2) Add an old_reserve to koha/koha user, mysql run:
insert into old_reserves(borrowernumber, reservedate, branchcode, cancellationdate, timestamp, reserve_id)
VALUES (51, '2022-09-23', 'CPL', '2022-09-23', '2022-09-23 15:46:21', 1);

3) Visit holdshistory on either OPAC (requires OPACHoldsHistory sys pref) or STAFF
STAFF/cgi-bin/koha/members/holdshistory.pl?borrowernumber=1
OPAC//cgi-bin/koha/opac-holdshistory.pl

4) Notice it blows up with a 500 error
5) Repeat step 3

Signed-off-by: Ray Delahunty <r.delahunty@arts.ac.uk>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 34609: Add tests
Pedro Amorim [Wed, 30 Aug 2023 13:13:04 +0000 (13:13 +0000)]
Bug 34609: Add tests

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 34466: Add listener to enable or disable clear filter button on KohaTable.vue
Pedro Amorim [Thu, 31 Aug 2023 16:18:56 +0000 (16:18 +0000)]
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>
10 months agoBug 34466: Cypress tests
Pedro Amorim [Thu, 31 Aug 2023 16:14:45 +0000 (16:14 +0000)]
Bug 34466: Cypress tests

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 34408: Inconsistencies in SMTP servers page titles, breadcrumbs, and header
Owen Leonard [Fri, 25 Aug 2023 15:59:12 +0000 (15:59 +0000)]
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>
10 months agoBug 34616: Move default server info outside the <fieldset>
Pedro Amorim [Fri, 25 Aug 2023 16:41:12 +0000 (16:41 +0000)]
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>
10 months agoBug 34616: Fix showing default server info on edit SMTP server page
Pedro Amorim [Fri, 25 Aug 2023 16:36:20 +0000 (16:36 +0000)]
Bug 34616: Fix showing default server info on edit SMTP server page

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>
10 months agoBug 34616: Add native bootstrap behaviour to default server dialog
Pedro Amorim [Fri, 25 Aug 2023 14:14:35 +0000 (14:14 +0000)]
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>
10 months agoBug 34276: (bug 21983 follow-up) Fix db rev 23.06.00.002
Jonathan Druart [Wed, 30 Aug 2023 14:21:37 +0000 (16:21 +0200)]
Bug 34276: (bug 21983 follow-up) Fix db rev 23.06.00.002

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>
10 months agoBug 31964: add a man page for koha-z3950-responder
Andreas Roussos [Sun, 27 Aug 2023 23:42:49 +0000 (23:42 +0000)]
Bug 31964: add a man page for koha-z3950-responder

The koha-z3950-responder command does not have a man page.

This patch fixes that.

Test plan:

1) Apply this patch.

2) Run the following command to generate the new man page:

   xsltproc /usr/share/xml/docbook/stylesheet/docbook-xsl-ns/manpages/docbook.xsl debian/docs/koha-z3950-responder.xml

3) View the generated man page with `man -l koha-z3950-responder.8`

   (KTD users may need to `apt-get install man-db` first as
   that package provides tools for reading manual pages)

4) Make sure this unit test passes:

   prove -v xt/verify-debian-docbook.t

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 34066: Datatable options don't fully translate on list of saved reports
Owen Leonard [Wed, 21 Jun 2023 13:30:57 +0000 (13:30 +0000)]
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>
10 months agoBug 34465: Make KohaTable.vue actions column not sortable
Pedro Amorim [Fri, 25 Aug 2023 10:28:58 +0000 (10:28 +0000)]
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>
10 months agoBug 34522: Pass the suggestion branchcode, not the suggester branchcode
Lucas Gass [Fri, 11 Aug 2023 20:53:44 +0000 (20:53 +0000)]
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>
10 months agoBug 34571: Remove use of "onclick" for ExpandField in cataloguing editors
David Cook [Fri, 18 Aug 2023 04:32:31 +0000 (04:32 +0000)]
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>
10 months agoBug 34570: Remove use of "onclick" for PopupMARCFieldDoc()
David Cook [Fri, 18 Aug 2023 03:02:30 +0000 (03:02 +0000)]
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>
10 months agoBug 34592: Patron Search filter fields needs to be at least an empty array
Michael Hafen [Thu, 24 Aug 2023 16:27:36 +0000 (10:27 -0600)]
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>
10 months agoBug 34115: Use a global tab select function for activating Bootstrap tabs based on...
Owen Leonard [Fri, 23 Jun 2023 16:02:43 +0000 (16:02 +0000)]
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>
10 months agoBug 34095: Adjust logic so that shipment cost is empty if the receiving shipment...
Laura Escamilla [Fri, 11 Aug 2023 15:36:20 +0000 (15:36 +0000)]
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>
10 months agoBug 34445: Set default budget in addorderiso2709.pl
Matt Blenkinsop [Mon, 31 Jul 2023 09:48:18 +0000 (09:48 +0000)]
Bug 34445: Set default budget in addorderiso2709.pl

This patch allows the default budget to be used as a fallback if no budget is selected. Currently the default budget is set using lines 129-133 but then is never used.

QA follow-up:
- perl tidied
- budget_codes changed to budget_ids for consistency

Test plan:
1) Apply patch
2) restart_all
3) Follow the steps from the bug description
4) Order lines should be added properly

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
[EDIT] Rearranged comments
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 34307: (follow-up) Use template wrapper for title tag
Owen Leonard [Mon, 21 Aug 2023 12:34:43 +0000 (12:34 +0000)]
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>
10 months agoBug 34307: (QA follow-up) add <span> to have cleaner strings for i18n
Victor Grousset/tuxayo [Sun, 20 Aug 2023 02:22:44 +0000 (04:22 +0200)]
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>
10 months agoBug 34307: Update plugin template to match master conventions
David Cook [Wed, 19 Jul 2023 05:35:35 +0000 (05:35 +0000)]
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>
10 months agoBug 34340: Changed "Tendered" to the correct input id which is "Collected"
Laura Escamilla [Fri, 21 Jul 2023 13:30:00 +0000 (13:30 +0000)]
Bug 34340: Changed "Tendered" to the correct input id which is "Collected"

Must also apply bug 34332 - fixed a syntax error for the pos email template

To test:
1. Configure your Koha to enable the point of sale system (i.e. enable syspref,
   set up a register, set up an item to sell).
2. Complete a transaction in the POS system.
3. Click on the “Email receipt” button next to the “Print receipt” option and
   enter an email address and confirm that the email is sent.
4. Check the “Tendered” field. It is showing up as 0.00 and not reflecting the
   actual amount that was tendered.
5. Apply patch
6. Repeat steps 2 & 3
7. The emailed receipt is now showing the correct tendered amount.
8. Sign off!

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>
10 months agoBug 30362: Fix GetSoonestRenewDate to really return soonest renew date
David Cook [Thu, 20 Jul 2023 02:39:27 +0000 (02:39 +0000)]
Bug 30362: Fix GetSoonestRenewDate to really return soonest renew date

This change fixes GetSoonestRenewDate so that it returns the soonest
renew date as calculated using "No Renewal Before" and "NoRenewalBeforePrecision".
In the past, it would only return the soonest renew date if "$now" was
lesser than it, which would typically only happen when using an "exact"
precision rather than a "date" precision.

Test plan:
0. Apply the patch
1. prove t/db_dependent/Circulation.t

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>
10 months agoBug 30362: Fix unit test
David Cook [Thu, 20 Jul 2023 02:39:18 +0000 (02:39 +0000)]
Bug 30362: Fix unit test

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>
10 months agoBug 30362: Unit test
Nick Clemens [Fri, 25 Mar 2022 15:18:27 +0000 (15:18 +0000)]
Bug 30362: Unit test

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>
10 months agoBug 34567: Correct colors for advanced cataloging editor status bar
Owen Leonard [Thu, 17 Aug 2023 13:06:01 +0000 (13:06 +0000)]
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>
10 months agoBug 34598: Improve handling of not found ILL request
Pedro Amorim [Wed, 23 Aug 2023 14:45:27 +0000 (14:45 +0000)]
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>
10 months agoBug 34601: Fix wrong quote
Tomas Cohen Arazi [Wed, 30 Aug 2023 11:51:17 +0000 (08:51 -0300)]
Bug 34601: Fix wrong quote

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 34627: CMS pages do not correctly display the opaccredits footer
Owen Leonard [Mon, 28 Aug 2023 10:59:29 +0000 (10:59 +0000)]
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>
10 months agoBug 34505: Patron invalid age in search_for_data_inconsistencies.pl skip expired...
Fridolin Somers [Wed, 9 Aug 2023 07:44:24 +0000 (21:44 -1000)]
Bug 34505: Patron invalid age in search_for_data_inconsistencies.pl skip expired patrons

Bug 26311 added patron invalid age in search_for_data_inconsistencies.pl
But this is not relevant for expired patrons, especially in child categories.
Check should skip expired patrons

1) Set a non-expired patron with invalid age
2) Run misc/maintenance/search_for_data_inconsistencies.pl
=> Check you see the patron
3) Edit patron to be expired
4) Run misc/maintenance/search_for_data_inconsistencies.pl
=> Check you do not see the patron

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
[EDIT] If we do not want to test valid age for expired patrons, you should
obviously test expired first. Reversing the order in the test.
Putting it in the search criteria would be nicer but leads to more
complicated code.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 33910: (follow-up) Remove mistaken addition of 'USE raw'
Owen Leonard [Fri, 25 Aug 2023 18:38:11 +0000 (18:38 +0000)]
Bug 33910: (follow-up) Remove mistaken addition of 'USE raw'

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 33910: Improve translation of title tags: Authorities
Owen Leonard [Tue, 6 Jun 2023 15:05:17 +0000 (15:05 +0000)]
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>
10 months agoBug 33913: (QA follow-up) Move variables into strings
Katrin Fischer [Thu, 24 Aug 2023 20:55:37 +0000 (20:55 +0000)]
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>
10 months agoBug 33913: Improve translation of title tags: Circulation, holds, and ILL
Owen Leonard [Tue, 6 Jun 2023 15:13:18 +0000 (15:13 +0000)]
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>
10 months agoBug 34240: Added hint about having to use Koha-to-MARC mappings for Koha link in...
Pascal Uphaus [Thu, 17 Aug 2023 11:58:24 +0000 (11:58 +0000)]
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>
10 months agoBug 33920: Improve translation of title tags: Patrons
Owen Leonard [Tue, 6 Jun 2023 15:18:02 +0000 (15:18 +0000)]
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>
10 months agoBug 34313: Add patron information in pass validation response
Tomas Cohen Arazi [Wed, 19 Jul 2023 19:15:13 +0000 (16:15 -0300)]
Bug 34313: Add patron information in pass validation response

This patch makes the password validation response return the following
patron attributes to the API consumer:

* cardnumber
* userid

This will give hints on what was used to validate in the fallback
bahvior the endpoint has.

To test:
1. Apply the unit tests patch
2. Run:
   $ ktd --shell
  k$ prove t/db_dependent/api/v1/password_validation.t
=> FAIL: The endpoint doesn't return this valuable data
3. Apply this patch
4. Repeat 2
=> SUCESS: Tests pass! We got the cardnumber and the userid!
5. Sign off :-D

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
10 months agoBug 34313: Unit tests
Tomas Cohen Arazi [Wed, 19 Jul 2023 19:14:46 +0000 (16:14 -0300)]
Bug 34313: Unit tests

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>