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: Add a "Clear Added Content Cache" item to the Other Actions menu in the staff catalog record page.
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.
Jane Sandberg [Tue, 19 Sep 2023 13:48:37 +0000 (06:48 -0700)]
LP1850473: Add eslint rules
Adds the eslint and @typescript-eslint equivalents of our old tslint.json config, and
adds rxjs linting, no-magic-numbers, and various accessibility-related eslint rules
Signed-off-by: Jane Sandberg <js7389@princeton.edu> Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Jason Boyer [Thu, 17 Aug 2023 11:40:34 +0000 (07:40 -0400)]
LP1999823: Avoid Collisions in Growing Buffer Function Names
On Ubuntu with mod_shib enabled the buffer_free call will collide with
libssh and the serving process will just die. Note that this fix requires
an OpenSRF install with a similar fix.
Signed-off-by: Jason Boyer <JBoyer@equinoxOLI.org> Signed-off-by: Jeff Davis <jeff.davis@bc.libraries.coop>
Steven Mayo [Fri, 1 Dec 2023 15:00:43 +0000 (10:00 -0500)]
LP#2043127-Marking org unit as non-visible in the OPAC defaults patrons' preferred pickup locations to the first org unit
Added a check to the OPAC place_hold.tt2 that detects if the patron's
preferred pickup location is missing from the dropdown. If it is, it
adds a default message to the dropdown asking them to choose a pickup
location and chooses it, as well as disabling the submit button and
changing the dropdown color to alert the user.
Steps to test:
[1] Go to Administration -> Server Administration -> Organizational
Units
[2] Select an org unit and uncheck OPAC Visible
[3] Rerun autogen.sh
[4] Find a patron account with that org unit as their home library (it
will also be their preferred pickup library)
[5] Log into that account on the OPAC and attempt to place a hold on a
book
[6] Observe the state of the holds screen
Signed-off-by: Steven Mayo <smayo@georgialibraries.org> Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
Jane Sandberg [Tue, 28 Nov 2023 22:32:26 +0000 (14:32 -0800)]
LP2045078: remove unneeded i18n and label semantics from spacing element
This <label> element doesn't label anything, nor does it contain any meaningful
content for translation. Since it is just used for spacing (so that the
Show Batch Actions button is in line with the actions themselves), let's just
use an untranslateable span instead.
Josh Stompro [Tue, 28 Nov 2023 14:44:47 +0000 (08:44 -0600)]
LP#2044858 - Z39.50 Source Changes and reloading open-ils.search
The open-ils.search processes can cache the Z39.50 source config data, which
can result in new changes not being shown or used by Z39.50 searching if
a drone with old data gets used.
This adds a note about that to the docs.
Signed-off-by: Josh Stompro <stomproj@larl.org> Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
Jason Boyer [Fri, 9 Jun 2023 20:21:28 +0000 (16:21 -0400)]
LP2023418: Ignore system and user psqlrc settings when determining Pg version
Ignore any settings in the system or user .psqlrc files when determining
postgres version as some combinations can confuse cut. Passing -A also means
that the call to xargs to trim spaces is no longer necessary.
Signed-off-by: Jason Boyer <JBoyer@equinoxOLI.org> Signed-off-by: Jane Sandberg <js7389@princeton.edu>
Galen Charlton [Wed, 22 Nov 2023 21:51:59 +0000 (16:51 -0500)]
LP#2044051: fix item alerts dialog in various interfaces
This patch removes the dependency of CopyAlertsDialogComponent on
VolCopyService introduced in the patch for bug 2017673. While the
attempt avoided repeating logic for getting the default value
from the holdings editor settings, it created a set of unresolved
dependency injection issues that prevented various Angular
circulation interfaces from loading.
Some refactoring is in order so that management of user and workstation
settings that require a bit more than just simple fetch logic don't
require tight coupling between large modules.
To test
-------
[1] Attempt to open (say) the Angular check in page. Note that
the page does not load and there are console warnings about
dependencies.
[2] Apply the page and repeat step 1. This time, the page should
load.
[3] Verify that setting the default item alert type in the Angular
holdings editor will set the default type in _Angular_ interfaces
that invoke the item alert management dialog. (Note when testing
that the server-side eg.cat.volcopy.defaults setting can get
cached on a per-tab basis by ServerStorageService, so tab
refreshes can be needed to see a new default item alert type
take effect.
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org> Signed-off-by: Michele Morgan <mmorgan@noblenet.org> Signed-off-by: Jane Sandberg <js7389@princeton.edu> Signed-off-by: Garry Collum <gcollum@gmail.com> Signed-off-by: blake <blake@mobiusconsortium.org> Signed-off-by: Steven Mayo <smayo@georgialibraries.org>
Mike Rylander [Wed, 22 Nov 2023 17:16:19 +0000 (12:16 -0500)]
LP2044273: Assume authoritative PCRUD mode
Also, absorb any error checking the configuration.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Michele Morgan <mmorgan@noblenet.org> Signed-off-by: Jane Sandberg <js7389@princeton.edu> Signed-off-by: Garry Collum <gcollum@gmail.com> Signed-off-by: blake <blake@mobiusconsortium.org> Signed-off-by: Steven Mayo <smayo@georgialibraries.org>
Bill Erickson [Wed, 22 Nov 2023 15:26:42 +0000 (10:26 -0500)]
LP2044273 Store use-authoritative as Login Session Item
This allows the flag to reset and force a recheck of the value with
every login/logout.
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Michele Morgan <mmorgan@noblenet.org> Signed-off-by: Jane Sandberg <js7389@princeton.edu> Signed-off-by: Garry Collum <gcollum@gmail.com> Signed-off-by: blake <blake@mobiusconsortium.org> Signed-off-by: Steven Mayo <smayo@georgialibraries.org>
After the initial release of the Did You Mean code, suggestion-time
optimizations were added to address some performance pitfalls that
showed up in certain, especially very large, data sets. During later
development to build on the core infrastructure, those optimizations
were lost.
This commit brings those optimizations back (see upgrade 1282).
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Galen Charlton <gmc@equinoxOLI.org> Signed-off-by: Jeff Davis <jeff.davis@bc.libraries.coop>
Angela Kilsdonk [Mon, 20 Nov 2023 16:35:13 +0000 (11:35 -0500)]
Docs: Update Best_Hold_Selection_Sort_Order.adoc
Added additional BHSSO information from the following Evergreen conference presentation: https://docs.google.com/presentation/d/1iTDaNItUgD33ew57tPTipHEqwI7utxBy-6-jvBoORdE/edit#slide=id.gd947c15582_0_83
Writing credit goes to Angela Kilsdonk from Equinox.
Also added a couple new screenshots. Will upload a new folder of images with new naming conventions.
Signed-off-by: Angela Kilsdonk <akilsdonk@equinoxoli.org> Signed-off-by: Susan Morrison <smorrison@georgialibraries.org> Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
Stephanie Leary [Mon, 20 Nov 2023 17:23:54 +0000 (17:23 +0000)]
LP2043899 Revised org select field labels
Reverses course on the new label strategy introduced in bug 1999158,
which proved incompatible with some components with user-configurable
labels (e.g. patron edit). Rather than introducing a <label> tag by
default, we now use the more familiar ARIA label strategy in places
where the field does not have a visible label. We will need to revisit
these, as all form fields should have visible labels per WCAG, but the
ARIA label serves to resolve the immediate problem for screen reader
users.
Affects all uses of <eg-org-select> and <eg-org-family-select>.