]> git.evergreen-ils.org Git - Evergreen.git/log
Evergreen.git
4 weeks agoBumping version numbers, adding Upgrade Script and Changelog tags/rel_3_11_5
blake [Mon, 1 Apr 2024 23:52:01 +0000 (18:52 -0500)]
Bumping version numbers, adding Upgrade Script and Changelog

Signed-off-by: blake <blake@mobiusconsortium.org>
4 weeks agofixed upgrade script naming convention
blake [Mon, 1 Apr 2024 23:29:18 +0000 (18:29 -0500)]
fixed upgrade script naming convention

Signed-off-by: blake <blake@mobiusconsortium.org>
4 weeks agobumping Perl version string for 3.11.5
blake [Mon, 1 Apr 2024 23:23:46 +0000 (18:23 -0500)]
bumping Perl version string for 3.11.5

Signed-off-by: blake <blake@mobiusconsortium.org>
4 weeks agoTranslation updates - xtb files
blake [Mon, 1 Apr 2024 23:22:43 +0000 (18:22 -0500)]
Translation updates - xtb files

Signed-off-by: blake <blake@mobiusconsortium.org>
4 weeks agoTranslation updates - po files
blake [Mon, 1 Apr 2024 23:20:31 +0000 (18:20 -0500)]
Translation updates - po files

Signed-off-by: blake <blake@mobiusconsortium.org>
4 weeks agocd build/i18n && make newpot
blake [Mon, 1 Apr 2024 23:08:56 +0000 (18:08 -0500)]
cd build/i18n && make newpot

Signed-off-by: blake <blake@mobiusconsortium.org>
4 weeks agoAdditional entry for release notes
Jane Sandberg [Mon, 1 Apr 2024 20:52:34 +0000 (13:52 -0700)]
Additional entry for release notes

Signed-off-by: Jane Sandberg <js7389@princeton.edu>
4 weeks agoDocs: Release notes for 3.11.5
Andrea Buntz Neiman [Mon, 1 Apr 2024 04:10:14 +0000 (00:10 -0400)]
Docs: Release notes for 3.11.5

Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
4 weeks agoLP1821094: Add an AngularJS module that runs promises in batches
Jane Sandberg [Thu, 30 Jan 2020 19:40:13 +0000 (11:40 -0800)]
LP1821094: Add an AngularJS module that runs promises in batches

This service helps to reduce server load for repetitive OpenSRF
calls by dividing a large array of promises into batches. It
maintains the original order of the array when returning results.

Within each batch, calls are sent simultaneously. The batches
themselves are run sequentially.

This represents a middle ground between running a ton of OpenSRF
calls sequentially -- which leads to a long wait for the user --
and running them simultaneously, which can result in some serious
wait times.

One use case is when you need to get several rows from pcrud,
but the order of results is important and can't be just passed
using orderBy.

To use, you can just replace $q.all with egBatchPromises.all

This also changes the item status refresh code to use
egBatchPromises.all instead of $q.all, in response to some
pcrud-monopolizing noted in
https://bugs.launchpad.net/evergreen/+bug/1821094/comments/14

Release-note: Improves performance of item refresh after batch editing

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Jennifer Weston <jennifer.weston@equinoxoli.org>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
4 weeks agoLP1821094: Improve item status reload performance
Jane Sandberg [Sun, 28 Apr 2019 17:57:30 +0000 (13:57 -0400)]
LP1821094: Improve item status reload performance

To test:
1) Create a file with 500 or more item barcodes.
2) Load your file into Item Status.
3) Select a few rows.
4) Go to Actions > Edit > Items.
5) Make some changes, then Save and Exit.
6) Time how long it takes between clicking
"Save and Exit" and when the grid actually
refreshes.
7) Repeat steps 2-6, but use Actions > Edit
> Call Numbers instead.
8) Apply this commit.
9) Repeat steps 2-7. The time should be much
faster with this commit.
10) Verify that no columns lose their data
when refreshed, especially monograph parts
and in-house use count.
11) Note that there is also a progress bar.

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Kyle Huckins <khuckins@catalyte.io>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
5 weeks agoLP#2040514: Net::SFTP::Foreign is not Net::FTP
Jason Stephenson [Tue, 26 Mar 2024 17:37:02 +0000 (13:37 -0400)]
LP#2040514: Net::SFTP::Foreign is not Net::FTP

Fix the SFTP functions that use Net::SFTP::Foreign so that they
actually work.  The Net::FTP implementations do not work with
Net::SFTP::Foreign.

Add acquisitions release note.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: blake <blake@mobiusconsortium.org>
5 weeks agoLP#2404514: Disable StrictHostKeyChecking in Net::SFTP::Foreign
Jason Stephenson [Tue, 26 Mar 2024 15:37:08 +0000 (11:37 -0400)]
LP#2404514: Disable StrictHostKeyChecking in Net::SFTP::Foreign

Set the StrictHostKeyChecking option to no when using
Net::SFTP::Foreign.  Doing so allows the connection to proceed if
we've never connected to the server before or if the host key changes.

Note: This change has implications for security.  It should be kept as
a stand-alone commit in case a site decides to remove it.

Signed-off-by: Jason Stephenson <jason@sigio.com>
5 weeks agoLP#2040514: Followup repairs
Jason Boyer [Thu, 2 Nov 2023 12:06:55 +0000 (08:06 -0400)]
LP#2040514: Followup repairs

Fix syntax erorrs.

Make SFTP and SSH2 get along together.

Signed-off-by: Jason Boyer <JBoyer@equinoxOLI.org>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Jason Stephenson <jason@sigio.com>
5 weeks agoLP#2040514: Re-implement Acq EDI SFTP.
Chris Sharp [Mon, 30 Jan 2023 21:38:54 +0000 (16:38 -0500)]
LP#2040514: Re-implement Acq EDI SFTP.

Change from using Net::SSH2 for SFTP in favor of Net::SFTP::Foreign.

Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Jason Stephenson <jason@sigio.com>
5 weeks agoLP#2057948: Add Idempotency-Key to prevent duplicate stripe requests
Ken Cox [Mon, 18 Mar 2024 18:15:59 +0000 (14:15 -0400)]
LP#2057948: Add Idempotency-Key to prevent duplicate stripe requests

* Create key from sorted list of transaction IDs passed through md5_hex.
* Do not include xact param for now, since I am not sure what it is;
  xact_misc is the list of transaction IDs selected in the payment form.
* Pass header through -ua_args option when constructing the Stripe obj,
  because the per-request method is not published yet to CPAN.

Tested with manual code on Ubuntu 22 LTS and Business::Stripe 0.07.

Release-note: Adds idempotency to Stripe to prevent duplicate payments

Signed-off-by: Ken Cox <kenstir@gmail.com>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
5 weeks agoLP2047592 OPAC - My Lists - Button Order
Terran McCanna [Fri, 22 Mar 2024 20:53:16 +0000 (16:53 -0400)]
LP2047592 OPAC - My Lists - Button Order

LP2047592 OPAC - My Lists - Button Order

Moves the View in Catalog button (when visible) to the end of row
of buttons so that hiding/sharing a list doesn't visually disrupt
the page as much.

Release-note: Changes button order in OPAC My Lists

Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Stephanie Leary <stephanie.leary@equinoxoli.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
5 weeks agoLP2043045 - Stop Log Noise - QueryParser.pm pullup()
Josh Stompro [Wed, 8 Nov 2023 19:18:02 +0000 (13:18 -0600)]
LP2043045 - Stop Log Noise - QueryParser.pm pullup()

Silence some "Use of uninitialized value" warnings the pop up with
every catalog search.

Look for these log entries before the fix after performing some catalog searches.

Use of uninitialized value in string eq at
/usr/local/share/perl/5.36.0/OpenILS/Application/Storage/QueryParser.pm line 1626.

Use of uninitialized value in addition (+) at
/usr/local/share/perl/5.36.0/OpenILS/Application/Storage/QueryParser.pm line 1661

After the fix is applied, no more should be generated.

Release-note: Silences some "Use of uninitialized value" log entries from catalog search

Signed-off-by: Josh Stompro <stomproj@larl.org>
Signed-off-by: Jason Boyer <JBoyer@equinoxOLI.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
5 weeks agoLP#1929596: Adds help popover text next to 'Convert change to patron
Gina Monti [Sat, 13 Jan 2024 14:20:38 +0000 (09:20 -0500)]
LP#1929596: Adds help popover text next to 'Convert change to patron
credit'

Search for a patron
Go to Bills
Note the popover text next to 'Convert change to patron credit' modifier

Release-note: Adds help button for 'Convert change to patron credit' on patron bills

Signed-off-by: Gina Monti <gmonti@biblio.org>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
<eg-help-popover help-text="[% l('Applies any remaining amount after payment to the patron account for future use.') %]">#

Signed-off-by: Jane Sandberg <js7389@princeton.edu>
5 weeks agoLP#2047158 Annotate Payment Popup Box Skipped When Using Keyboard
Steven Mayo [Tue, 23 Jan 2024 16:48:45 +0000 (11:48 -0500)]
LP#2047158 Annotate Payment Popup Box Skipped When Using Keyboard
Navigation

Changed AngularJS text input modal to submit on keydown instead of
keyup.
This stops the modal from immediately closing after being opened by
the enter key.

Release-note: Fixes annotate payment when using keyboard navigation

Signed-off-by: Steven Mayo <smayo@georgialibraries.org>
Signed-off-by: Eva Cerniňáková <cernin@jabok.cz>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
5 weeks agoLP1930099: correct file paths in Windows doc building instructions
Jane Sandberg [Wed, 24 Jan 2024 22:07:00 +0000 (14:07 -0800)]
LP1930099: correct file paths in Windows doc building instructions

Signed-off-by: Jane Sandberg <js7389@princeton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxOLI.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
5 weeks agoLP1930099: Make generate_docs.pl Windows-compatible
blake [Tue, 23 Jan 2024 17:45:45 +0000 (11:45 -0600)]
LP1930099: Make generate_docs.pl Windows-compatible

Tweak to the Windows instruction, using "perl" instead of "run"

Signed-off-by: blake <blake@mobiusconsortium.org>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxOLI.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
5 weeks agoLP1930099: Make generate_docs.pl Windows-compatible
Jane Sandberg [Thu, 4 Jan 2024 21:58:16 +0000 (13:58 -0800)]
LP1930099: Make generate_docs.pl Windows-compatible

* Use `npx` rather than relying on specific paths to
binaries within node_modules.
* Use the cross-platform $ENV and File::Copy provided
by Perl, rather than using the platform-specific
command-line syntax.

To test on Windows:
1) Use the instructions provided in the comment at
the top of generate_docs.pl.
2) Make sure that the locally generated documentation
displays correctly in your browser.

To test for regressions on Linux or MacOs:
1) `cd /path/to/Evergreen/docs && perl generate_docs.pl`
2) Make sure that the locally generated documentation
at /path/to/Evergreen/docs/output/index.html displays
correctly in your browser.

Release-note: Allow Windows users to generate the Evergreen manual locally.

Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxOLI.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
5 weeks agoLP1525394 moving toward fixing SIP hold titles
Jason Boyer [Tue, 24 Sep 2019 11:03:56 +0000 (07:03 -0400)]
LP1525394 moving toward fixing SIP hold titles

Signed-off-by: Jason Boyer <JBoyer@eoli.info>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
5 weeks agoLP1525394: Return Titles for All Hold Types in SIP
Jason Boyer [Mon, 9 Sep 2019 19:29:47 +0000 (15:29 -0400)]
LP1525394: Return Titles for All Hold Types in SIP

The SIP Patron Status Response message can include hold
titles if requested by the SIP client. This commit
adds Issuance holds to the previous commit addressing
part holds, and should finally represent full coverage
for our hold types.

Signed-off-by: Jason Boyer <jboyer@equinoxinitiative.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
5 weeks agoLP1525394 SIP patron part level holds respond blank
blake [Fri, 11 Dec 2015 21:28:17 +0000 (15:28 -0600)]
LP1525394 SIP patron part level holds respond blank

Added code to flesh part level hold information in SIP/Patron.pm
In order to test this, you will need to identify a patron who has
a part level hold. Query SIP with a 63 message like:

6300120151211    104201     Y    AOhidden|AApatronbarcode|AC|AY1AZF08D

and the server should respond with the title in the |CD field for that
part level hold.

Signed-off-by: blake <blake@mobiusconsortium.org>
Signed-off-by: Jason Boyer <jboyer@equinoxinitiative.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 weeks agoDocs: follow up adding top level nav to Angular Staff Cat docs
Andrea Buntz Neiman [Fri, 22 Mar 2024 13:41:24 +0000 (09:41 -0400)]
Docs: follow up adding top level nav to Angular Staff Cat docs

Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
6 weeks agoLP#2052567: allow Reports to load when BitWarden plugin is active
Galen Charlton [Wed, 7 Feb 2024 14:02:29 +0000 (09:02 -0500)]
LP#2052567: allow Reports to load when BitWarden plugin is active

This patches works around an issue where the legacy Reports interface
can fail to load if the BitWarden plugin is installed on the
user's browser.

To test
-------
[1] Set up your browser with the BitWarden plugin. It looks like it's
    necessary to create an account on the BitWarden service or on
    a self-hosted instance in order to exercise the bug.
[2] Attempt to load the Reports interface. It should fail to load.
[3] Apply the patch and repeat step 2. This time, the interface should
    load and function normally.

Release-note: Fixes issue where Reports interface would not load if the BitWarden browser plugin is installed

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Brett French <bfrench@cwmars.org>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
6 weeks agoLP#2028095: stamp DB update
Galen Charlton [Wed, 20 Mar 2024 13:27:24 +0000 (09:27 -0400)]
LP#2028095: stamp DB update

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
6 weeks agoLP#2028095: (follow-up) update description only if it hasn't been customized
Galen Charlton [Wed, 20 Mar 2024 13:26:12 +0000 (09:26 -0400)]
LP#2028095: (follow-up) update description only if it hasn't been customized

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
6 weeks agoLP#2028095: Fix typo in Library Setting Description for acq.default_owning_lib_for_au...
Steven Mayo [Thu, 30 Nov 2023 16:30:49 +0000 (11:30 -0500)]
LP#2028095: Fix typo in Library Setting Description for acq.default_owning_lib_for_auto_lids_strategy

Updated the description for acq.default_owning_lib_for_auto_lids_strategy to the text suggested in the ticket.

Release-note: Improves description of the "How to set default owning library for auto-created line item items" Library Setting

Steps to test:
[1] Run XXXX.data.default_owning_lib_for_auto_lids_strategy_typo_fix.sql or install the seed data anew
[2] Go to Administration -> Local Admin -> Library Settings Editor
[3] Search for acq.default_owning_lib_for_auto_lids_strategy
[4] Read description

Signed-off-by: Steven Mayo <smayo@georgialibraries.org>
Signed-off-by: Christine Morgan <cmorgan@noblenet.org>
Signed-off-by: Susan Morrison <smorrison@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
6 weeks agoDocs: link fixes for Selection List docs
Andrea Buntz Neiman [Tue, 19 Mar 2024 20:23:09 +0000 (16:23 -0400)]
Docs: link fixes for Selection List docs

Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
6 weeks agoDocs: Angular staff catalog documentation
Spencer Pennington [Thu, 7 Mar 2024 03:05:22 +0000 (22:05 -0500)]
Docs: Angular staff catalog documentation

Release-note: Adds documentation for the Angular staff catalog, based on documentation produced by Indiana Evergreen.

Signed-off-by: Spencer Pennington <spennington@una.edu>
Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
6 weeks agoLP#2016188: avoid EDIWriter error when PO ordering agency has no mailing address
Jeff Davis [Thu, 13 Apr 2023 22:11:24 +0000 (15:11 -0700)]
LP#2016188: avoid EDIWriter error when PO ordering agency has no mailing address

Release-note: Fixes EDI error when PO ordering agency has no mailing address

Signed-off-by: Jeff Davis <jeff.davis@bc.libraries.coop>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
6 weeks agoDocs: LP2053050 Updates to strict barcode docs
Gina Monti [Tue, 13 Feb 2024 16:59:34 +0000 (11:59 -0500)]
Docs: LP2053050 Updates to strict barcode docs

Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
Signed-off-by: Gina Monti <gmonti@biblio.org>
6 weeks agoLP2047588 Correct placement of Save Notes button
Terran McCanna [Wed, 27 Dec 2023 20:27:25 +0000 (15:27 -0500)]
LP2047588 Correct placement of Save Notes button

Moves Save Notes button in OPAC > My Lists > Edit Notes one
column to the right so that it appears in the correct column
when editing notes.

Release-note: Fixes placement of Save Notes button in public catalog My Lists page

Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Gina Monti <gmonti@biblio.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
6 weeks agoLP2051879 Display Org Unit ID in Org Configuration
Terran McCanna [Mon, 18 Mar 2024 17:20:26 +0000 (13:20 -0400)]
LP2051879 Display Org Unit ID in Org Configuration

This makes the numeric org unit ID visible in the Organizational
Unit Configuration Interface.

Release-note: Displays Org Unit ID in Org Config interface.

Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
6 weeks agoLP#2051944: Improve FMREC primary key column test
Mike Rylander [Fri, 2 Feb 2024 15:45:46 +0000 (10:45 -0500)]
LP#2051944: Improve FMREC primary key column test

FMRecordEditorComponent was depending on the @reporter:datatype to
identify the primary key (identity) field for an FM class.  Instead, it
should check the field name against the @oils_persist:primary attribute
of the <fields> element, which gets around the special case of org unit
id having a declared datatype of "org_unit", and future-proofs against
other possible edge cases.

This commit does that.

To test
-------
[1] Update the Organizational Units page's form to include "id" as
    a visible field, a la bug 2051879.
[2] Note that the form display a selector.
[3] Apply the patch and recompile the Angular staff client.
[4] This time, the OU ID should display as a read-only number.

Release-notes: Makes it possible to display the org unit ID as a number on Angular record editor forms for editing org units

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
6 weeks agoLP#1329872 - marc_export exit when required IDs are missing
Josh Stompro [Thu, 3 Aug 2023 19:58:52 +0000 (14:58 -0500)]
LP#1329872 - marc_export exit when required IDs are missing

The marc_export script would handle being passed invalid or empty
IDs as if you had the --all flag selected.  So if you accidentally
generated a file with a list of BIB id numbers that was empty and
passed it to the script, you would end up with an export of all bibs
in the system instead of an empty export.

Testing Notes:

=== Before fix ===

Create an empty file, or a file that just contains "id".

$ touch input1
$ echo "id" > input2

All these commands should result in a full export of all bibs.

$ cat ./input1 | marc_export
$ cat ./input2 | marc_export
$ echo "id" | marc_export
$ cat ./input1 | marc_export --pipe

=== After fix ===

Try the same commands as above, and the marc_export
script should error out each time.

Signed-off-by: Josh Stompro <stomproj@larl.org>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
6 weeks agoLP2047704 Patrons with Negative Balances - Grid Columns
Terran McCanna [Fri, 29 Dec 2023 19:58:14 +0000 (14:58 -0500)]
LP2047704 Patrons with Negative Balances - Grid Columns

This adjusts the negative balances grid so that it shows the most
useful columns by default and upon reset. (Before this change,
resetting the columns showed ALL available columns.)

It also adds local column sortability.

Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 weeks agoLP1803788 Gear icon for AngularJS grid settings menu
Stephanie Leary [Mon, 4 Mar 2024 20:40:15 +0000 (20:40 +0000)]
LP1803788 Gear icon for AngularJS grid settings menu

Changes the icon for the grid settings dropdown menu in AngularJS
screens from the default Bootstrap downward caret to the gear icon, to
match the Angular grid buttons.

Release-note: Ensures that both AngularJS and Angular grids use a gear icon for the grid settings menu.

Signed-off-by: Stephanie Leary <stephanie.leary@equinoxoli.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
6 weeks agoLP#2039725: handle patrons without cards in Patrons with Negative Balances UI
Jeff Davis [Wed, 18 Oct 2023 20:58:40 +0000 (13:58 -0700)]
LP#2039725: handle patrons without cards in Patrons with Negative Balances UI

Signed-off-by: Jeff Davis <jeff.davis@bc.libraries.coop>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 weeks agoLP#2039725: users with negative balances should exclude deleted users
Jeff Davis [Wed, 18 Oct 2023 20:57:00 +0000 (13:57 -0700)]
LP#2039725: users with negative balances should exclude deleted users

Signed-off-by: Jeff Davis <jeff.davis@bc.libraries.coop>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 weeks agoLP#2056204: support "Form of item" in MARC editor for electronic resources
Galen Charlton [Tue, 5 Mar 2024 20:27:13 +0000 (15:27 -0500)]
LP#2056204: support "Form of item" in MARC editor for electronic resources

This patch adds mappings to the Angular and AngularJS MARC editors
so that the "Form" (form of item) fixed field positions in the 006
and 008 fields are recognized and (in the case of the 008) editable
via the "Form" input when the record type is "m" (electronic resources/computer files).

Release-note: Fixes problem where "Form" value could not be saved in MARC editor for electronic resources.

To test
-------
[1] Open a bib record of type 'm' (electronic resource) in the Angular
    MARC editor.
[2] Change the form value with the input labeled "Form".
[3] Note that the corresponding position in the 008 is not updated.
[4] Apply the patch and repeat steps 1-3. This type, the change
    should stick.
[5] Bonus: do the same testing in the AngularJS MARC editor.

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
6 weeks agoLP#1869971: (follow-up) also apply HTML::Defang in the OPAC templates
Galen Charlton [Mon, 18 Mar 2024 15:09:17 +0000 (11:09 -0400)]
LP#1869971: (follow-up) also apply HTML::Defang in the OPAC templates

This patch ensures that HTML::Defang (via the defang_string() TT helper)
is applied to the value of the OPAC custom CSS library setting. This
provides additional protection in cases where questionable values
predate these patches or if another means (such as direct database entry)
is used to set the value of the setting.

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
6 weeks agolp1869971 use HTML::Defang to clean incoming via org unit setting
Rogan Hamby [Thu, 3 Dec 2020 13:55:35 +0000 (08:55 -0500)]
lp1869971 use HTML::Defang to clean incoming via org unit setting

Release-note: Remove potentially harmful javascript from the opac.patron.custom_css library setting when it is saved and before it is shown to a user.

Signed-off-by: Jane Sandberg <js7389@princeton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
6 weeks agoDocs: fixes links on Previous Docs page
Andrea Buntz Neiman [Fri, 15 Mar 2024 20:42:24 +0000 (16:42 -0400)]
Docs: fixes links on Previous Docs page

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
7 weeks agoLP#2034617: improve how AngularJS handles logout BroadcastChannel messages
Galen Charlton [Wed, 6 Sep 2023 20:37:43 +0000 (16:37 -0400)]
LP#2034617: improve how AngularJS handles logout BroadcastChannel messages

This patch reduces the risk that if there are multiple tabs of the
AngularJS staff client open, that logging out from one of them will
cause a storm of logout messages on the eg.auth BroadcastChannel.

If the open staff client tabs are all AngularJS, the result of that
storm can freeze the user's browser. However, if one or more of
the tabs are running the Angular client, the Angular tabs can
_also_ make repeated open-ils.auth.session.delete calls at a high
rate of speed, thereby degrading the availability of the
open-ils.auth service.

Testing involves opening up 4 or 5 tabs running the staff client, with
at least three or four of them running the AngularJS client. It
is strongly recommended that testing of this patch be done only on
personal, isolated test Evergreen systems.

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Jason Boyer <JBoyer@equinoxOLI.org>
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
7 weeks agoLP2051599 Fix Cash Reports User Payments Date Parsing
Bill Erickson [Mon, 11 Mar 2024 16:43:27 +0000 (12:43 -0400)]
LP2051599 Fix Cash Reports User Payments Date Parsing

Apply the same date parsing fix for User Payments in the Cash Reports
interface as the previous commit, which addressed Desk Payments.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
7 weeks agoLP#2051599: fix parsing of start and end dates by Cash Reports
Galen Charlton [Tue, 30 Jan 2024 15:19:22 +0000 (10:19 -0500)]
LP#2051599: fix parsing of start and end dates by Cash Reports

This patch fixes a bug where if you open the Cash Reports at a
time of day where the date in the local time zone is different
from the date in UTC and do not interact with the date selectors,
the report will not display payments made during the current day.

The problem was due to the use of Date.toISOString() when
attempting to extract just the date component; since Date.toISOString()
forces the timestamp to UTC. The effect is that if you (say) open
the Cash Reports page in North America sufficiently late in the date,
the date selectors will display your current date, but the query
to fetch payment information will (silently) supply the following day.

To test
-------
[1] Make some patron bill payments.
[2] Open the Cash Reports at a time of day when an UTC clock would
    report a different date from your local date. Observe that no
    payments are listed or that payments from the previous day are
    listed.
[3] Apply the patch and repeat step 2. This time, opening the Cash
    Reports page should show the payments for the current day.

Release-note: Fix bug that could cause the Cash Reports page to display payments for the wrong day.

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
7 weeks agoLP2046974 Hide "more" if facet has 5 or fewer links
Stephanie Leary [Tue, 5 Mar 2024 16:54:45 +0000 (16:54 +0000)]
LP2046974 Hide "more" if facet has 5 or fewer links

In the staff catalog search results, the "more"/"less" links are now
hidden for facets with 5 or fewer links available.

Release-note: Show the More/Less toggle on facet display in the staff catalog only when a facet has more than five entries.

Signed-off-by: Stephanie Leary <stephanie.leary@equinoxoli.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
7 weeks agoLP#1779743: add privilege expiration date to Group Member Details
Galen Charlton [Tue, 23 Jan 2024 16:57:53 +0000 (11:57 -0500)]
LP#1779743: add privilege expiration date to Group Member Details

This patch adds the privilege expiration date to the list
of available columns in the AngularJS group member details
page. No equivalent change is needed to the experimental Angular
circ interface, as that column is already available there.

To test
-------
[1] Apply the patch.
[2] Navigate to a patron in the Evergreen staff interface
    and view the Group Member Details page.
[3] Verify that the privilege expiration date is now available
    in the column selector.

Release-note: Add privilege expiration date column to Group Member Details table

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Jason Boyer <JBoyer@equinoxOLI.org>
7 weeks agoLP2056480: docs: only index the latest version of the docs for lunr
Jane Sandberg [Mon, 11 Mar 2024 03:20:42 +0000 (20:20 -0700)]
LP2056480: docs: only index the latest version of the docs for lunr

This addresses a regression caused by bug 2056480.

To test:
* Build the docs using
  cd docs
  perl generate_docs.pl --base-url=http://example.com
* Open docs/output/index.html in your browser
* Type a search into the search box
* Note that you only get results for latest, rather than getting duplicate
results from multiple versions.
* Note that the file docs/output/search-index.js is now 3.3 MB, rather than
5.53 MB.

Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
7 weeks agoLP2047589 OPAC - My Lists - Change wording of submit button
Terran McCanna [Wed, 27 Dec 2023 21:38:59 +0000 (16:38 -0500)]
LP2047589 OPAC - My Lists - Change wording of submit button

Changes wording from "Create List" to "Save New List" to differentiate
it from the other "Create New List" button on the page.

Release-note: Clarify button text in public catalog New List interface.

Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
7 weeks agoLP #1980138: relabel Account Information and Preferences in the OPAC
Gina Monti [Thu, 7 Dec 2023 14:15:35 +0000 (09:15 -0500)]
LP #1980138: relabel Account Information and Preferences in the OPAC

Release-note: Changes "Account Information and Preferences" in areas of the OPAC to "Personal Information and Preferences"

Signed-off-by: Gina Monti <gmonti@biblio.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Josh Stompro <stomproj@larl.org>
8 weeks agoLP#2036328: (follow-up) clean up a couple things
Galen Charlton [Wed, 21 Feb 2024 14:50:09 +0000 (09:50 -0500)]
LP#2036328: (follow-up) clean up a couple things

* Update generate_docs.pl help text to note the new
  default version
* Clean up more aggressively before installing Antora; I
  discovered that if you switch from 2.3 to 3.1.7 without
  doing so, the older version of the CLI still gets used
  (and fails because 2.3 predates Antora's extension mechanism)

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
8 weeks agoLP#2036328: update Antora to 3.1
Jane Sandberg [Thu, 1 Feb 2024 20:02:28 +0000 (12:02 -0800)]
LP#2036328: update Antora to 3.1

This patch updates the version of Antora used to build the documentation
to a supported release.

* Uses the new @antora/lunr-extension, rather than the antora 2 antora-lunr
* Fixes a few issues that are no longer supported in the new version of
  asciidoctor
* Installs antora via the antora npm package, rather than installing
  @antora/cli and @antora/site-generator separately

Release-note: Update the version of Antora used to build the documentation

Co-authored-by: Jennifer Pringle <jennifer.pringle@bc.libraries.coop>
Co-authored-by: Robin Fitch <rfitch@biblio.org>
Co-authored-by: Andrea Buntz Neiman <abneiman@equinoxOLI.org>
Co-authored-by: Debbie Luchenbill <debbie@mobiusconsortium.org>
Co-authored-by: Lena Hernandez <lena.hernandez@equinoxoli.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
2 months agoLP#1828463: (follow-up) tweak focus outlines for buttons that are dropdown items
Galen Charlton [Wed, 28 Feb 2024 12:35:53 +0000 (07:35 -0500)]
LP#1828463: (follow-up) tweak focus outlines for buttons that are dropdown items

This patch makes the focus outline for buttons that are dropdown items
(e.g., Retrieve Last Bib Record in the Cataloging menu) match the
new style. This avoids the opacity of the focus outline from changing
when navigating between items in the nav menus that can contain
a mixture of anchors and buttons.

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
2 months agoLP1828463 More obvious and stylish focus outlines
Stephanie Leary [Wed, 20 Dec 2023 23:59:38 +0000 (23:59 +0000)]
LP1828463 More obvious and stylish focus outlines

Bumps the opacity of focus outlines from 25% to 75% and adds a more
stylish outline color to the staff navigation menu.

Release-note: Increase the visibility of focus outlines in the Angular staff client

Signed-off-by: Stephanie Leary <stephanie.leary@equinoxoli.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
2 months agoLP2049774 - Acq Admin Doc updates - Fiscal Close
Josh Stompro [Fri, 26 Jan 2024 21:14:54 +0000 (15:14 -0600)]
LP2049774 - Acq Admin Doc updates - Fiscal Close

A few adjustments to the Fiscal Close / fund rollover docs.
Along with a few typos found in the document.

Release-note: Improves documentation of Fiscal Propagation and Rollover

Signed-off-by: Josh Stompro <stomproj@larl.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 months agoLP1909585: stamp upgrade script
Jane Sandberg [Tue, 27 Feb 2024 13:41:13 +0000 (05:41 -0800)]
LP1909585: stamp upgrade script

2 months agoLP1909585 Use full title on book list csv download
Terran McCanna [Tue, 24 Oct 2023 21:26:52 +0000 (17:26 -0400)]
LP1909585 Use full title on book list csv download

Adds subfield n and subfield p to CSV download for lists in the OPAC
in order to match the screen display.

To test:
1 - Create a List in the OPAC
2 - Add a record to the list that has subfields n and/or p (Concerto record id 224 has both)
3 - Download the CSV for the list to confirm that the full title appears

Release-note: Adds 245$n and 245$p to the title field in public catalog list CSV download, to better distinguish between multiple titles in the same series.

Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
2 months agoDocs: correction to 3.11.4 release notes
Andrea Buntz Neiman [Mon, 26 Feb 2024 18:18:29 +0000 (13:18 -0500)]
Docs: correction to 3.11.4 release notes

Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
2 months agoForward-port 3.11.4 upgrade script
Jane Sandberg [Mon, 26 Feb 2024 17:53:40 +0000 (11:53 -0600)]
Forward-port 3.11.4 upgrade script

Signed-off-by: Jane Sandberg <js7389@princeton.edu>
2 months agoDocs: don't include XUL client instructions in server upgrade docs
Jane Sandberg [Fri, 23 Feb 2024 23:03:56 +0000 (15:03 -0800)]
Docs: don't include XUL client instructions in server upgrade docs

Signed-off-by: Jane Sandberg <js7389@princeton.edu>
2 months agoTranslation updates - newpot
Jane Sandberg [Fri, 23 Feb 2024 18:00:34 +0000 (12:00 -0600)]
Translation updates - newpot

Signed-off-by: Jane Sandberg <js7389@princeton.edu>
2 months agoDocs: Release Notes for 3.11.4
Andrea Buntz Neiman [Fri, 23 Feb 2024 16:25:17 +0000 (11:25 -0500)]
Docs: Release Notes for 3.11.4

Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
2 months agoDocs: removing dead link from acq nav
Andrea Buntz Neiman [Wed, 21 Feb 2024 14:43:20 +0000 (09:43 -0500)]
Docs: removing dead link from acq nav

Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
2 months agoDocs: LP2053047 autosuggest update
Gina Monti [Tue, 13 Feb 2024 16:42:30 +0000 (11:42 -0500)]
Docs: LP2053047 autosuggest update

Updating page with some info.

Signed-off-by: Gina Monti <gmonti@biblio.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
2 months agoLP2052960 Remove button markup from record actions
Stephanie Leary [Mon, 12 Feb 2024 19:03:32 +0000 (19:03 +0000)]
LP2052960 Remove button markup from record actions

Removes errant <button> elements that were nested inside the Patron View
and Place Hold links (in the bib record actions row of buttons below the
summary box). Buttons inside links are unnecessary and created an extra
tab stop when navigating the page via keyboard. Classes have been moved
to the <a> element to retain styling.

Release-note: Remove extra tab stops when navigating bib record actions in staff client using keyboard

Signed-off-by: Stephanie Leary <stephanie.leary@equinoxoli.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
2 months agoLP#2054128: OPAC autosuggest now gets closed when input loses focus
Galen Charlton [Sat, 17 Feb 2024 16:13:11 +0000 (11:13 -0500)]
LP#2054128: OPAC autosuggest now gets closed when input loses focus

This patch ensure that the autosuggest list goes away when
the basic search box in the OPAC loses focus. Otherwise, it
can obscure controls that the user is trying to interact with.

To test
-------
[1] Enter a search term in the OPAC and observe that the
    dropdown of suggestions appears.
[2] Tab or click away from the input. Note that the dropdown
    remains open.
[3] Apply the patch and repeat steps 2 and 3. This time, the
    dropdown should get closed.

Release-note: Close autosuggest dropdown in the public catalog when it loses focus.

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
2 months agoLP#2053035: return ability to submit OPAC basic search via enter
Galen Charlton [Tue, 13 Feb 2024 16:52:50 +0000 (11:52 -0500)]
LP#2053035: return ability to submit OPAC basic search via enter

This patch fixes an issue with the current autosuggest implementation
that prevented submitting the form while focus is on the main
text input.

To test
-------
[1] Apply patch. Do the following tests using both keyboard
    and mouse navigation.
[2] Verify that submitting a search without selecting any
    of the suggested terms works.
[3] Verify that submitting a search after selecting one
    of the suggestions works.
[4] Verify that submitting the search after using the keyboard
    to navigate the selections, but ultimately not choosing
    any of them, works.
[5] Run automated tests, e.g., by running

    npx jasmine Open-ILS/web/opac/tests/autosuggest.spec.module.js

Release-note: Restore ability to submit basic OPAC search by hitting enter in search input.

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
Signed-off-by: Steven Mayo <smayo@georgialibraries.org>
Signed-off-by: blake <blake@mobiusconsortium.org>
2 months agoLP#1901932: Do not add unused org settings to enhanced dataset.
Chris Sharp [Sun, 12 Nov 2023 17:19:24 +0000 (12:19 -0500)]
LP#1901932: Do not add unused org settings to enhanced dataset.

Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
Signed-off-by: Steven Mayo <smayo@georgialibraries.org>
2 months agoLP#1901932 Enhancing the enhanced concerto dataset
blake [Wed, 17 May 2023 15:48:11 +0000 (10:48 -0500)]
LP#1901932 Enhancing the enhanced concerto dataset

- A date carry forward feature that carry's the various date columns
forward based upon the difference between today's date and the create_date
for asset.call_number in the dataset. Which is the default. This can be
skipped with with: psql -v skip_date_carry='1' -f load_all.sql

- Expansion of special cases for certain tables:
config.metabib_class, config.org_unit_setting_type, config.global_flag.

- Dropping these tables from consideration:
acq.acq_lineitem_history, acq.acq_purchase_order_history, permission.perm_list

Signed-off-by: blake <blake@mobiusconsortium.org>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Adding seq

Signed-off-by: blake <blake@mobiusconsortium.org>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
Signed-off-by: Steven Mayo <smayo@georgialibraries.org>
2 months agoLP#1939162 Followup: 2 Cookie 4 Auth
Jason Boyer [Wed, 31 Jan 2024 18:23:03 +0000 (13:23 -0500)]
LP#1939162 Followup: 2 Cookie 4 Auth

AccessHandler.pm did not look for the newer eg.auth.token session cookie
so it was not possible to clear the added content cache unless the old ses
cookie was somehow set first. Now AccessHandler.pm will look for both cookie
names.

Signed-off-by: Jason Boyer <JBoyer@equinoxOLI.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 months agoLP#1939162: add option to clear added content cache to Angular staff catalog
Galen Charlton [Wed, 31 Jan 2024 16:04:11 +0000 (11:04 -0500)]
LP#1939162: add option to clear added content cache to Angular staff catalog

This patch restores the ability to clear the added content cache
to the staff catalog by adding a "Clear Added Content Cache" item
to the Other Actions menu on the Angular staff catalog record page.

As with the former embedded staff catalog, clearing the added content
cache does not result in the staff catalog attempting to automaticaly
reload the cover image; the user will still need to reload the page
to see if the change has taken effect. Improving that behavior would
be for a separate bug.

This patch also includes a fix to tag an unrelated string for
localization.

To test
-------
[1] Ensure that at an added content handler is active.
[2] Install the patch.
[3] Navigate to a bib record in the Angular staff catalog.
[4] Observe that there is a Clear Added Content Cache item
    in the Other Actions menu.
[5] Click it and note that a toast stating that the cache was
    cleared is displayed.
[6] (extra credit) Test while making changes to the record (say
    to the ISBN) that would result in a different cover image
    being provided by the added content source.
[7] (extra credit) Update opensrf.xml to remove the added content
    handler, restart services and Apache, then try the cache-clearing
    action. This time, toast should be displayed stating that the
    action failed.

Release-note: Adds a "Clear Added Content Cache" item to the Other Actions menu in the staff catalog record page.

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Jason Boyer <JBoyer@equinoxOLI.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 months agoLP#2040637: (follow-up) adjust formatting of some comments
Galen Charlton [Mon, 19 Feb 2024 14:19:12 +0000 (09:19 -0500)]
LP#2040637: (follow-up) adjust formatting of some comments

Side-step the current lint rules not accepting comments indented like
this:

    do_something(); // comment on the thing...
                    // and continue the comment like this

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 months agoLP#2040637: (follow-up) fix ng lint whitespace issues
Galen Charlton [Mon, 19 Feb 2024 14:06:57 +0000 (09:06 -0500)]
LP#2040637: (follow-up) fix ng lint whitespace issues

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 months agoLP2040637 Reverse fund dropdown regression
Tiffany Little [Wed, 13 Dec 2023 21:30:21 +0000 (16:30 -0500)]
LP2040637 Reverse fund dropdown regression

Returns Dojo behavior of compiling fund view based on perms rather than work OU.

Release-note: The fund dropdowns for line items and direct charges on purchase orders now display funds that user has permission to use.

Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Elizabeth Davis <elizabeth.davis@sparkpa.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 months agoLP#1890822: (follow-up) update comments and documentation
Galen Charlton [Wed, 14 Feb 2024 14:28:03 +0000 (09:28 -0500)]
LP#1890822: (follow-up) update comments and documentation

This patch adds a comment to clarify that the database transaction
isolation level must be "read committed" (as is the default for Pg)
in order for penalties created in one transaction to be seen by another
one. It also extends the documentation to cover behavior for SIP2
checkouts and renewals.

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 months agoLP1890822: move penalty check back to run_indb_circ_test
Jane Sandberg [Wed, 14 Feb 2024 00:05:12 +0000 (16:05 -0800)]
LP1890822: move penalty check back to run_indb_circ_test

This ensures that it is still called for SIP2 checkouts
and renewals.

Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 months agoLP1890822: incorporate feedback from review
Jane Sandberg [Tue, 13 Feb 2024 21:44:37 +0000 (13:44 -0800)]
LP1890822: incorporate feedback from review

* Put the penalty calculation in its own transaction, so
  applicable penalties remain on the patron account, even
  if the circulation is canceled.
* Don't hard-code a list of threshold-based penalties in
  the penalty calculation call.  calculate_penalties only
  concerns itself with threshold-based penalties anyway,
  so there was no need to enumerate them (and I missed
  two anyway).
* Update a comment to better match the new state of affairs.

Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 months agoLP1890822: Don't checkout in cases where a patron is eligible for a penalty, but...
Jane Sandberg [Tue, 2 Jan 2024 03:33:58 +0000 (19:33 -0800)]
LP1890822: Don't checkout in cases where a patron is eligible for a penalty, but hasn't received it yet

To test:
1. In Local Admin > Group Penalty Threshold, set the
   PATRON_EXCEEDS_OVERDUE_COUNT threshold to 1.
2. Find a patron who has more than 1 overdue.
3. Try to check another item out to the patron.
4. Confirm that you get an alert PATRON_EXCEEDS_OVERDUE_COUNT
   and the item does not check out.

Note that this adds a penalty check to the checkout logic, rather than
to the patron retrieval logic as suggested in
https://bugs.launchpad.net/evergreen/+bug/1983621, since this will also
address SIP checkouts.

Also adds characterization tests for relevant stored procedures.

Release-note: Fix bug that allowed one checkout after a patron had reached a group penalty threshold, for example PATRON_EXCEEDS_OVERDUE_COUNT or PATRON_EXCEEDS_CHECKOUT_COUNT.

Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
Sponsored-by: PaILS
Signed-off-by: Elizabeth Davis <elizabeth.davis@sparkpa.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 months agoLP#2043508 fix misconfigured delete dialogs and add dialogs where they were missing.
Llewellyn Marshall [Fri, 9 Feb 2024 21:36:10 +0000 (16:36 -0500)]
LP#2043508 fix misconfigured delete dialogs and add dialogs where they were missing.

Signed-off-by: Llewellyn Marshall <llewellyn.marshall@ncdcr.gov>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Susan Morrison <smorrison@georgialibraries.org>
Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
2 months agoLP#2019207: stamp DB update
Galen Charlton [Mon, 12 Feb 2024 17:18:01 +0000 (12:18 -0500)]
LP#2019207: stamp DB update

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 months agoLP#2019207: (follow-up) fix lint
Galen Charlton [Mon, 12 Feb 2024 17:09:17 +0000 (12:09 -0500)]
LP#2019207: (follow-up) fix lint

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 months agoLP#2019207 Patron View Discovery Layer URL
Dan Briem [Sat, 21 Oct 2023 19:16:26 +0000 (19:16 +0000)]
LP#2019207 Patron View Discovery Layer URL

A new org unit setting configures the discovery layer URL opened
by the Patron View button on a staff catalog record.

The placeholder to include for the record ID is {eg_record_id}.

Example format: https://example.com/Record/{eg_record_id}

Signed-off-by: Dan Briem <dbriem@wlsmail.org>
Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 months agoForward port 3.11.2 to 3.11.3 db upgrade script
Jason Stephenson [Sat, 10 Feb 2024 16:09:53 +0000 (11:09 -0500)]
Forward port 3.11.2 to 3.11.3 db upgrade script

This was missed when the tags branch was cut.

Signed-off-by: Jason Stephenson <jason@sigio.com>
2 months agoDocs: corrections to acquisitions_search.adoc
Andrea Buntz Neiman [Fri, 9 Feb 2024 17:37:52 +0000 (12:37 -0500)]
Docs: corrections to acquisitions_search.adoc

Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
2 months agoLP#2051557: ignore deleted monograph parts when checking title holds
Galen Charlton [Mon, 29 Jan 2024 15:49:24 +0000 (10:49 -0500)]
LP#2051557: ignore deleted monograph parts when checking title holds

This patch ensures that when "Require Monographic Part when Present"
is in effect, that deleted monograph parts are not taken into
account when checking whether a title-level hold is possible.

To test
-------
[1] Set up a bibliographic record that has at least one monograph
    part, then delete that part.
[2] Turn on the "Require Monographic Part when Present" library setting.
[3] Attempt to place a title-level hold on the record. Note that the
    following error is returned: "Require Monographic Part when Present"
[4] Apply the patch and repeat step 3. This time, the hold should
    go through.

Release-note: Ignore deleted monograp parts when checking title holds while "Require Monographic Part when Present" is on.

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Ruth Frasur Davis <rfrasur@library.in.gov>
Signed-off-by: Jason Etheridge <phasefx@gmail.com>
2 months agoDocs: Link to update records docs
Andrea Buntz Neiman [Mon, 5 Feb 2024 19:51:41 +0000 (14:51 -0500)]
Docs: Link to update records docs

Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
2 months agoDocs: correction to 3.11 release notes
Andrea Buntz Neiman [Mon, 5 Feb 2024 19:42:41 +0000 (14:42 -0500)]
Docs: correction to 3.11 release notes

Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
2 months agoFix syntax in 3.11 release notes
Jason Stephenson [Fri, 2 Feb 2024 21:13:32 +0000 (21:13 +0000)]
Fix syntax in 3.11 release notes

Signed-off-by: Jason Stephenson <jason@sigio.com>
2 months agoDocs: draft release notes for 3.11.3
Andrea Buntz Neiman [Fri, 2 Feb 2024 16:58:00 +0000 (11:58 -0500)]
Docs: draft release notes for 3.11.3

Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
3 months agoLP#2051370 (follow-up) run make_release steps in the correct directory
Jane Sandberg [Fri, 2 Feb 2024 00:48:37 +0000 (16:48 -0800)]
LP#2051370 (follow-up) run make_release steps in the correct directory

Signed-off-by: Jane Sandberg <js7389@princeton.edu>
3 months agoLP#2051370: have make_release build browser client by default
Galen Charlton [Fri, 26 Jan 2024 14:34:15 +0000 (09:34 -0500)]
LP#2051370: have make_release build browser client by default

This patch replace the -c switch (to build the browser client) with
a -C switch to _skip_ building the browser client. Release tarballs
should always have the browser client, so the main reason to use -C
is just to create the initial DB update script.

To test
-------
[1] Apply patch. Verify that make_release now advertises a -C
    switch.
[2] Run make_release without -C; it should build the browser client.
[3] Run make_release with -C; the browser client build should be skipped.

Release-note: [Developer] make_release now builds the browser client by default.

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
3 months agoLP#2051370: remove make_release option to build XUL client
Galen Charlton [Fri, 26 Jan 2024 14:24:49 +0000 (09:24 -0500)]
LP#2051370: remove make_release option to build XUL client

This patch removes the -x option in make_release to build
the XUL client, which has ceased to be, is an ex-client. It
doesn't remove the dependencies and subordinate Makefile
that would permit manually building the XUL client; that will
happen later.

Release-note: [Developer] Remove make_release -x option to build XUL client

To test
-------
[1] Install the patch and verify that make_release does not
    advertise an option to build the XUL client.
[2] Run a build and verify that it works.

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
3 months agoDocs: LP2048132 follow up for image syntax
Susan Morrison [Thu, 1 Feb 2024 15:10:10 +0000 (10:10 -0500)]
Docs: LP2048132 follow up for image syntax

Updated image syntax for all but one image to pull from correct image folder.

Signed-off-by: Susan Morrison <smorrison@georgialibraries.org>
Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
3 months agoDocs: Update statistical categories documenation to reflect Angular upgrades
Susan Morrison [Fri, 5 Jan 2024 18:40:54 +0000 (13:40 -0500)]
Docs: Update statistical categories documenation to reflect Angular upgrades

LP2048132: https://bugs.launchpad.net/evergreen/+bug/2048132

Signed-off-by: Susan Morrison <smorrison@georgialibraries.org>
Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
3 months agoDocs: Update emergency_closing_handler.adoc
Susan Morrison [Fri, 5 Jan 2024 16:24:29 +0000 (11:24 -0500)]
Docs: Update emergency_closing_handler.adoc

For LP1871692: https://bugs.launchpad.net/evergreen/+bug/1871692

Signed-off-by: Susan Morrison <smorrison@georgialibraries.org>
Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
3 months agoLP#2021903: remove "Locate Z39.50 Matches" buttons from OPAC
Chris Sharp [Fri, 26 Jan 2024 15:51:10 +0000 (10:51 -0500)]
LP#2021903: remove "Locate Z39.50 Matches" buttons from OPAC

Remove non-functional buttons that previously retrieved matches from
the Z39.50 XUL UI.  See https://bugs.launchpad.net/evergreen/+bug/1798847
for the request to recreate this feature in our current UI.

Release-note: Remove non-functional staff-only "Locate Z39.50 Matches" buttons from OPAC templates.

Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>