Evergreen.git
2 years agoLP#1842431 Make renewal failure reason more appropriate for patron notifications
Michele Morgan [Thu, 12 Sep 2019 20:30:47 +0000 (16:30 -0400)]
LP#1842431 Make renewal failure reason more appropriate for patron notifications

Changes the failure reason for the autorenewal to include only the desc,
Removes the textcode of the event, which shouldn't be included in a patron notice.

Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Jason Boyer <JBoyer@equinoxinitiative.org>
2 years agoLP#1754110: (follow-up) release notes tweak
Galen Charlton [Thu, 30 Jul 2020 14:26:36 +0000 (10:26 -0400)]
LP#1754110: (follow-up) release notes tweak

Update the release notes to indicate which staff
client template one would typically customize to
make use of this feature.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agolp1754110 Patron Reg Field Label Override Release Notes
Kyle Huckins [Tue, 11 Sep 2018 17:38:01 +0000 (17:38 +0000)]
lp1754110 Patron Reg Field Label Override Release Notes

- Add release notes for improvements to draw_field_label

Signed-off-by: Kyle Huckins <khuckins@catalyte.io>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP#1754110 Patron Reg. Field Label Override
Kyle Huckins [Wed, 7 Mar 2018 17:47:23 +0000 (17:47 +0000)]
LP#1754110 Patron Reg. Field Label Override

Supply additional parameter to draw_field_label macro to
apply custom labels to patron reg/edit fields.

Signed-off-by: Kyle Huckins <khuckins@catalyte.io>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP1731370: Distinguishing new copies and volumes with aditional means (WCAG 1.4.1)
Jane Sandberg [Tue, 9 Oct 2018 00:24:20 +0000 (17:24 -0700)]
LP1731370: Distinguishing new copies and volumes with aditional means (WCAG 1.4.1)

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Elaine Hardy <ehardy@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agolp1731370 CSS styling for new items and volumes
Jason Etheridge [Wed, 12 Sep 2018 12:10:32 +0000 (08:10 -0400)]
lp1731370 CSS styling for new items and volumes

previous commit just handled volumes, this handles copies

Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
Signed-off-by: Elaine Hardy <ehardy@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agolp1731370 CSS styling for new items and volumes
Jason Etheridge [Wed, 5 Sep 2018 13:13:49 +0000 (09:13 -0400)]
lp1731370 CSS styling for new items and volumes

in vol/copy editor

Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
Signed-off-by: Elaine Hardy <ehardy@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP#1851541 - Add audio alert for item alert popups
Josh Stompro [Wed, 6 Nov 2019 18:24:36 +0000 (12:24 -0600)]
LP#1851541 - Add audio alert for item alert popups

Signed-off-by: Josh Stompro <stompro@stompro.org>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP1735568, LP1830443: MARC Editor Fixes
Christine Morgan [Thu, 21 Nov 2019 17:53:11 +0000 (12:53 -0500)]
LP1735568, LP1830443: MARC Editor Fixes

These style changes to the current MARC Editor fix the indicator box
resize problem and the blank subfield problem while improving usability.
Colors were tested using the Chrome extension Colorblindly, a
colorblindness simulator.

Signed-off-by: Christine Morgan <cmorgan@noblenet.org>
Signed-off-by: Elaine Hardy <ehardy@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP1889296 Staffcat holds request time includes time
Bill Erickson [Tue, 28 Jul 2020 21:21:28 +0000 (17:21 -0400)]
LP1889296 Staffcat holds request time includes time

Display the hold request time as date plus time in the general purpose
Angluar holds grid.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
2 years agoLP#1776757: (follow-up) keep input for amount as type "number"
Galen Charlton [Tue, 28 Jul 2020 14:43:25 +0000 (10:43 -0400)]
LP#1776757: (follow-up) keep input for amount as type "number"

Doing this preserves the form validation that ensures that
the user cannot submit the form with a non-numeric amount.

This does lose forcing the display of default amounts such as
"1.50" to two decimal places, but I'm figuring that form validation
takes priority pending a longer-term solution such as a custom
value validator or using ng-currency.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agolp1776757 Default Billing Price Not Updating
Mike Risher [Wed, 29 Jan 2020 20:20:35 +0000 (20:20 +0000)]
lp1776757 Default Billing Price Not Updating

Fix the following bug: When billing a patron and one switches from
one billing type to a different billing type, the price isn't updating
to show the new default price

Signed-off-by: Mike Risher <mrisher@catalyte.io>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP1795469: Opac holdings sort now considers CN suffix
Jane Sandberg [Wed, 3 Oct 2018 16:04:54 +0000 (09:04 -0700)]
LP1795469: Opac holdings sort now considers CN suffix

To test:
1) Create a bunch of Call Number suffixes in Administration
-> Server Administration -> Call Number Suffixes.
2) Go to a bib record, and add a bunch of holdings,
all with the same call number label, owning/circ libraries,
item numbers, and parts (if using parts) but with different
barcodes and CN suffixes.
3) Look at the OPAC view of these holdings.  Note that they
are in order by barcode, without any consideration for
the CN suffix.
4) Apply this commit.
5) Look at the OPAC view again.  Note that they are now sorted
by CN suffix, and then by barcode.

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Josh Stompro <stompro@stompro.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP1882591 Empty combobox avoids default selection
Bill Erickson [Mon, 8 Jun 2020 20:03:14 +0000 (16:03 -0400)]
LP1882591 Empty combobox avoids default selection

When clearing a combobox value, no combobox options are displayed in the
dropdown.  This allows users to clear the value then tab out of the box
without the typeahead magic forcing selection of the first entry.

The full list can still be displayed by clicking on the combobox.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP1878079 Staffcat Add Holdings action support
Bill Erickson [Mon, 27 Jul 2020 14:58:52 +0000 (10:58 -0400)]
LP1878079 Staffcat Add Holdings action support

Teaches the staff catalog Add Holdings button to open the holdings
editor using the appropriate parameters.  If the holdings maintenance
grid is active, arguments to pass are based on the grid selection.
Otherwise it simply open the item editor with a single call number /
copy to be created 'here'.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
2 years agoLP1878079 Staffcat 'Edit' items / call numbers support
Bill Erickson [Wed, 13 May 2020 16:17:19 +0000 (12:17 -0400)]
LP1878079 Staffcat 'Edit' items / call numbers support

Adds support to the Angular staff catalog to properly handle requests
to Edit Items, Edit Call Numbers, and Edit Call Numbers and Items.
Prior to his change, these operations would behave more like Add
operations than Edit operations.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
2 years agoLP1878079 Staffcat Add Call Nums honors selected orgs
Bill Erickson [Mon, 11 May 2020 19:10:37 +0000 (15:10 -0400)]
LP1878079 Staffcat Add Call Nums honors selected orgs

When adding new call numbers from the Angular staff catalog Holdings
View grid, take all selected grid rows into consideration when
determining how many call numbers to add and what their owning libs
should be.

To test:
* Navigate to the Holdings View tab of a record detail page in the Angular
  staff catalog.
* Select multiple rows in the grid which are org unit-only rows (i.e.
  the row does not refer to a specific call number or item).
* From the action menu / right client menu, select "Add Callnumbers"
* Confirm that a call number entry for each selected org unit is present
  in the spawned holdings editor.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
2 years agoLP#1802166: stamp schema update
Galen Charlton [Mon, 27 Jul 2020 14:55:19 +0000 (10:55 -0400)]
LP#1802166: stamp schema update

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP#1802166: (follow-up) document a way to clear names from already-purged patron...
Galen Charlton [Mon, 27 Jul 2020 14:51:37 +0000 (10:51 -0400)]
LP#1802166: (follow-up) document a way to clear names from already-purged patron records

For reference, the following SQL will clear the preferred name
and name keyword fields from already-purged records:

UPDATE actor.usr
SET pref_prefix = NULL,
    pref_first_given_name = NULL,
    pref_second_given_name = NULL,
    pref_family_name = NULL,
    pref_suffix = NULL,
    name_keywords = NULL
WHERE usrname ~ ('^' || id || '-PURGED')
AND NOT active
AND deleted
AND (
    pref_prefix IS NOT NULL OR
    pref_first_given_name IS NOT NULL OR
    pref_second_given_name IS NOT NULL OR
    pref_family_name IS NOT NULL OR
    pref_suffix IS NOT NULL OR
    name_keywords IS NOT NULL
);

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLp 1802166: Purge User Name Keywords
Jason Stephenson [Fri, 15 Feb 2019 18:33:08 +0000 (13:33 -0500)]
Lp 1802166: Purge User Name Keywords

Add the name_keywords field to the fields that get set to null in
actor.usr_delete.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Rogan Hamby <rogan.hamby@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLp 1802166: Purge User Preferred Names
Jason Stephenson [Fri, 15 Feb 2019 17:21:19 +0000 (12:21 -0500)]
Lp 1802166: Purge User Preferred Names

When the preferred names feature was added, the new fields were not
added to the update in the actor.usr_delete function.  This commit
sets those new fields to NULL in that function.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Rogan Hamby <rogan.hamby@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP#1248734: stamp schema update
Galen Charlton [Mon, 27 Jul 2020 14:19:29 +0000 (10:19 -0400)]
LP#1248734: stamp schema update

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP#1248734: (follow-up) add new indexes to schema update script
Galen Charlton [Mon, 27 Jul 2020 14:16:37 +0000 (10:16 -0400)]
LP#1248734: (follow-up) add new indexes to schema update script

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP1248734: add release notes
Jane Sandberg [Sat, 25 Jul 2020 14:15:40 +0000 (07:15 -0700)]
LP1248734: add release notes

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP1248734: Add workstation to in-house use
Chris Sharp [Tue, 16 Jun 2020 15:56:33 +0000 (11:56 -0400)]
LP1248734: Add workstation to in-house use

Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Rogan Hamby <rogan.hamby@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP1819542 Hanging transits can cause checkins to fail
Jason Etheridge [Fri, 5 Jun 2020 13:00:53 +0000 (09:00 -0400)]
LP1819542 Hanging transits can cause checkins to fail

So two bits of defensive programming for do_checkin:

    sub fix_broken_transit_status
    sub cancel_transit_if_circ_exists

I don't know if the first one does anything useful, but the idea is that it'll
at least temporarily set the copy status to In Transit for any status checks
within the do_checkin method that test for that.  It doesn't actually repair
the status permanently (at least in the case of, say, an existing transit being
re-used for a ROUTE_ITEM event).  We may want to do that.

The second one will abort an associated transit (including retargeting a hold
for a hold transit) if both an active transit and an active circulation exist
for the item.  This handles the situation I've been using to test the bug:

    1) transit an item (CONC90000436 in Concerto)
    2) artificially change its status directly in the database (for example, to
       Available)
    3) check it out to a patron (99999376864 in Concerto), noting
       that the Cancel Transit prompt does not get triggered
    4) check in the item

Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
Signed-off-by: Rogan Hamby <rogan.hamby@gmail.com>
Signed-off-by: John Amundson <jamundson@cwmars.org>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
2 years agoLP1858701: prevent doubles slashes in opac iframe urls
Jason Boyer [Wed, 8 Jan 2020 18:37:01 +0000 (13:37 -0500)]
LP1858701: prevent doubles slashes in opac iframe urls

The CGI module (used by mkurl()) does not like it
if we have two slashes in a URL sort/of/like//this.
Things work but the path portion of the URL is doubled
each time mkurl is used on it. This branch fixes 2
causes in the staff OPAC.

Signed-off-by: Jason Boyer <JBoyer@eoli.info>
Signed-off-by: Rogan Hamby <rogan.hamby@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
2 years agoLP#1833300: wrap SRU query in parentheses before appending site param
Jeff Davis [Tue, 18 Jun 2019 20:48:44 +0000 (13:48 -0700)]
LP#1833300: wrap SRU query in parentheses before appending site param

Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Mike Risher <mrisher@catalyte.io>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP1739288: report back on invalid barcodes in Item Status screen
Jane Sandberg [Mon, 19 Aug 2019 19:43:33 +0000 (12:43 -0700)]
LP1739288: report back on invalid barcodes in Item Status screen

To test:

1) Make a text file with both valid and invalid item barcodes.
2) Go to Circulation > Item Status and upload your file.
3) Note that the valid barcodes result in rows in the item status
screen, and the invalid barcodes are not displayed anywhere.
4) Apply this commit.
5) Repeat step 2.
6) Notice that the invalid barcodes are now reported in a new alert.
7) Make a text file with only valid barcodes and upload it.
8) Upload it.  Notice that the alert disappears.

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Josh Stompro <stompro@stompro.org>
LP1739288: Add a summary report to the list of bad barcodes.

(^^ squash of commit written by Josh Stompro)

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Josh Stompro <stompro@stompro.org>
Signed-off-by: Rogan Hamby <rogan.hamby@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP#1847784: (docs) refer to the badge score generator cron job by name
Galen Charlton [Tue, 15 Oct 2019 22:32:19 +0000 (18:32 -0400)]
LP#1847784: (docs) refer to the badge score generator cron job by name

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
2 years agoLP#1847784: install badge_score_generator.pl by default
Galen Charlton [Tue, 15 Oct 2019 22:29:40 +0000 (18:29 -0400)]
LP#1847784: install badge_score_generator.pl by default

To test
-------
[1] Perform an Evergreen installation/upgrade.
[2] Verify that badge_score_generator.pl is present
    in /openils/bin (or an alternative installation
    location specified during the ./configure step).

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
2 years agoLP1867524: Add a help popover to the End field in the Closed Dates Editor
Jane Sandberg [Sun, 15 Mar 2020 15:49:48 +0000 (08:49 -0700)]
LP1867524: Add a help popover to the End field in the Closed Dates Editor

To test:
1) Go to Administration > Local Administration > Closed Dates Editor.
2) Click Add Closing.
3) Under closing type, choose Multiple Day.
4) Note that the End field has no guidance for the user.
5) Apply this commit.
6) Repeat steps 1-3.
7) Notice that the End field has some clarifying guidance for the user.

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Mike Risher <mrisher@catalyte.io>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP#1852443 - Re-label duplicate-named "all circulations" source
Chris Sharp [Wed, 13 Nov 2019 15:28:53 +0000 (10:28 -0500)]
LP#1852443 - Re-label duplicate-named "all circulations" source

Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Rogan Hamby <rogan.hamby@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
2 years agoLP1747542: Stamp upgrade script
Jason Boyer [Fri, 24 Jul 2020 13:53:16 +0000 (09:53 -0400)]
LP1747542: Stamp upgrade script

Signed-off-by: Jason Boyer <JBoyer@equinoxinitiative.org>
2 years agoLP#1747542 - Repair item/user circulation test
Chris Sharp [Mon, 5 Feb 2018 23:58:43 +0000 (18:58 -0500)]
LP#1747542 - Repair item/user circulation test

The action.item_user_circ_test function was previously
ignoring lost or longoverdue and paid-for circulations.
Adding a check for whether the circulation is closed
fixes this.

Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Jason Boyer <JBoyer@equinoxinitiative.org>
2 years agoLP#1886713: fix issue where AngularJS hotkeys fail to initialize
Galen Charlton [Tue, 7 Jul 2020 20:24:49 +0000 (16:24 -0400)]
LP#1886713: fix issue where AngularJS hotkeys fail to initialize

Fixes a race condition where the navbar service can look for
eg-accesskey attributes before all of the elements that have
them meet the conditions to show up in the DOM.

To test
-------
[1] From an AngularJS part of the staff interface, note that
    hitting F8 sometimes does not perform the retrieve
    last patron action, nor does F8 show up on the list of
    hot keys when you hit "?" outside of an input.
[2] Apply the patch and repeat step 1. This time, the F8
    hotkey should consistently work.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Rogan Hamby <rogan.hamby@gmail.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
2 years agoLP1474874: Consistent page headers in the Angular client
Jane Sandberg [Fri, 7 Jun 2019 01:15:56 +0000 (18:15 -0700)]
LP1474874: Consistent page headers in the Angular client

This commit ensures that each screen in the Angular staff client uses
the <eg-staff-banner> component to better orient its users.

This commit also gives the eg-staff-banner some <h1> semantics, per
WebAIM's guidance: "Pages should be structured in a hierarchical manner,
generally with one 1st degree headings (<h1>) being the most important
(usually page titles or main content heading)" -- https://webaim.org/techniques/semanticstructure/

To test:

1) Go to [your-server]/eg2/en-US/staff/catalog/search
2) Confirm that there is a header that gives the page title at the top
of the page.
3) Go to an Angular Vandelay page.
4) Confirm that you see a similar header as in step 2.
5) Go to an Angular Administration page.
6) repeat step 4.

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Jason Boyer <JBoyer@equinoxinitiative.org>
2 years agoLP1870605: Stamp upgrade script
Jason Boyer [Fri, 24 Jul 2020 12:41:49 +0000 (08:41 -0400)]
LP1870605: Stamp upgrade script

Signed-off-by: Jason Boyer <JBoyer@equinoxinitiative.org>
2 years agoLP1870605: Fix typo in emergency closing functions
Steven Callender [Fri, 3 Apr 2020 19:20:39 +0000 (15:20 -0400)]
LP1870605: Fix typo in emergency closing functions

The emergency closing handler was ignoring any
circulations that already had fines due to a typo
in the stage 2 circ and reservation functions.

Signed-off-by: Steven Callender <stevecallender@esilibrary.com>
Signed-off-by: Rogan Hamby <rogan.hamby@gmail.com>
Signed-off-by: Jason Boyer <JBoyer@equinoxinitiative.org>
2 years agoLP#1705302: Stamping Upgrade Script
Jane Sandberg [Thu, 23 Jul 2020 13:37:07 +0000 (06:37 -0700)]
LP#1705302: Stamping Upgrade Script

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
2 years agolp1705302 update description of receipt template
Mike Risher [Tue, 11 Jun 2019 16:57:58 +0000 (09:57 -0700)]
lp1705302 update description of receipt template

Updated editing instructions to give correct syntax and changing name
from receipt templates to Print Templates

Signed-off-by: Mike Risher <mrisher@catalyte.io>
 Changes to be committed:
modified:   src/sql/Pg/950.data.seed-values.sql
new file:   src/sql/Pg/upgrade/XXXX.data.lp1705302-update-receipt-template-setting-descriptions.sql

Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
2 years agoLP#1775940: Archived Penalties/Messages does not Respect Date Range
Jason Stephenson [Wed, 29 Jan 2020 17:33:30 +0000 (12:33 -0500)]
LP#1775940: Archived Penalties/Messages does not Respect Date Range

This patch implements a.bellenir's suggestion of switching from
setQuery to watchQury in the archiveGrid of the web client circulation
patron app.  It does now appear to respect the date range entered by
the user.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: John Amundson <jamundson@cwmars.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP#1754387 - User Buckets - Pending Users Enhancement
Josh Stompro [Mon, 3 Feb 2020 19:42:08 +0000 (13:42 -0600)]
LP#1754387 - User Buckets - Pending Users Enhancement

It wasn't possible to load more than 100 users from a barcode file import in
user buckets because of two issues.  The pager was limited to only showing 100
barcodes at a time, and moving any users from the pending list would clear the
pending list.

Here is a branch that makes the following changes.

1. Sets the default number of items to 100 and allows choosing the
  500,1000,10000 options for the pager.

2. When moving users from pending to a bucket, only removes the moved users
  from the pending list.  This allows the user to move a larger number of
  users to a bucket from pending, a batch at a time.

Testing Plan:

Before Changes:

1. Load a file with 110 patron barcodes in the User Buckets, Pending Users interface.
2. See that the pager only allows a max of 100 for the page size.
3. Move one user to a bucket and note that the pending list gets cleared.

After Changes:

1. Load a file with 110 patron barcodes.
2. See that the pager allows for picking larger page sizes.
3. Move one user to a bucket, and note that the pending list removes just that one user.

Another way to see the changes is to pick a pager size of 25, and select all the
entries.  Then move them to a bucket and see that you can continue to move
batches of 25 until you have moved all the pending users.

Signed-off-by: Josh Stompro <stompro@stompro.org>
Signed-off-by: Gina Monti <gmonti@biblio.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP1845241: Use the correct API call to Undelete a bib record
Jane Sandberg [Sun, 8 Mar 2020 14:58:09 +0000 (07:58 -0700)]
LP1845241: Use the correct API call to Undelete a bib record

To test:

1) Open up a delete-ready bibliographic record in the Web client
(no attached holdings, no located URI, no open orders attached, etc.)
2) Delete it.
3) Undelete it.  Note that the "Undelete" button briefly turns into a
"Delete" button before changing back to an "Undelete" button.  Note that
the bib record does not show up in search results within the Web client.
4) Apply this commit.
5) Now try undeleting the record again.  Notice that the "Delete" button
does not revert to an "Undelete" button.  Note also that the record is
once again showing up in search results (although you may have to be a
bit creative using search terms, due to search results caching).

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: blake <blake@mobiusconsortium.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP#1847680: live test for barcode completion
Jeff Davis [Thu, 10 Oct 2019 23:01:06 +0000 (16:01 -0700)]
LP#1847680: live test for barcode completion

Signed-off-by: Jeff Davis <jeff.davis@bc.libraries.coop>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
2 years agoLP1805860: Display long patron names without obscuring input fields
Dan Scott [Tue, 7 Jan 2020 20:05:06 +0000 (15:05 -0500)]
LP1805860: Display long patron names without obscuring input fields

Long patron names can obscure the input fields and menu items on patron
action screens. The only workaround is to reduce the font size using the
browser controls until the input fields and menu items are visible.

While the fixed position saves space at the top of the screen for
typical cases, it can be hard for staff to remember the font-reduction
workaround when they hit a long patron name.

Removing the fixed position CSS also better supports the display of
regular patron names on browsers that are not wide enough to display the
top menu (Search/Circulation/Cataloging/.../Workstation name/Locale) all
on a single line.

Signed-off-by: Dan Scott <dan@coffeecode.net>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP#1844365: fix initialization of stat cats in patron registration form
Galen Charlton [Mon, 22 Jun 2020 15:40:08 +0000 (11:40 -0400)]
LP#1844365: fix initialization of stat cats in patron registration form

If you edit a patron and it has (or gets added) a stat cat entry,
then from the registration form click on its inline patron search
link, fetch a patron that has no stat cats, then edit it, the
first patron's stat cats can show up in the registration form.
If the second patron does have stat cats, but not values set
for all of them, then the first patron's stat cat entries can
fill in cases where no entry was previously set.

This patch fixes patronRegSvc's initialization when loading
an existing patron record to avoid this.

To test
-------
[1] Edit a patron and ensure that it has at least one
    statistical category set.
[2] From the patron search link in the patron app tab
    bar, NOT the Search | Patron menu item, search for
    and retrieve a patron that has no stat cats assigned.
[3] Edit the patron. Observe that the first patron's
    stat cat entry displays in the second patron's
    registration form.
[4] Apply the patch and repeats steps 1-3. This time,
    the previous patron's stat cats should not infect
    the second patron's registration form.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Mike Risher <mrisher@catalyte.io>
2 years agolp1775286 Color Indication of Overdue on Items Out
Kyle Huckins [Thu, 23 May 2019 21:47:02 +0000 (21:47 +0000)]
lp1775286 Color Indication of Overdue on Items Out

- Overdue items are highlighted in red in the Items Out UI.
- Ensure overdue-row and lost-row classes handle visited links

Signed-off-by: Kyle Huckins <khuckins@catalyte.io>
Signed-off-by: Jennifer Pringle <jennifer.pringle@bc.libraries.coop>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP#1840294: use dedicated UI for match set admin, rather than auto-generated admin...
Jeff Davis [Tue, 5 May 2020 17:34:36 +0000 (10:34 -0700)]
LP#1840294: use dedicated UI for match set admin, rather than auto-generated admin pages

Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP1874897 Staff catalog honors classification scheme
Bill Erickson [Fri, 24 Apr 2020 20:09:57 +0000 (16:09 -0400)]
LP1874897 Staff catalog honors classification scheme

Use the org unit setting "cat.default_classification_scheme" to
determine which scheme to use when extracting the bib-level call number
for display in the Angular staff catalog.

This also modifies the API to look the value up so future calls to the
API will Just Work (and it's one less bit of data the browser has to
retrieve).

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP1886118 Staff catalog search format repair
Bill Erickson [Fri, 3 Jul 2020 14:05:33 +0000 (10:05 -0400)]
LP1886118 Staff catalog search format repair

Fixes an error in the staff catalog search params builder with regard to
encoding the search format.  The 'format' param should be 'search_format'.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP1850555 Item location selector improvements
Bill Erickson [Wed, 20 May 2020 20:36:23 +0000 (16:36 -0400)]
LP1850555 Item location selector improvements

* Ensure that the desired location is always available in the selector
  regardless of whether the staff have permission to use the location.

* Display org unit short name for selected locations simimilar to how
  they are displayed in the selector dropdown.

* Adds an <Unset> option in cases where the new 'required' flag is set
  to false.  This explicitly makes it possible for staff to clear the
  value.

* Gracefully handle cases where locations from no org units are eligible
  for display.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
2 years agoLP1850555 Angular Item (Copy) Location Select Component
Bill Erickson [Wed, 6 Nov 2019 17:41:32 +0000 (12:41 -0500)]
LP1850555 Angular Item (Copy) Location Select Component

<eg-item-location-select .../>

Adds a new item location select component which filters the list of
displayed locations based on a permission-check org or a specific
context org unit.

Values in the selector are decorated with the org unit short name in
parens after the location name to clarify the owning lib.

Sandbox example included.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
2 years agoLP#1886852: Stamping Upgrade Script
Jason Stephenson [Fri, 17 Jul 2020 11:09:29 +0000 (07:09 -0400)]
LP#1886852: Stamping Upgrade Script

Signed-off-by: Jason Stephenson <jason@sigio.com>
2 years agoLP#1886852: Protect against dupes in hold-copy map function
Mike Rylander [Wed, 8 Jul 2020 17:18:52 +0000 (13:18 -0400)]
LP#1886852: Protect against dupes in hold-copy map function

If the DB function that regenerates the hold-copy maps for a hold
receives duplicate copies in its second parameter, it blows up.  This
commit prevents that by making the list unique at use time.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Jason Stephenson <jason@sigio.com>
2 years agoLP1848573: follow-up: minor changes to IDL labels for the ccs class
Jane Sandberg [Sun, 12 Jul 2020 15:10:26 +0000 (08:10 -0700)]
LP1848573: follow-up: minor changes to IDL labels for the ccs class

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
2 years agoLP1848573: Added nice labels to Open-ILS\examples\fm_IDL.xml
Shula Link [Mon, 16 Mar 2020 14:30:27 +0000 (10:30 -0400)]
LP1848573: Added nice labels to Open-ILS\examples\fm_IDL.xml
for copy status

Signed-off-by: Shula Link <slink@gchrl.org>
Signed-off-by: Rogan Hamby <rogan.hamby@gmail.com>
Signed-off-by: Mike Risher <mrisher@catalyte.io>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
2 years agoLP#1712854: Disable all server-side sorting, but provide a stub for later, if we...
Mike Rylander [Wed, 12 Sep 2018 13:14:58 +0000 (09:14 -0400)]
LP#1712854: Disable all server-side sorting, but provide a stub for later, if we move that way

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: John Yorio <jyorio@equinoxinitiative.org>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
2 years agoLP#1712854: Add User Alias and User Alias or Display Name columns to shelf list
Mike Rylander [Tue, 11 Sep 2018 21:36:30 +0000 (17:36 -0400)]
LP#1712854: Add User Alias and User Alias or Display Name columns to shelf list

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: John Yorio <jyorio@equinoxinitiative.org>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
2 years agoLP1864056: Don't compare multiple new Date()s
Jason Boyer [Fri, 21 Feb 2020 21:08:36 +0000 (16:08 -0500)]
LP1864056: Don't compare multiple new Date()s

This branch addresses a race condition when
checking out or renewing items.
(The use of minDate in items_out was implicitly
immune to this issue, but that is made explicit
with this patch.)

To test
-------
[1] The race condition would be difficult to reliably
    reproduce directly, although a tool like
    https://github.com/mattzeunert/javascript-clock-speedup
    might help simulate the problem, so to test, verify
    that the following actions do not break:

    * checking out a loan, both with and without
      setting a specific due date
    * renewing a loan with a specific due date
      from the patron items out tab
    * renewing a loan from Circulation -> Renew Items,
      both with and without setting a specific due date.

Signed-off-by: Jason Boyer <JBoyer@eoli.info>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
2 years agolp1735828 Copy Bucket multi show status
Mike Risher [Thu, 20 Feb 2020 23:07:30 +0000 (23:07 +0000)]
lp1735828 Copy Bucket multi show status

Revise the web client so that when one is in the copy bucket one can
select multiple entries and do "show status" on all of them.

Signed-off-by: Mike Risher <mrisher@catalyte.io>
Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
2 years agoLP1866546 MARC edit support authority record (un)delete
Bill Erickson [Tue, 10 Mar 2020 14:48:27 +0000 (10:48 -0400)]
LP1866546 MARC edit support authority record (un)delete

Teaches the Angular MARC editor to use PCRUD for deleting and undeleting
authority records instead of erroneously using the bib record delete /
undelete APIs.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
2 years agoForward-port 3.5.0 upgrade script
Bill Erickson [Fri, 26 Jun 2020 14:45:37 +0000 (10:45 -0400)]
Forward-port 3.5.0 upgrade script

Signed-off-by: Bill Erickson <berickxx@gmail.com>
2 years ago3.5 Translations PO files
Bill Erickson [Fri, 12 Jun 2020 15:49:41 +0000 (11:49 -0400)]
3.5 Translations PO files

Signed-off-by: Bill Erickson <berickxx@gmail.com>
2 years ago3.5 Translations newpot
Bill Erickson [Fri, 12 Jun 2020 15:46:19 +0000 (11:46 -0400)]
3.5 Translations newpot

Signed-off-by: Bill Erickson <berickxx@gmail.com>
2 years agoLP1884787 ng lint and unit test repairs
Bill Erickson [Wed, 24 Jun 2020 16:25:16 +0000 (12:25 -0400)]
LP1884787 ng lint and unit test repairs

Minor lint update, some of which affected tests and required a few
additional test spec updates.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP#1884787: update Angular staff client to work with momement-timezone >= 0.5.29
Galen Charlton [Tue, 23 Jun 2020 18:39:45 +0000 (14:39 -0400)]
LP#1884787: update Angular staff client to work with momement-timezone >= 0.5.29

Now that moment-timezone ships with an index.d.ts (as of 0.5.29), this
patch updates how moment-timezone is imported and used since we
now have to care more about type-checking.

Among other things, this updates the ScheduleRow interface to account
for the fact that with the stricter type checking coming from the recent
moment-timezone change, ScheduleRow.time as a moment.Moment object
cannot be in the same interface as a string index type.

To test
-------
[1] Make sure that results of  'npm run test' are clean.
[2] Create a reservation or two in the booking interface and
    verify that scheduled reservations show up on the grid
    in the create reservations page.
[3] Verify that the icons indicating whether resources are
    available or not at a given time are correct on the
    create reservations grid.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
2 years agoLP#1884787: update package-lock.json
Galen Charlton [Tue, 23 Jun 2020 18:39:13 +0000 (14:39 -0400)]
LP#1884787: update package-lock.json

Reflects current npm update state as of 2020-06-23.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
2 years agoLP#1884787: bump up moment and moment-timezone
Galen Charlton [Tue, 23 Jun 2020 18:38:44 +0000 (14:38 -0400)]
LP#1884787: bump up moment and moment-timezone

Latest as of 2020-06-23.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
2 years agoLP#1851306: (follow-up) add additional test stubs
Galen Charlton [Mon, 22 Jun 2020 21:43:07 +0000 (17:43 -0400)]
LP#1851306: (follow-up) add additional test stubs

Accounting for changes in ReservationActionsService.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP#1851306: stamp DB update
Galen Charlton [Thu, 18 Jun 2020 20:27:19 +0000 (16:27 -0400)]
LP#1851306: stamp DB update

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP#1851306: (follow-up) fix printing of destination
Galen Charlton [Thu, 18 Jun 2020 20:13:21 +0000 (16:13 -0400)]
LP#1851306: (follow-up) fix printing of destination

Updated the default template for booking capture
transit slips to print the shortname of the destination.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP#1851306: (follow-up) add get_org_unit() helper to print templates
Galen Charlton [Thu, 18 Jun 2020 20:12:08 +0000 (16:12 -0400)]
LP#1851306: (follow-up) add get_org_unit() helper to print templates

The immediate use case is allowing the destination library's
shortname to print on booking capture slips.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP#1851306: (follow-up) fix AngularJS staff client navbar link
Galen Charlton [Thu, 18 Jun 2020 17:56:40 +0000 (13:56 -0400)]
LP#1851306: (follow-up) fix AngularJS staff client navbar link

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years agoLP1851306: Port Capture Booking Resource to Angular
Jane Sandberg [Sun, 17 Nov 2019 04:50:00 +0000 (20:50 -0800)]
LP1851306: Port Capture Booking Resource to Angular

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
2 years ago3.5 Post-Beta Release Notes Additions
Bill Erickson [Fri, 12 Jun 2020 14:20:20 +0000 (10:20 -0400)]
3.5 Post-Beta Release Notes Additions

Signed-off-by: Bill Erickson <berickxx@gmail.com>
2 years agoLP1883267 Minor release note tweaks
Bill Erickson [Fri, 12 Jun 2020 15:20:29 +0000 (11:20 -0400)]
LP1883267 Minor release note tweaks

Signed-off-by: Bill Erickson <berickxx@gmail.com>
2 years agoLP#1883267: Adding release notes
Mike Rylander [Fri, 12 Jun 2020 14:55:29 +0000 (10:55 -0400)]
LP#1883267: Adding release notes

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
2 years agoLP#1883267: Never cache Angular index.html
Mike Rylander [Fri, 12 Jun 2020 14:36:48 +0000 (10:36 -0400)]
LP#1883267: Never cache Angular index.html

If we cache index.html then clients will be delayed seeing updates in
normal circumstances.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
2 years agoForward-port 3.4.3 upgrade script
Dan Wells [Thu, 11 Jun 2020 21:03:34 +0000 (17:03 -0400)]
Forward-port 3.4.3 upgrade script

Signed-off-by: Dan Wells <dbw2@calvin.edu>
2 years agoForward-port 3.3.7 upgrade script
Dan Wells [Thu, 11 Jun 2020 20:53:53 +0000 (16:53 -0400)]
Forward-port 3.3.7 upgrade script

Signed-off-by: Dan Wells <dbw2@calvin.edu>
2 years agoLP#1882937: Comment and dead-code cleanup
Mike Rylander [Wed, 10 Jun 2020 19:29:16 +0000 (15:29 -0400)]
LP#1882937: Comment and dead-code cleanup

Adjust comments in Storage::Driver::Pg to remove references to
Class::DBI::Replication, which we did not end up using.

Also remove a commented-out sub that purported to make use of a function
that did not exist in the home-grown multi-db implementation.

NOTE: While unused, the multi-db implementation in Storage::Driver::Pg
intelligently decides when to use a read-only secondary based on the
existence of a transaction or the "write-iness" state controlled by the
caller, and does not require separate main (or primary) and secondary
db lists.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
2 years agoLP1882937 Replace master/slave terminology
Sam Link [Wed, 10 Jun 2020 12:32:26 +0000 (08:32 -0400)]
LP1882937 Replace master/slave terminology

In Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg.pm
changed master/slave terminology to more neutral primary/standby.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
2 years agoLP1880035: Fix rendering of monograph parts
Jason Boyer [Thu, 21 May 2020 22:19:57 +0000 (18:19 -0400)]
LP1880035: Fix rendering of monograph parts

A BorderContainer is primarily used to allow anchoring views to the top,
bottom, left, or right of the container and usually allows the use of a
splitter to resize child views. Since we don't use any of that and don't
need such a control, it was apparrently just luck that it worked at all.
Using a plain ContentPane instead allows the page to render as expected.

Thanks to Galen Charlton for tracking this down and finding the fix.

Signed-off-by: Jason Boyer <JBoyer@eoli.info>
Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
2 years agoLP1837656 Org proximity admin disable org filter
Bill Erickson [Thu, 22 Aug 2019 14:12:53 +0000 (10:12 -0400)]
LP1837656 Org proximity admin disable org filter

Disable the org unit filter for the auto-generated org unit proximity
adjustment admin page so that it does not automatically filter the grid by
any of the org unit fields.

Modify the IDL to indicate that the 'pos' field on the org unit
proximity adjustement class is required.

To test:

1. Navigate to
   /eg2/en-US/staff/admin/server/actor/org_unit_proximity_adjustment
2. Create an adjustment if non exist.
3. Confirm the 'Position' field is now required.
4. Confirm new adjusment row appears in the grid after it's created.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
2 years agoLP1847800 Admin grid filter display, default fields, IDL repairs
Bill Erickson [Wed, 6 May 2020 14:47:37 +0000 (10:47 -0400)]
LP1847800 Admin grid filter display, default fields, IDL repairs

* Indicate in the UI when grid filters are applied via URL and offer a
  way for the user to clear the filters.

* When grid filters are applied, use them as the basis for the "Default
  New Record" object which seeds the fm-editor.  In other words, apply
  default values to the fm-editor to match the grid filters.

* Repair some IDL thinkos and add more 'selector' values.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
2 years agoLP#1847800: secondary admin pages for Authority Control Sets and Authority Thesauri
Jeff Davis [Tue, 5 May 2020 21:37:05 +0000 (14:37 -0700)]
LP#1847800: secondary admin pages for Authority Control Sets and Authority Thesauri

Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
2 years agoLP#1847800 / LP#1847810: secondary admin pages: MARC Search/Facet Fields -> virtual...
Jeff Davis [Tue, 5 May 2020 21:11:41 +0000 (14:11 -0700)]
LP#1847800 / LP#1847810: secondary admin pages: MARC Search/Facet Fields -> virtual index definitions

Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
2 years agoLP#1847800 / LP#1847781: secondary admin pages for MARC Import Remove Fields
Jeff Davis [Tue, 5 May 2020 19:16:37 +0000 (12:16 -0700)]
LP#1847800 / LP#1847781: secondary admin pages for MARC Import Remove Fields

Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
2 years agoLP1847800 Admin grids support config_field links
Bill Erickson [Wed, 29 Apr 2020 21:27:23 +0000 (17:27 -0400)]
LP1847800 Admin grids support config_field links

For IDL fields which have config_field=true, the value in the admin grid
is rendered as a link to the grid for the linked field.  Additionally,
the link contains a gridFilter so the destination grid only displays
rows related to the selected field.

Adds config_field=true values for z39.50 source and two links for hard
due date and hard due date values.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
2 years agoLP#1847800 / LP#1834687: secondary admin pages: config_field attribute in IDL
Jeff Davis [Wed, 18 Dec 2019 00:06:19 +0000 (16:06 -0800)]
LP#1847800 / LP#1834687: secondary admin pages: config_field attribute in IDL

Signed-off-by: Jeff Davis <jeff.davis@bc.libraries.coop>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
2 years agoLP#1873048 - Stamp upgrade script
Chris Sharp [Mon, 4 May 2020 17:20:09 +0000 (13:20 -0400)]
LP#1873048 - Stamp upgrade script

Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
2 years agoLP#1873048: add scoped retrieve perms for booking resource types and resources
Jeff Davis [Thu, 30 Apr 2020 17:36:44 +0000 (10:36 -0700)]
LP#1873048: add scoped retrieve perms for booking resource types and resources

In the XUL client, when selecting a resource type, the list was limited
by owning library.  But in the web client, the list would show all
resource types across all libraries.  This commit addresses that
regression by adding a new VIEW_BOOKING_RESOURCE_TYPE permission with
context_field in the IDL.  That way, users only see resource types owned
by org units where they have the permission.

While we're at it, a new VIEW_BOOKING_RESOURCE perm is also added for
resources.

Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
2 years agoLP#1865533: save changes on Edit Hold in My Account
Jeff Davis [Tue, 28 Apr 2020 20:52:52 +0000 (13:52 -0700)]
LP#1865533: save changes on Edit Hold in My Account

When editing a hold in the OPAC, changes are not saved if the SMS field
is blank.  The sms_notify value is being passed as an empty string, and
this non-null value violates the "sms_check" constraint on
action.hold_request.  Replacing the empty string with undef allows the
hold update to succeed.

Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
2 years agoLP1787636: Sort Libraries without Holdings In Holdings View
Daniel Pearl [Wed, 13 Mar 2019 14:07:17 +0000 (10:07 -0400)]
LP1787636: Sort Libraries without Holdings In Holdings View

Empty libraries in holdings view are listed at the end of the library
list instead of integrated within the list.  This patch sorts them
within the list.

Signed-off-by: Daniel Pearl <dpearl@cwmars.org>
Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
2 years agoLP1787636: Remove right justification in grid view
Jason Stephenson [Thu, 19 Mar 2020 13:45:18 +0000 (09:45 -0400)]
LP1787636: Remove right justification in grid view

Align all owning libraries to the left as requested in the bug
description and comments.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
2 years agoLP1813088: Coerce Values to String in egGridValueFilter
Jason Stephenson [Thu, 26 Mar 2020 14:47:46 +0000 (10:47 -0400)]
LP1813088: Coerce Values to String in egGridValueFilter

Coerce values to string in the switch for Boolean columns in the main
egGridValueFilter function.  This came about after an IRC conversation
with Mike Rylander who suggested this as a possible fix.  It should
when field values are strings, integers, or Booleans.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
2 years agoLP1869906 Angular staff cat browse links
Bill Erickson [Tue, 31 Mar 2020 15:51:41 +0000 (11:51 -0400)]
LP1869906 Angular staff cat browse links

Use routerLinks instead of click-handlers for browse results links so
users have the option to control-click and open individual results in a
new tab.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
2 years agoLP#1876163 - Fix Angular Test Failure
Jason Stephenson [Thu, 30 Apr 2020 18:09:40 +0000 (14:09 -0400)]
LP#1876163 - Fix Angular Test Failure

ERROR in app/core/format.spec.ts -  TS2554: Expected 4 arguments,
but got 3.

orgService = new OrgService(netService, authService, pcrudService);

Commit 9e8d662f418 added a new first argument to the OrgService
constructor and two files needed updates:

* app/core/format.spec.ts
* src/app/core/org.spec.ts

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
2 years agoLP#1869794: Stamping upgrade script
Ben Shum [Thu, 30 Apr 2020 18:16:19 +0000 (14:16 -0400)]
LP#1869794: Stamping upgrade script

Signed-off-by: Ben Shum <ben@evergreener.net>