Evergreen.git
21 months agoLP#1998355: reduce growth of DYM dictionary
Galen Charlton [Wed, 30 Nov 2022 16:10:36 +0000 (11:10 -0500)]
LP#1998355: reduce growth of DYM dictionary

This patch reduces the number of updates to search.sympell_dictionary
rows that would not change the contents of those rows, thereby
reducing the potential for certain record maintenance operations to
significantlly bloat that table.

In particular, it adjust the upsert to update the row for an existing
prefix only if there would be a net change in at least one of the *_count
columns or the list of suggestions. (Note that if a row is the target of
an UPDATE statement, PostgreSQL will _always_ create a row version, even
if there is no change to the contents of the row.)

It should be noted that while this patch is useful in and of itself, there
is a longer-term fix that would have additional benefits: adjust the
overall reingest logic so that it minimizes changes to all large tables
derived from the bib record when a bib gets reingested. A row that never
gets touched because it doesn't have to be can never become bloat.

To test
-------
[1] In a Concerto database, ensure that idempotent updates of the MARC
    in biblio.record_entry will nonetheless force a reingest by running:

    update config.internal_flag set enabled = true where name = 'ingest.reingest.force_on_same_marc';

[2] Note the size of search.symspell_dictionary by running:

    select pg_size_pretty(pg_total_relation_size('search.symspell_dictionary'));

[3] Run a few rounds of the following update that forces a reingest of the bibs:

    update biblio.record_entry set id = id;

[4] For the sake of fairness, run a vacuum on the table:

    VACUUM ANALYZE search.sympsell_dictionary

[5] Run the size measuremeant again and not that it's significantly larger.

[6] Run the following the reset the table size:

    VACUUM FULL search.symspell_dictionary;

[7] Note the size, apply the patch, and repeat step 3.

[8] This time, the table size should be the same (or close to the same) as it
    was at the beginning of step 7.

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Jason Boyer <JBoyer@equinoxOLI.org>
21 months agoLP#1999401 release note
Michele Morgan [Fri, 3 Mar 2023 18:17:16 +0000 (13:17 -0500)]
LP#1999401 release note

Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
21 months agoLP1999401: Don't override magic statuses from holdings editor templates
Jane Sandberg [Wed, 22 Feb 2023 04:48:31 +0000 (20:48 -0800)]
LP1999401: Don't override magic statuses from holdings editor templates

1. Create a new template including a status
2. Check out an item
3. Apply your template to the item
4. Note that the item's status is no longer Checked Out
5. Apply this patch
6. Retry steps 1-3.  Note that the item's status is still Checked Out

Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
Signed-off-by: Elizabeth Davis <elizabeth.davis@sparkpa.org>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
21 months agoLP1999401: Don't apply magic statuses from holdings editor templates
Jane Sandberg [Wed, 11 Jan 2023 00:59:14 +0000 (16:59 -0800)]
LP1999401: Don't apply magic statuses from holdings editor templates

1. Create a new template in the holdings template editor with a few
different values in various fields.
2. Include a "magic" status in your template (like Lost or In
Transit).  To select it, you can type the first few characters
then press <Tab>.
3. Save your template.
4. Apply your template to an item.
5. Note that the copy status has changed to a magic status.
6. Apply this patch.
7. Try applying your template to another item.
8. Note that the copy status field doesn't change this time,
but other fields from your template should still apply.

Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
21 months agoLP#2007351: fix the MARC editor heading linker for certain fields
Galen Charlton [Wed, 15 Feb 2023 17:01:47 +0000 (12:01 -0500)]
LP#2007351: fix the MARC editor heading linker for certain fields

The headings linker in the Angular bib record editor could fail
to retrieve the relevant authority control field metadata to determine
what subfields in the bib record are controlled by a top-level authority
record (as opposed to a subdivision record). This patch fixes this
by adjusting the query for bib-to-authority linking relationships.

This manifiested by the headings linker not consistently bringing
up the headings browse when attemping to link headings in the bib
600, 600, 651, and 655 field.A

To test:

[1] Open a bib record in the Angular MARC editor and create a 650
    field.
[2] Click the button to open the headings linker. Note that no
    browse is performed. (This is not 100%, as the bug is sensitive
    to the exact order that the database happens to return rows
    from the authority.control_set_bib_field table.)
[3] Apply the patch and repeat step 2.
[4] This time, the browse list in the headings linker should show
    results.

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Carol Witt <wittc@cwmars.org>
21 months agoLP#1706664 - This adds Mark Item docs
Jennifer Pringle [Thu, 3 Nov 2022 18:59:34 +0000 (11:59 -0700)]
LP#1706664 - This adds Mark Item docs

Documentation for marking items of different status including Missing Pieces.

Signed-off-by: Jennifer Pringle <jennifer.pringle@bc.libraries.coop>
signed-off-by: Debbie Luchenbill <deborah@mobiusconsortium.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
21 months agoLP#1980142: adjust styling of patron message body in Bootstrap OPAC
Galen Charlton [Wed, 16 Nov 2022 17:11:22 +0000 (12:11 -0500)]
LP#1980142: adjust styling of patron message body in Bootstrap OPAC

This patch resolves an issue where the text of the message body
could be rendered very small due to default styles applied to the <pre>
element. In particular, it converts the <pre> to a <p> and restores
a TPAC-era style that ensures that

* long lines in the message wrap
* but line breaks are also preserved (see LP#1927990)

This patch also ensures that the message body is not displayed with
label but no contents if the body is empty.

To test
-------
[1] Create a public patron note that contains line breaks and
    long lines.
[2] Note that in the Bootstrap OPAC message view, the message
    displays with fixed-width text (that may use a smaller font
    than the rest of the page) and has a horizontal scrollbar
    (due to the long line).
[3] Apply the patch and look at the message again in the OPAC.
    This time, the long line should wrap, but line breaks are
    also preserved.

This patch includes a portion of a patch by Garry Collum.

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Mary Llewelln <mllewell@biblio.org>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
21 months agoLP1989284 Input labels for Manage Authorities
Stephanie Leary [Thu, 22 Dec 2022 17:46:03 +0000 (11:46 -0600)]
LP1989284 Input labels for Manage Authorities

Adds <label> tags for the search term and authority type field inputs in
Cataloging -> Manage Authorities.

To test, run axeDevTools on this screen. The two form label warnings
that previously appeared should now be gone.

LP1989284 Add ID for authority combobox

Signed-off-by: Stephanie Leary <stephanie.leary@equinoxOLI.org>
Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
22 months agoLp 2008925: Patch Templates Adversely Affected by Lp 1992490
Jason Stephenson [Wed, 1 Mar 2023 19:34:25 +0000 (14:34 -0500)]
Lp 2008925: Patch Templates Adversely Affected by Lp 1992490

The patch for Lp 1992490 wrapped several text blocks in the l()
translation function.  At least two of these introduced syntax error
in Template Toolkit.  Some of the others could have been done
differntly to fit in better with the general idiom of how we use the
fuction in Evergreen.

This commit modifies those that stood out as the most egregious
examples.

An easy way to test this is to login to the OPAC on an unpatched
system and click to open "Messages."  You will get an Internal Server
Error.  After you apply this commit and install the affected
templates, you will not get an Internal Server Error.

The other modified templates do not seem to crash, but use the
translation funciton in idiosyncratic ways.  This commit attempts to
smooth those out.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
22 months agoLP #1998494: Angular Holdings Editor: Cannot create empty call numbers
Jessica Woolford [Fri, 9 Dec 2022 15:32:25 +0000 (10:32 -0500)]
LP #1998494: Angular Holdings Editor: Cannot create empty call numbers

Returns support for adding empty call numbers when adding holdings.

Signed-off-by: Jessica Woolford <jwoolford@biblio.org>
Signed-off-by: Mary Llewelln <mllewell@biblio.org>
Signed-off-by: Elaine Hardy <ehardy@georgialibraries.org>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
22 months agoLP#2003707: add releases note entry
Galen Charlton [Wed, 1 Mar 2023 18:49:15 +0000 (13:49 -0500)]
LP#2003707: add releases note entry

(Also remove entries from the 3.9.1 release)

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
22 months agoLP2003707: Add an OpenSRF Core Config Param to autogen.sh
Jason Boyer [Mon, 23 Jan 2023 12:23:15 +0000 (07:23 -0500)]
LP2003707: Add an OpenSRF Core Config Param to autogen.sh

What it says on the tin, if you change the name or location of
opensrf_core.xml now you can still run autogen.sh.

Signed-off-by: Jason Boyer <JBoyer@equinoxOLI.org>
Signed-off-by: Josh Stompro <stomproj@larl.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
22 months agoLP2007591 Allow Last-Copy Delete to Create Hold Notices
Bill Erickson [Thu, 16 Feb 2023 16:02:49 +0000 (11:02 -0500)]
LP2007591 Allow Last-Copy Delete to Create Hold Notices

Fixes an issue where attempting to create A/T events for recently
canceled holds fails becuase the cancel_time on the hold is the
pre-insert value of "now" instead of a valid date string.

Resolve the issue by fetching the post-insert copy of the hold, so it has
all of the correct in-database values, before passing the hold to A/T
for processing.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
22 months agoLP1980874 Limit depth dropdown in patron notes
Stephanie Leary [Thu, 19 Jan 2023 15:18:40 +0000 (09:18 -0600)]
LP1980874 Limit depth dropdown in patron notes

Adds standard form control styling to the depth select menu in the
Patron > Create Note modal. This limits the width of the closed dropdown
to the width of the form and prevents long labels from overflowing.

This does not prevent the individual options from overflowing the
<select> width due to the limited CSS support for the <option> tag; all
width and text wrap properties are currently unsupported.

Signed-off-by: Stephanie Leary <stephanie.leary@equinoxOLI.org>
Signed-off-by: Jennifer Pringle <jennifer.pringle@bc.libraries.coop>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
22 months agoLP2003742 Shelf browse in angular catalog uses deleted call numbers
Garry Collum [Tue, 24 Jan 2023 16:22:28 +0000 (16:22 +0000)]
LP2003742 Shelf browse in angular catalog uses deleted call numbers

Fixes the call number browse.  To determine the call number for which
the browse list displays, deleted call numbers are not removed from
the query.

To test in Concerto:
1. Go to a bib and click on the shelf browse tab. Notice where the list
begins.
2. Add a new item with a call number less thatn the starting point of
the browse list.  For example, if the list begins at 780, create
a call number at 100.
3. Refresh the browse screen and notice that the list now begins at
the lower call number.
4. Delete the item and call number that was created, the list still
begins at the lower call number.
5. Apply the patch.
6. The list should now begin at it's original call number.

Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
22 months agoLP#1999944: fix bug that can break drawing the folder tree for reports
Llewellyn Marshall [Fri, 9 Dec 2022 20:40:54 +0000 (15:40 -0500)]
LP#1999944: fix bug that can break drawing the folder tree for reports

Specifically, skip drawfolders iteration if parent node cannot be
found and eport invalid parent folder in the browser console.

For example, if a user creates a template folder that is not shared
that has a child folder that _is_ shared, another user at the library
that the folder is shared with would see their report folders be
incompletely rendered.

Signed-off-by: Llewellyn Marshall <llewellyn.marshall@ncdcr.gov>
Signed-off-by: blake <blake@mobiusconsortium.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
22 months agoLP#1988321: Fix comparison problems to avoid incorrect error
Chris Sharp [Tue, 17 Jan 2023 16:11:36 +0000 (11:11 -0500)]
LP#1988321: Fix comparison problems to avoid incorrect error

Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
22 months agoLP1969641 Show useful lack of staff working location message
Bill Erickson [Wed, 20 Apr 2022 16:08:52 +0000 (12:08 -0400)]
LP1969641 Show useful lack of staff working location message

When a user logs into the staff client that has STAFF_LOGIN permissions,
but no working locations, show a message to this affect instead of
resulting in a blank page.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: John Amundson <jamundson@cwmars.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
22 months agoLP#2003755 No Stat Cat Change Indication When Applying Template
Dan Briem [Wed, 25 Jan 2023 04:11:08 +0000 (23:11 -0500)]
LP#2003755 No Stat Cat Change Indication When Applying Template

Add indicator styles on statistical category form fields when
they are applied by a template in the Angular Holdings Editor.

Signed-off-by: Dan Briem <dbriem@wlsmail.org>
Signed-off-by: Beth Willis <willis@noblenet.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
22 months agoLP#1990306: Also check for authtoken at the auth service level
Chris Sharp [Fri, 27 Jan 2023 20:40:31 +0000 (15:40 -0500)]
LP#1990306: Also check for authtoken at the auth service level

Thank you to Bill Erickson and Jason Stephenson for assistance with this.

Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
22 months agoLP#1990306: avoid VIEW_USER perm lookup on egPatronApp startup when we have a null...
Jeff Davis [Tue, 18 Oct 2022 19:42:26 +0000 (12:42 -0700)]
LP#1990306: avoid VIEW_USER perm lookup on egPatronApp startup when we have a null authtoken

Signed-off-by: Jeff Davis <jeff.davis@bc.libraries.coop>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
22 months agoLP#1945355 Inconsistent button placement: delete holdings dialog
Dan Briem [Wed, 9 Feb 2022 16:44:54 +0000 (11:44 -0500)]
LP#1945355 Inconsistent button placement: delete holdings dialog

The cancel button on the delete-volcopy-dialog now appears last
to be consistent with the eg-confirm dialogs.

To test:
1. set the ou setting "Alert on empty bib records" to true
2. delete the last copy on a record
3. note the Delete Holdings/OK and Cancel buttons are in the
   same order on the delete and confirmation dialogs

Signed-off-by: Dan Briem <dbriem@wlsmail.org>
Signed-off-by: Jennifer Weston <jennifer.weston@equinoxinitiative.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
23 months agoLP1980302 Bootstrap: applied search filters display oddly
Garry Collum [Thu, 14 Jul 2022 16:43:53 +0000 (16:43 +0000)]
LP1980302 Bootstrap: applied search filters display oddly

Moves the display of applied filters into bootstrap alert messages and aligns applied filters
in a row, and utilizes more native bootstrap classes.  Also, adds a label to the 'Locations'
filter and code to implement an 'OR' separator, if more than one location is selected.

To test:
1. Perform an advanced search in the bootstrap catalog and apply some filters. To test
the locations, select several location options.
2. Notice the formatting of the 'Filtered by:' display data.  Notice also the display
of the locations filter without a label or a separator.
3. Apply the patch.
4. Repeat 2 to see the new formatting.

Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: Gina Monti <gmonti@biblio.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
23 months agoLP1965065 Example DOB on self-registration displays twice
Garry Collum [Tue, 28 Jun 2022 15:07:46 +0000 (15:07 +0000)]
LP1965065 Example DOB on self-registration displays twice

This fixes the double display of the example text in the self-registration form of the opac.
Not only does DOB example display twice but the example text for phone, email, and
postal code also display twice.

To test:
1. Go to library settings and set "Allow Patron Self Registration" and "Show DOB field on patron
registration" to true.  Set a value for "Example dob field on patron registration".  If testing
phone, postal code, or email the appropriate values must be set for the show and example
parameters.
2. Go to "Request a Library Card" in the opac.
3. Notice that the DOB example displays twice.
4. Apply the patch.
5. The example now just displays once.

Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: Gina Monti <gmonti@biblio.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
23 months agoLP#1984269: Bootstrap opac: display of tables on small screens
Garry Collum [Thu, 11 Aug 2022 18:44:19 +0000 (18:44 +0000)]
LP#1984269: Bootstrap opac: display of tables on small screens

This incorporates a generic process to display vertical tables in the Bootstrap
opac in small screens by adding a 'mobile-title' attr to any <td> elements
of the table.  This patch uses the copy_table.tt2 and results/table.tt2
as examples.

These two tables are best tested with bibs that contain items that have parts.
The results/table.tt2 is displayed by using the "Show More Details" button
on the results screen.  When the screen is sized so that the tables become
vertical the parts column is not displayed.  After the patch is applied
the parts column is displayed only on those bibs that contain parts.

For these two particular tables, it also refactors the method
in which the copies are numbered with the lists.  Prior to the patch the
mobile display would show the copy number, but it would stop at 10 for both
of these tables, because that's what was defined in CSS.  They should now
display a number for each table row displayed.

Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: John Amundson <jamundson@cwmars.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
23 months agoLP1983020-Bootstrap opac: Electronic links pagination button.
Garry Collum [Fri, 5 Aug 2022 13:27:33 +0000 (13:27 +0000)]
LP1983020-Bootstrap opac: Electronic links pagination button.

Fixes the placement of the previous and next buttons in the Bootstrap Opac
when the record contains electronic links and physical items.

To Test:
1. To fully test a record with physical items, a record with electronic
links, and a record with both physical items and electronic links need
to be viewed in the opac.
2. On each of these records notice the placement of the previous
or next buttons.
3. Apply the patch.
4. View the 3 types of records after the patch is applied.

Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
23 months agoLP#1983729: Bootstrap Opac: fix copy navigation links in small screens
Garry Collum [Wed, 10 Aug 2022 17:05:14 +0000 (17:05 +0000)]
LP#1983729: Bootstrap Opac: fix copy navigation links in small screens

This moves the previous, next, and Show more copies links out of the
copies table so that these values do not have incorrect labels on small
screens.

To test:
1. Retrieve a bib record with a large number of copies.
2. In a small screen notice that the previous, next, and show more copies
links are labeled, as Library and Call Number.
3. Apply the patch.
4. Repeat step 2.

Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: John Amundson <jamundson@cwmars.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
23 months agoLP1980304 Bootstrap: Facets move when viewing results for grouped records.
Garry Collum [Wed, 14 Sep 2022 15:01:00 +0000 (15:01 +0000)]
LP1980304 Bootstrap: Facets move when viewing results for grouped records.

Fixes the displacement of the facets in the bootstrap opac when viewing grouped records.

To test:
1. Perform a search in the bootstrap opac with the Group Formats and Editions option
selected.  In concerto - "Ready Player One"
2. Click on a resulting title that contains more than one format.
3. Notice the placement of the facets.
4. Apply the patch and repeat.
5. The facets should no longer be displaced when viewing metarecords or non-metarecords.

Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
23 months agoLP1966995: Bootstrap Opac: fix display of 856 $n, $z, and $3
Garry Collum [Fri, 5 Aug 2022 14:45:27 +0000 (14:45 +0000)]
LP1966995: Bootstrap Opac: fix display of 856 $n, $z, and $3

This fixes the display in the Bootstrap Opac for the 856 subfields n, z, and
3.

To test:

1. Create a record(s) with 856 fields which contain a combination of
subfield n, z and 3's.
2. Prior to the patch the fields do not display in the bootstrap opac.
3. Apply the patch.
4. The fields will now display.

Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: Carol Witt <wittc@cwmars.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
23 months agoLP#1976126: (follow-up) update method documentation
Galen Charlton [Tue, 11 Oct 2022 20:06:24 +0000 (16:06 -0400)]
LP#1976126: (follow-up) update method documentation

This patch updates the open-ils.actor.patron.update method
documentation to explicitly state that updates to patron notes,
user activity, and standing penalities via that method are
ignored. This is to try to avoid a regression on this bug, as
otherwise it might be plausible for the method to allow the notes
and standing penalties (at least) to be updated.

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
23 months agoLP#1976126: Don't send useless (big) user data
Mike Rylander [Fri, 27 May 2022 20:48:41 +0000 (16:48 -0400)]
LP#1976126: Don't send useless (big) user data

When saving a user in the AngularJS UIs, we currently send the notes,
usr_activity, and standing_penalties fields to the actor service.
However, that's not how those get updated, and with large sets that can
cause problems.  This commit removes those fields before saving the
user.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
23 months agoDocs: updates to Standing Penalties and Group Penalty Thresholds
Andrea Buntz Neiman [Thu, 26 Jan 2023 16:28:49 +0000 (11:28 -0500)]
Docs: updates to Standing Penalties and Group Penalty Thresholds

Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
23 months agoLP 1999696 - Saving stat cats and values in holdings templates
Jessica Woolford [Fri, 6 Jan 2023 20:32:42 +0000 (15:32 -0500)]
LP 1999696 - Saving stat cats and values in holdings templates

Updating the saveTemplate function so that is consults statCatValues

Signed-off-by: Jessica Woolford <jwoolford@biblio.org>
Signed-off-by: Beth Willis <willis@noblenet.org>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
23 months agoLP19800544 Import all holdings templates
Adam Woolford [Fri, 6 Jan 2023 20:13:53 +0000 (15:13 -0500)]
LP19800544 Import all holdings templates

Adds loop to importTemplate function so that the whole file will import

Signed-off-by: Adam Woolford <adam.woolford@hotmail.com>
Signed-off-by: Jessica Woolford <jwoolford@biblio.org>
Signed-off-by: Beth Willis <willis@noblenet.org>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
23 months agoDocs: global flags docs fixes
Andrea Buntz Neiman [Thu, 19 Jan 2023 21:32:14 +0000 (16:32 -0500)]
Docs: global flags docs fixes

Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
23 months agoDocs: web services docs fix
Andrea Buntz Neiman [Wed, 18 Jan 2023 20:52:53 +0000 (15:52 -0500)]
Docs: web services docs fix

Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
23 months agoForward Port 3.8.1 Upgrade Script
Jason Boyer [Fri, 13 Jan 2023 19:42:52 +0000 (14:42 -0500)]
Forward Port 3.8.1 Upgrade Script

Signed-off-by: Jason Boyer <JBoyer@equinoxOLI.org>
23 months agoDocs: Evergreen web services docs
Galen Charlton [Thu, 12 Jan 2023 17:38:32 +0000 (12:38 -0500)]
Docs: Evergreen web services docs

Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
23 months agoLP#1955079: Use Email::MIME for emailing records in the OPAC
Jane Sandberg [Thu, 5 May 2022 05:42:26 +0000 (22:42 -0700)]
LP#1955079: Use Email::MIME for emailing records in the OPAC

Email::Simple was mangling the headers.  Let's use Email::MIME instead.

Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
23 months agoLP#1955079: Staff catalog can't email records
Mike Rylander [Wed, 12 Jan 2022 16:25:59 +0000 (11:25 -0500)]
LP#1955079: Staff catalog can't email records

The angular staff catalog uses the new print/email records
functionality, but calls it without some expected parameters.  This
causes the backend method to fail as it assumes the params will exist.

This commit removes that assumption by testing the length of the
parameter list before attempted to read them.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
23 months agoLP1992490-Bootstrap Opac: sr-only, aria-label, and title localization.
Garry Collum [Tue, 11 Oct 2022 17:47:14 +0000 (17:47 +0000)]
LP1992490-Bootstrap Opac: sr-only, aria-label, and title localization.

Corrects some instances of non-localization of sr-only fields, aria-labels,
and title attributes.  Also corrects some stray display strings that were
not localized.

To test:

Apply the patch, and view each page to see if it renders. View the page
source of each page to see if the sr-only fields, aria-labels, and
title attributes are rendered correctly.

Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: Stephanie Leary <stephanie.leary@equinoxOLI.org>
Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
23 months agoLP1422927 Opac hold history pagination
Garry Collum [Thu, 25 Aug 2022 17:44:13 +0000 (17:44 +0000)]
LP1422927 Opac hold history pagination

Fixes the hold history pagination in both the TPac and the Bootstrap opac.

To test:
1. Login as a patron and enable the hold history preference.  The default
number of items on each page is 15, so place at least 16 holds for this
patron.  (The limit can be overridden in the url with the &limit switch).
2. View the hold history and notice that all items are displaying on all
pages.
3. Apply the patch
4. The results are now paginated with 15 items per page.

Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
2 years agoLP1999954 Modal header color contrast fixes
Stephanie Leary [Sat, 17 Dec 2022 00:58:36 +0000 (18:58 -0600)]
LP1999954 Modal header color contrast fixes

Changes modal header and close button to white in order to pass WCAG
color contrast checks.

Signed-off-by: Stephanie Leary <stephanie.leary@equinoxOLI.org>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
2 years agoLP#1908455 - Prevent multiple server processes
Clayton Liddell [Wed, 16 Dec 2020 22:12:44 +0000 (16:12 -0600)]
LP#1908455 - Prevent multiple server processes

Check for the existence of a server process before creating a new
server process in oils_ctl.sh.

Signed-off-by: Clayton Liddell <clayton@librarymarket.com>
Signed-off-by: Jason Boyer <JBoyer@equinoxOLI.org>
2 years agoDocs: updating Global Flags docs
Andrea Buntz Neiman [Thu, 22 Dec 2022 17:25:58 +0000 (12:25 -0500)]
Docs: updating Global Flags docs

Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
2 years agoLP1974581 Publication Year Filter Fields Out of Alignment
Scott Angel [Wed, 7 Dec 2022 21:59:44 +0000 (15:59 -0600)]
LP1974581 Publication Year Filter Fields Out of Alignment

Added 5px margin to the top of the <select> dropdown.

Signed-off-by: Scott Angel <scottangel@mobiusconsortium.org>
Signed-off-by: Stephanie Leary <stephanie.leary@equinoxOLI.org>
Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
2 years agoLP1999446 Localize "Record Summary" card heading
Stephanie Leary [Mon, 12 Dec 2022 21:48:31 +0000 (15:48 -0600)]
LP1999446 Localize "Record Summary" card heading

Wraps the bib summary card heading in a span for localization.

Signed-off-by: Stephanie Leary <stephanie.leary@equinoxOLI.org>
Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
2 years agoLP#1971745 - speed up open-ils.storage.action.live_holds.wide_hash
Josh Stompro [Tue, 22 Nov 2022 18:09:46 +0000 (12:09 -0600)]
LP#1971745 - speed up open-ils.storage.action.live_holds.wide_hash

Postgresql 10 and EG 3.9.0

The query to grab holds on the hold shelf was taking 35-50 seconds on
a test system to return 466 records.  Explain analyze showed that the
left join on asset.call_number was causing a sequential scan and reading
all asset.call_number rows.

Letting PG know that the two conditions of the join are mutually exclusive
seems to let PG know that an index scan is faster.

Signed-off-by: Josh Stompro <stomproj@larl.org>
Signed-off-by: Jason Stephenson <jstephenson@cwmars.org>
2 years agoLP#1971745: work around issue that can cause large hold shelf lists to fail
Galen Charlton [Thu, 5 May 2022 16:44:26 +0000 (12:44 -0400)]
LP#1971745: work around issue that can cause large hold shelf lists to fail

This patch addresses an issue where hold shelf lists with
more than ~350 rows can fail to be retrieved. It works by
making the open-ils.circ.hold.wide_hash.stream method fetch
the holds from an open-ils.storage method in one fell swoop,
rather than both streaming the list from open-ils.storage and
streaming it back to the client that invoked the open-ils.circ
method.

I suspect that this is working around a subtle OpenSRF bug when
bidirectional streaming is in play, but I'm not positive.

To test
-------
[1] Set up an environment with hundreds or thousands of holds on
    a shelf at an OU.
[2] Attempt to display the holds shelf list.
[3] It may fail; if it doesn't, try with even larger number of holds
    or by setting up a test system that has ejabberd s2s going on
    to service requests.
[4] Apply the patch and repeat step 2. This time, the holds shelf
    list should be consistently retrieved. There will also be a
    user-visible change: the spinner on the AngularJS holds shelf page
    will pause for a few seconds, then start advancing.

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Signed-off-by: Josh Stompro <stompro@stompro.org>
Signed-off-by: Jason Stephenson <jstephenson@cwmars.org>
2 years agoLP1995211: Angular styleext setting is now called style
Jane Sandberg [Sun, 30 Oct 2022 14:25:32 +0000 (07:25 -0700)]
LP1995211: Angular styleext setting is now called style

Signed-off-by: Jane Sandberg <js7389@princeton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 years agoLP1980275 Bootstrap - buttons on two lines in current hold screen
Garry Collum [Fri, 29 Jul 2022 15:26:45 +0000 (15:26 +0000)]
LP1980275 Bootstrap - buttons on two lines in current hold screen

This fixes the button arrangement in the Bootstrap Opac's Current Items on Hold screen.

To test:
1. Place some items on hold for patron.
2. Login as that patron in the Bootstrap opac.
3. View the Current Items on Hold screen and notice the buttons are on two lines.
4. Apply the patch.
5. View the Current Itesms on Holcs screen to see that the buttons are now arranged on a
single line.

Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: John Amundson <jamundson@cwmars.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 years agoLP 1944602 Bootstrap Opac: Address alignment
Garry Collum [Tue, 23 Aug 2022 19:47:00 +0000 (19:47 +0000)]
LP 1944602 Bootstrap Opac: Address alignment

Fixes the alignment of patron addresses in the Bootstap opac, if the
patron as more than one address.  Two addresses will now display
side-by-side in a row, except on smaller screens.

To test:

1. To fully test use patrons with one address, two addresses, and more than
two addresses.
2. Login as each patron and notice the mis-aligned addresses.
3. Apply the patch.
4. The addresses should now be displayed side-by-side, two per row. They
collapse to one per row on smaller screens.
5. Enable the 'Allow pending addresses' library setting.  The editable
address displays in the same space as it's non-editable display.

Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: John Amundson <jamundson@cwmars.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 years agoLP1955403-Bootstrap opac - Google Books preview not rendering.
Garry Collum [Mon, 20 Dec 2021 12:59:27 +0000 (07:59 -0500)]
LP1955403-Bootstrap opac - Google Books preview not rendering.

Fixes the Google Books preview in the Bootstrap Opac.

To test.
1. Set ctx.google_books_preview=1 in config.tt2.
2. View a bibliographic record that would have an ISBN that would link to
a google book preview.  In concerto you can change and ISBN on a record to
and ISBN that you know would pull data (97880271037829781629795645).
3. Notice there is no preview button link, or preview.
4. Apply the patch and refresh.  The google preview button should render.
Clicking on the button will display the preview.

Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: Eva Cerninakova <cerninakova@jabok.cz>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 years agoLP1915440 Clear Hopeless Date on Capture
Bill Erickson [Mon, 8 Aug 2022 18:04:55 +0000 (14:04 -0400)]
LP1915440 Clear Hopeless Date on Capture

Clear the hold hopeless date when a copy is captured for the hold.

One way to make this happen for testing:

. Configure the Missing copy status as holdable=true hopeless_prone=true
. Place hold with only 1 viable copy.
. Mark said copy as missing -- this stamps a hopeless_date on the hold.
. Check the copy in.  This results in a capture + hopeless hold.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Susan Morrison <smorrison@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 years agoLP1991590: Better order for survey admin fields
Jane Sandberg [Mon, 3 Oct 2022 23:08:38 +0000 (16:08 -0700)]
LP1991590: Better order for survey admin fields

To test:
1. Press Admin > Local Admin
2. Press Surveys
3. Create a new survey.
4. Notice that the Start Date field comes before the End Date field.
5. Repeat steps 1-2.
6. Select a survey and edit selected.
7. Notice that the Start Date again comes before the End Date.

Signed-off-by: Jane Sandberg <js7389@princeton.edu>
Signed-off-by: Shula Link <slink@gchrl.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 years agoLP#1969994: Add Release Note
Jason Boyer [Tue, 15 Nov 2022 13:25:38 +0000 (08:25 -0500)]
LP#1969994: Add Release Note

Signed-off-by: Jason Boyer <JBoyer@equinoxOLI.org>
2 years agoLP#1969994: Stripe: Add User Database ID
Terran McCanna [Fri, 22 Apr 2022 21:12:47 +0000 (17:12 -0400)]
LP#1969994: Stripe: Add User Database ID

Adds the patron's database ID to the payment intent so that
payments can be more easily reconciled with the Evergreen
database.

Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: Jason Boyer <JBoyer@equinoxOLI.org>
2 years agoLP1995653: small create_release_notes script changes
Jane Sandberg [Fri, 4 Nov 2022 01:46:40 +0000 (18:46 -0700)]
LP1995653: small create_release_notes script changes

Signed-off-by: Jane Sandberg <js7389@princeton.edu>
Signed-off-by: Jason Boyer <JBoyer@equinoxOLI.org>
2 years agoLp 1943634: Fix MARC Stream Importer Temp File Creation
Jason Stephenson [Tue, 14 Sep 2021 19:02:38 +0000 (15:02 -0400)]
Lp 1943634: Fix MARC Stream Importer Temp File Creation

Use fileparse on $0 in marc_stream_importer.pl to get the program's
basename and use that instead of $0 to generate the temp file's name.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Jason Boyer <JBoyer@equinoxOLI.org>
2 years agoLP1755876: Add progress bar when renewing items
Jessica Woolford [Thu, 29 Sep 2022 17:27:20 +0000 (13:27 -0400)]
LP1755876: Add progress bar when renewing items

Signed-off-by: Jessica Woolford <jwoolford@biblio.org>
Signed-off-by: Susan Morrison <smorrison@georgialibraries.org>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
2 years agoLP#1989133: Bootstrap physical description display error.
Steven Callender [Thu, 8 Sep 2022 16:47:38 +0000 (12:47 -0400)]
LP#1989133: Bootstrap physical description display error.

Signed-off-by: Steven Callender <stevecallender@esilibrary.com>
Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
2 years agoLP1972928: Show course user role dropdown choices without typing
Jane Sandberg [Tue, 4 Oct 2022 01:22:48 +0000 (18:22 -0700)]
LP1972928: Show course user role dropdown choices without typing

To test:
1. Go to Admin > Local Admin > Course List
2. Choose a course
3. Go to the Course users tab
4. Activate the Role dropdown.
5. Note that no options appear.
6. Apply the patch
7. Repeat steps 1-5
8. Note that the role options appear when you activate the dropdown now

Signed-off-by: Jane Sandberg <js7389@princeton.edu>
Signed-off-by: Jennifer Pringle <jennifer.pringle@bc.libraries.coop>
Signed-off-by: Stephanie Leary <stephanie.leary@equinoxOLI.org>
2 years agoLP1824709: Allow comboboxes inputs to have IDs
Jane Sandberg [Thu, 17 Sep 2020 21:13:54 +0000 (14:13 -0700)]
LP1824709: Allow comboboxes inputs to have IDs

This adds a new input, domId, for the combobox component.

A good way to test:

1) Download the Wave accessibility checker.
2) Go to one of the following screens:
  - Admin > Local > Course Reserves > Choose a course > Associate
    item from catalog
  - Admin > Local > Course Reserves > Choose a course > Associate
    brief record
  - MARC Batch Import
  - MARC Batch Import/Export > Inspect Queue
  - Staff Catalog Add to bucket
  - Staff catalog conjoined items
  - Hold cancel dialog
3) Right click and select "WAVE this page"
4) On the Details tab of WAVE, notice that there are several "Missing
   form label" errors.
5) Apply this patch.
6) Run WAVE again; notice that the number of missing form label errors
   has decreased.

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Garry Collum <gcollum@gmail.com>
2 years agoLP1993859 Keyboard tabbing for results pagination
Stephanie Leary [Fri, 21 Oct 2022 21:15:57 +0000 (16:15 -0500)]
LP1993859 Keyboard tabbing for results pagination

In the staff catalog search results pagination component, adds
tabindex="0" to link tags without href attributes to enable keyboard
navigation.

Signed-off-by: Stephanie Leary <stephanie.leary@equinoxOLI.org>
Signed-off-by: Christine Burns <christine.burns@bc.libraries.coop>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
2 years agoLP1994159 Higher contrast H2s
Stephanie Leary [Tue, 25 Oct 2022 16:29:53 +0000 (11:29 -0500)]
LP1994159 Higher contrast H2s

The Evergreen logo color used for H2s, including the card headers on the
staff splash page, doesn't pass color contrast checks. I've also removed
the underlines, as those should be used only for links.

Signed-off-by: Stephanie Leary <stephanie.leary@equinoxOLI.org>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
2 years agoforward-port 3.9.0-3.9.1 update
Galen Charlton [Wed, 2 Nov 2022 01:55:02 +0000 (21:55 -0400)]
forward-port 3.9.0-3.9.1 update

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 years agofix version stamp in 1341 update
Galen Charlton [Wed, 2 Nov 2022 01:53:46 +0000 (21:53 -0400)]
fix version stamp in 1341 update

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 years agoTranslation updates - newpot
Galen Charlton [Tue, 1 Nov 2022 20:31:50 +0000 (16:31 -0400)]
Translation updates - newpot

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 years agoadd additional fixes in 3.9.1 to release notes
Galen Charlton [Tue, 1 Nov 2022 20:12:21 +0000 (16:12 -0400)]
add additional fixes in 3.9.1 to release notes

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 years agodocs: release notes 3.9.1 and 3.8.2
Jennifer Pringle [Tue, 18 Oct 2022 13:33:47 +0000 (09:33 -0400)]
docs: release notes 3.9.1 and 3.8.2

Author: Jennifer Pringle <jennifer.pringle@bc.libraries.coop>
Author: Jennifer Weston <jennifer.weston@equinoxoli.org>
Signed-off-by: Andrea Buntz Neiman <abneiman@equinoxinitiative.org>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 years agocheck in latest cs-CZ strings for the Angular staff client
Galen Charlton [Tue, 1 Nov 2022 19:45:08 +0000 (15:45 -0400)]
check in latest cs-CZ strings for the Angular staff client

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 years agoLP#1982887: (follow-up) set l10n list back to en-US
Galen Charlton [Tue, 1 Nov 2022 19:42:29 +0000 (15:42 -0400)]
LP#1982887: (follow-up) set l10n list back to en-US

This works around an issue where the Angular staff client's
navbar langauge selector selects all provided locales, but
that can break things without additional configuration.

To enable the Czech translation, edit

Open-ILS/src/eg2/src/environments/environment.prod.ts

to add 'cs-CZ' to the list of locales, then rebuild the
Angular app using

ng build --configuration=production

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 years agoLP1982887: Repair translations for eg2 client
Jason Boyer [Wed, 27 Jul 2022 22:07:59 +0000 (18:07 -0400)]
LP1982887: Repair translations for eg2 client

Previously following the build instructions for the Czech localization
placed the results in eg2/cs-CZ/cs-CZ and also broke the en-US build.
These changes bring the staff client a little more in line with current
Angular localization methods.

Note that currently both en-US and cs-CZ are always built. This can be
limited to en-US by using "--localize false" on the ng build command line.
Until an alternative method to determine the number of available locales is
implemented the only way to hide the locale selector is to edit environment.prod.ts.

Signed-off-by: Jason Boyer <JBoyer@equinoxOLI.org>
Signed-off-by: Linda Jansova <skolkova@chello.cz>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
2 years agoLP#1931737: Stamping upgrade scripts
Mike Rylander [Tue, 25 Oct 2022 15:51:04 +0000 (11:51 -0400)]
LP#1931737: Stamping upgrade scripts

Signed-off-by: Mike Rylander <mrylander@gmail.com>
2 years agoLP#1931737: Allow the delay of symspell updates
Mike Rylander [Fri, 13 May 2022 16:35:24 +0000 (12:35 -0400)]
LP#1931737: Allow the delay of symspell updates

This commit adds a new internal flag, auto-created at the time of need,
to control whether record ingest will cause immediate updates to the
symspell dictionary, or if those updates will simply be recorded for
later incorporation.  Inline symspell dictionary updates can cause
record updates to be logically serialized, impacting the preformance of
other tools used for batch reingest.

pingest.pl is changed to allow an administrator to make use of this
feature via the --delay-symspell command line flag.

NOTE: includes a minor fixup from blake@mobiusconsortium.org for a
syntax error.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: blake <blake@mobiusconsortium.org>
2 years agoLP#1931737: DYM can cause deadlocks w/ parallel ingest
Mike Rylander [Fri, 4 Mar 2022 15:38:12 +0000 (10:38 -0500)]
LP#1931737: DYM can cause deadlocks w/ parallel ingest

This patch causes all symspell dictionary updates to occur at then end
of metabib search field updates in one go, which allows Postgres' INSERT
... ON CONFLICT mechanism to properly lock and serialize changes when
necessary.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: blake <blake@mobiusconsortium.org>
2 years agoLP1993922 - Fix terminology Archival->Archiving
Michele Morgan [Mon, 24 Oct 2022 20:54:35 +0000 (16:54 -0400)]
LP1993922 - Fix terminology Archival->Archiving

Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
2 years agoLP1993922: Course material delete should not delete other courses' materials
Jane Sandberg [Sat, 22 Oct 2022 22:43:10 +0000 (15:43 -0700)]
LP1993922: Course material delete should not delete other courses' materials

To test:
* Apply this patch
* Login to BR1 workstation
* Go to Admin - Local Admin - Course Reserves List
* Create two courses, Course 1 and Course 2
* Associate materials to both courses
* Archive Course 1
* Go to Course materials on Course 2 and note that
it still has all of its materials attached.

Signed-off-by: Jane Sandberg <js7389@princeton.edu>
Signed-off-by: Beth Willis <willis@noblenet.org>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
2 years agoLP 1993534: Followup to replace deprecated command
Jason Boyer [Thu, 20 Oct 2022 21:32:09 +0000 (17:32 -0400)]
LP 1993534: Followup to replace deprecated command

Running ng xi18n manually complained that it's deprecated and extract-i18n
is the new hotness.

Signed-off-by: Jason Boyer <JBoyer@equinoxOLI.org>
Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
2 years agoLP1993534: Command line flag usage for ng xi18n
Jane Sandberg [Wed, 19 Oct 2022 13:28:40 +0000 (06:28 -0700)]
LP1993534: Command line flag usage for ng xi18n

To test:

1) cd [Evergreen repo]/Open-ILS/src/eg2
2) npm install
3) npm run export-strings # should fail
4) Apply this patch
5) npm run export-strings # should successfully create a file in the locales directory

Signed-off-by: Jane Sandberg <js7389@princeton.edu>
Signed-off-by: Jason Boyer <JBoyer@equinoxOLI.org>
2 years agoLP1913604 - Stamping upgrade script
Michele Morgan [Tue, 18 Oct 2022 21:12:19 +0000 (17:12 -0400)]
LP1913604 - Stamping upgrade script

Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
2 years agoLP1913604: Course materials module should remember original circ_lib
Jane Sandberg [Wed, 14 Sep 2022 03:21:12 +0000 (20:21 -0700)]
LP1913604: Course materials module should remember original circ_lib

Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
2 years agoLP1913604: course materials module shouldn't move items to different owning libs
Jane Sandberg [Thu, 19 May 2022 21:04:05 +0000 (15:04 -0600)]
LP1913604: course materials module shouldn't move items to different owning libs

To test:
1) Create a course that can have volumes (e.g. a branch or bookmobile, not a consortium)
2) Associate an item with that course that is from a different branch
3) Note that the item's owning and circ libraries have not changed.

Signed-off-by: Jane Sandberg <js7389@princeton.edu>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
2 years agoLP1913604: Alert staff when associating item with course at a different library
Jane Sandberg [Thu, 28 Jan 2021 22:26:19 +0000 (14:26 -0800)]
LP1913604: Alert staff when associating item with course at a different library

1) Create a new course at a branch that can have items (BR3, for
   example).
2) Add an item with the circ_lib of BR3. Note that the item is
   added to the grid.
3) Add an item with a different circ_lib. Note that you get an
   alert showing that the item is not at the course's owning library.
4) Push the Cancel button.  Notice that the item is not added to the
   course.
5) Repeat step 3 and push the Confirm button.  Notice that the item is
   added to the course this time.

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
2 years agoLP1940105: Perl detach material correctly resets item location
Jane Sandberg [Sat, 3 Sep 2022 00:49:55 +0000 (17:49 -0700)]
LP1940105: Perl detach material correctly resets item location

Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
2 years agolp1940105 Archive Course Should Use detach_material
Kyle Huckins [Sun, 27 Feb 2022 01:33:29 +0000 (01:33 +0000)]
lp1940105 Archive Course Should Use detach_material

- Replaced resetItemFields with detachMaterials in Course Service
- Refactored disassociateMaterials to utilize detach_materials
- Refacotred deleteSelectedMaterials to utilize Course Service detachMaterials function

Signed-off-by: Kyle Huckins <khuckins@catalyte.io>
Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
2 years agoLP1898775: Add basket to bucket in bootstrap
Jane Sandberg [Wed, 12 Oct 2022 23:38:20 +0000 (16:38 -0700)]
LP1898775: Add basket to bucket in bootstrap

The bootstrap OPAC uses links, rather than <select> for the basket dropdown, so the
existing event listener couldn't get attached to the correct element.

To test:
1. Confirm that you are using the bootstrap OPAC.
2. In the staff client, select the traditional staff catalog.
3. Add several items to your basket.
4. Click the basket icon, and select 'Add Basket to Bucket'
5. Note that you get a 404 error.
6. Apply this patch.
7. Repeat steps 1-3.
8. Note that you can now select a bucket, and that the process completes successfully.

Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
2 years agoLP1980297 Booking:reservations page not formatted in bootstrap opac
Garry Collum [Thu, 7 Jul 2022 18:17:05 +0000 (18:17 +0000)]
LP1980297 Booking:reservations page not formatted in bootstrap opac

Formats the page's title and table in a consistent manner with other
pages in the bootstrap opac's myopac pages.  Also adds CSS so that
the correct labels are displayed on smallish screens.

To test.

1. Set ctx.show_reservations_tab in config.tt2 to true.
2. Create a couple of bookings for a patron and login to the opac as that
patron.
3. In the opac go to the reservations screen and notice the formatting.
Resize the screen to view the display on a small scale.
4. Apply the patch
5. Repeat 3 and now notice the page title and the table formatting. View
the table in a small screen.
6. Also view the reservations page as a patron with no bookings.

Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: Jennifer Pringle <jennifer.pringle@bc.libraries.coop>
Signed-off-by: Jane Sandberg <sandbergja@gmail.com>
2 years agoLP1501870: stamping upgrade script
Jane Sandberg [Fri, 14 Oct 2022 22:02:06 +0000 (15:02 -0700)]
LP1501870: stamping upgrade script

Signed-off-by: Jane Sandberg <js7389@princeton.edu>
2 years agoLP#1501870 - Remove invalid Z39.50 search attribute from LOC
Michele Morgan [Wed, 25 May 2022 14:02:13 +0000 (10:02 -0400)]
LP#1501870 - Remove invalid Z39.50 search attribute from LOC

Removes the 1001 Item Type attribute from seed date for LOC.

Also includes an upgrade script to remove the 1001 attribute from
config.z3950_attr.

Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
2 years agoLP1956619 Holdings editor sanity check for VIEW_USER perm
Bill Erickson [Mon, 11 Jul 2022 14:58:40 +0000 (10:58 -0400)]
LP1956619 Holdings editor sanity check for VIEW_USER perm

When the staff accessing holdings in the holdings editor do not have the
VIEW_USER permission at a level sufficient to display the creator/editor
of a set of items, display the ID of the user instead of attempting and
failing to display the username, which causes a page rendering error.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Mary Llewellyn <mllewell@biblio.org>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
2 years agoLP#1956619: use Angular holdings editor when accessing from item status and item...
Jeff Davis [Fri, 21 Jan 2022 22:17:25 +0000 (14:17 -0800)]
LP#1956619: use Angular holdings editor when accessing from item status and item buckets

Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
2 years agoLP1891375 Perm Group Editor Indicates Overridden Perms
Bill Erickson [Thu, 7 Jul 2022 16:29:22 +0000 (12:29 -0400)]
LP1891375 Perm Group Editor Indicates Overridden Perms

When a permission for the selected group overrides the same permission
applied to a parent group, indicate it in the permission list with an
icon.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
2 years agoLP1735221 Item Alert Prevents Hold Capture Delay Verification
Dan Briem [Thu, 4 Aug 2022 02:46:06 +0000 (22:46 -0400)]
LP1735221 Item Alert Prevents Hold Capture Delay Verification

Clicking OK on an item alert triggers a checkin override. If the
response contains an override event, an error is thrown. Since
a hold capture delay event is handled as an override, an error
throws before the hold capture delay dialog opens.

This handles the capture delay event separately from the override
events so the dialog will open after an override attempt.

To test:
1. set Hold Capture Requires Verification on a shelving location
2. add an item alert to an item in that shelving location
3. place an item hold on that item
4. checkin that item
5. click OK on the alert dialog and Capture on the delay dialog
6. note the hold is captured`

Signed-off-by: Dan Briem <dbriem@wlsmail.org>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
2 years agolp1930896 - Course Reserves Carriage Return Shouldn't Add
Kyle Huckins [Wed, 9 Feb 2022 23:20:50 +0000 (23:20 +0000)]
lp1930896 - Course Reserves Carriage Return Shouldn't Add

- Removed Enter KeyUp property from the Patron Barcode field on Associate User
- Removed Enter KeyUp property from the Item Barcode field on Associate Item

Signed-off-by: Kyle Huckins <khuckins@catalyte.io>
Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: Beth Willis <willis@noblenet.org>
Signed-off-by: Jane Sandberg <js7389@princeton.edu>
2 years agoLP1821950, LP1980409 - Stamping upgrade script
Michele Morgan [Thu, 13 Oct 2022 18:09:12 +0000 (14:09 -0400)]
LP1821950, LP1980409 - Stamping upgrade script

Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
2 years agoLP1980409 require barcode in order to save
Terran McCanna [Tue, 20 Sep 2022 20:02:47 +0000 (16:02 -0400)]
LP1980409 require barcode in order to save

Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Christine Morgan <cmorgan@noblenet.org>
Signed-off-by: Beth Willis <willis@noblenet.org>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
2 years agoLP1821950 & LP1980409 Option to require call number label
Terran McCanna [Fri, 19 Aug 2022 17:38:56 +0000 (13:38 -0400)]
LP1821950 & LP1980409 Option to require call number label

This uses a new Library Setting for "Require call number labels
in Copy Editor" for the benefit of libraries that with to use a
predefined Prefix (such as FIC or EZ) instead of individual call
number labels for each volume.

When the setting is True, the call number label field is marked
required and the Save buttons disabled until a value is present.

When the setting is False, the call number label is not required.
In addition, the Angular interface adds an additional check for
Prefix, so if the call number label is empty then the Prefix is
required.

Acknowledgements:
Org Unit Setting created by Kyle Huckins
Angular and AngularJS changes done by New Developers Working Group

Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
2 years agolp1821950 Require Call Number Label YAOUS
Kyle Huckins [Thu, 16 May 2019 22:05:55 +0000 (22:05 +0000)]
lp1821950 Require Call Number Label YAOUS

- Add YAOUS to Require Call Number Labels in Copy Editor
- Set new YAOUS to true
- Don't display empty call number field warning if call numbers
aren't required on the copy editor.
- Properly enable/disable saving an item in the volcopy editor when
CN label is empty, based on Require Call Number Label setting.

Signed-off-by: Kyle Huckins <khuckins@catalyte.io>
 Changes to be committed:
modified:   Open-ILS/src/sql/Pg/950.data.seed-values.sql
new file:   Open-ILS/src/sql/Pg/upgrade/XXXX.lp1821950-call-number-label-required-yaous.sql
modified:   Open-ILS/web/js/ui/default/staff/cat/volcopy/app.js

Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
2 years agoLP1838553 User Display Name
Michele Morgan [Wed, 12 Oct 2022 20:40:21 +0000 (16:40 -0400)]
LP1838553 User Display Name

Add preferred names to 'User Alias or Display Name'

Signed-off-by: Michele Morgan <mmorgan@noblenet.org>