Jason Boyer [Tue, 16 Jan 2024 21:05:50 +0000 (16:05 -0500)]
LP1582720: Ignore Duplicate Scoped URIs - BPAC
When displaying scoped URI call numbers (subfield 9's), ignore duplicate
URIs that can be caused by multiple subfield 9's on the same link.
Release-note: (OPAC) Ignore duplicate links from 856 fields with multiple $9's Signed-off-by: Jason Boyer <JBoyer@equinoxOLI.org> Signed-off-by: Jane Sandberg <js7389@princeton.edu>
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
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>
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
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>
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>
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>
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>
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.
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>
The patch for bug 2045581 ensured that eg-org-family-select's ariaLabel
attribute would propagate to the enclosed eg-org-select, but did not
update a mock in eg-org-family-select's tests. This patch fixes that.
Release-note: [Developer] Fixes test failure in Angular staff client
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.
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>
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>
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>
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>
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>
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.
Galen Charlton [Thu, 25 Jan 2024 15:36:24 +0000 (10:36 -0500)]
LP#1939154: allow clearing default pickup lib in AngularJS patron editor
This patch adds a "Clear Default Hold Pickup Location" button
to enable removing that user-setting. This works around an issue
with the AngularJS OU selector where it doesn't pass an event
to signify to calling code that the user has de-selected any OUs.
To test
-------
[1] Apply the patch.
[2] Use the AngularJS editor to add and clear the default
pickup library for a patron.
[3] Verify that the changes are saved and displayed as
expected.
Release-note: Enable clearing the default pickup location in the patron editor.
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org> Signed-off-by: Jane Sandberg <sandbergja@gmail.com> Signed-off-by: Jason Boyer <JBoyer@equinoxOLI.org>
As part of the angularization of the staff catalog, new logic was
added to the bib summary API that gathers record attributes for the
constituent records of a result's metarecord. For very large
metarecords (~100+ constituents) this can be very slow, and when a
search returns many bibs from the same metarecord, the underlying
data is retrieved separately for each bib.
This commit creates a temporary local cache to avoid repeating the
caclulation of MR summary data on the same result set page.
Release-note: Improve speed of searching for and displaying (in Staff View) titles that are members of large metarecord sets.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Galen Charlton <gmc@equinoxOLI.org> Signed-off-by: Jason Boyer <JBoyer@equinoxOLI.org>
Jeff Davis [Tue, 17 Oct 2023 21:25:10 +0000 (14:25 -0700)]
LP#2039229: handle staff view for bibs without metarecord mappings
Release-note: Fix crash when displaying Staff View for a deleted record that has no metarecord mappings.
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca> Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Galen Charlton <gmc@equinoxOLI.org> Signed-off-by: Jason Boyer <JBoyer@equinoxOLI.org>
Terran McCanna [Tue, 2 Jan 2024 20:01:15 +0000 (15:01 -0500)]
LP2046575 Angular Stat Cat Entries Grid Settings Do Not Save
Adds ability to save the column settings on the patron and item
stat cat entries. (The main stat cat save grid options were already
in place, but the entries grid options were not.)
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org> Signed-off-by: Jane Sandberg <js7389@princeton.edu> Signed-off-by: Steven Mayo <smayo@georgialibraries.org> Signed-off-by: Ruth Frasur Davis <rfrasur@library.in.gov> Signed-off-by: Stephanie Leary <stephanie.leary@equinoxoli.org>
This patch removes the eg2 .angular directory, which
contains build artifacts incuding the Angular build
cache, in the course of building release tarballs.
Release-note: Reduce size of release tarball by not shipping the Angular build cache
To test
-------
[1] Apply the patch and use make_release to build a
tarball.
[2] Verify that the tarball is smaller.
[3] Verify that the Angular staff interface still works
in an Evergreen instance installed from the tarball .
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org> Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
Terran McCanna [Tue, 23 Jan 2024 22:47:10 +0000 (17:47 -0500)]
LP2051038 Printing Holds Grid prints hold status number instead of text
The display text for the Hold Status column is locally derived for each
Hold Status number in the template, but the typescript file only sees
the number so that's what it prints/downloads.
This adds the same wording that is in the template to the CellTextGenerator
so that the download / print will match. (Note that LP2051037 suggests
moving the wording into a table so that this type of redundancy could be
resolved.)
Release-note: Holds grid can now print / download the Hold Status column.
If the grid has multiSortable enabled but also has columns
that should not be sortable, those columns should get both
[sortable] and [multiSortable] set to "true" in the
<eg-grid-column> element.
Terran McCanna [Wed, 24 Jan 2024 15:59:18 +0000 (10:59 -0500)]
LP1889133 Follow Up
This partially reverts the previous LP1889133 commit which changed the
eg-grid-column name in order to make it sortable. By changing the name,
it would break prior locally saved grid settings. So, this keeps the
column label change, but reverts the name change and instead makes the
column non-sortable.
The Current Item and Requested Item columns on this grid also threw ugly
errors when trying to sort by them, so I also made them non-sortable.
Release-note: Make the Hold Status, Current Item, and Requested Item Columns non-sortable on Angular holds grids to avoid errors.
Stephanie Leary [Wed, 6 Dec 2023 15:00:08 +0000 (15:00 +0000)]
LP1839364 Move login page error message; add ARIA
Moves the login form's error message to the top and connects it to the
required inputs using aria-describedby.
This change to the ARIA messages required the password visibility
message to be moved into the template file so that its ID could be
combined with the error message's. Since we are no longer using
aria-description, the exception to our lint rules has been removed.
Release-note: Improve the accessiblity of the Angular staff login page
Gina Monti [Wed, 17 Jan 2024 16:31:05 +0000 (11:31 -0500)]
LP#2049654: fix Expand All button icon on purchase order page
This patch fixes a problem where the button to expand or contract
the list of line items on a purchase order was not displaying
the logo when it was in the contracted state.
Release-note: Fix display of Expand All button's icon on purchase order page
Galen Charlton [Mon, 11 Dec 2023 16:15:13 +0000 (11:15 -0500)]
LP#1980273: ensure patron alerts are displayed in AngularJS patron summary
This patch ensures that any staff alerts on a patron record are
included in the itemized display in the patron summary when
selecting a patron from search results (as opposed to fully
opening the patron record).
To test
-------
[1] Set up a patron with a note that display an alert to staff.
[2] Perform a search for the patron.
[3] From search results, select but do not open the patron. (E.g.,
single-click the row rather than double-click it).
[4] Note that the patron's name is set to red in the patron summary
but that the list of alerts is not displayed below the patron name.
[5] Open the patron (e.g., by double-clicking it). The patron summary
will now itemize the list.
[6] Apply the patch and perform steps 2 and 3. This time, the alerts
should be itemized in the patron summary.
Release-note: Ensure alerts are displayed in the patron summary when selecting a record from patron search results.
Jason Stephenson [Wed, 27 Dec 2023 19:45:52 +0000 (14:45 -0500)]
LP20474587 Fix copy stat cat fleshing in SuperCat
Fix an internal server error caused by lack of fleshed stat cats when
retrieving copies or call numbers via SuperCat.
To reproduce this bug visit the locations below on an Evergreen
installation where copy stat cats are in use. Be sure to pick a copy
id or call number with copies that have stat cats assigned.
/opac/extras/supercat/retrieve/marcxml/acn/<call number id>
Michele Morgan [Mon, 22 Aug 2022 16:42:44 +0000 (12:42 -0400)]
LP1889133 - Angular Staff Catalog: Error sorting by Hold Status
Renames the column from "Status" to "Hold Status" and fixes the sorting
error. Note that sorting now occurs by the hold status number, not by
its associated display text because the text is locally produced by the
UI, not by the database.
Release-note: Hold Status in holds grid is now sortable. (lp1889133)
Signed-off-by: Michele Morgan <mmorgan@noblenet.org> Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Michele Morgan [Wed, 17 Jan 2024 19:25:44 +0000 (19:25 +0000)]
LP2049673 - Add publication date to pull list
Adds the publication date to wide holds and as an option in the grid.
Release-note: Pull list now includes Publication year. Print template code: [% hold.pubdate %] (lp2049673)
Signed-off-by: Michele Morgan <mmorgan@noblenet.org> Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org> Signed-off-by: Stephanie Leary <stephanie.leary@equinoxoli.org> Signed-off-by: Steven Mayo <smayo@georgialibraries.org> Signed-off-by: Ruth Frasur Davis <rfrasur@library.in.gov> Signed-off-by: Jane Sandberg <js7389@princeton.edu> Signed-off-by: blake <blake@mobiusconsortium.org>
Signed off by: Shula Link <slink@gchrl.org>
Galen Charlton [Wed, 3 Jan 2024 20:35:15 +0000 (15:35 -0500)]
LP#2044141 (follow-up) tweaks to OPAC tests GitHub action
- remove schedule entry; no immediate reason why we
would need to run this more frequently than upon
a push that updates the relevant files
- clean up more duplication
The "valid_fine_level" constraint on the asset.copy_template has been
erroneously defined to check the load_duration column. This commit
fixes it so that the constraint looks at the fine_level column as it
should.
This commit adds the database upgrade, a miscellaneous release note,
as well as the main schema change.
To test the patch, simply look at the asset.copy_template table in the
database before and after applying the database upgrade. The
valid_fine_level constraint should reference the fine_level column
after the patch.
The code is based on a patch submitted by Tim Faile.
Signed-off-by: Jason Stephenson <jason@sigio.com> Signed-off-by: Jane Sandberg <js7389@princeton.edu> Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Gina Monti [Sat, 23 Dec 2023 15:23:18 +0000 (10:23 -0500)]
Docs: LP1906847 circ policy update
Corrections recommended by this ticket:
https://bugs.launchpad.net/evergreen/+bug/1906847
I also decided to reformat the example circ policy images to be tables because these aren't technically direct screenshots to the interface and it'll be much easier to edit if we need to down the road.
Signed-off-by: Gina Monti <gmonti@biblio.org> Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
Dan Briem [Thu, 19 Oct 2023 21:20:28 +0000 (21:20 +0000)]
LP#1739638 AngularJS CSV Download Progress Bar Won't Close
Delays text preparation for printing or CSV generation until
after the progress dialog opens, preventing the dialog from
remaining open if the data resolves before it opens and
triggers the close action prematurely.
To test:
- open a populated AngularJS grid
- refresh the page (behavior is more likely after refresh)
- click Download Full CSV or Print Full Grid on the toolbar
- note the progress dialog doesn't close
- apply patch, repeat steps, and note the dialog closes
Signed-off-by: Dan Briem <dbriem@wlsmail.org> Signed-off-by: Steven Mayo <smayo@georgialibraries.org> Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
[1] Create a reservation under 'Booking'.
[2] Search for a resource type that isn't at a owning library.
[3] Observe that it says 'resources' instead of 'resource' in the
message below the form.