Evergreen.git
6 years agoLP#1511742 Org selector typeahead UI formatting
Bill Erickson [Fri, 7 Sep 2018 20:36:17 +0000 (16:36 -0400)]
LP#1511742 Org selector typeahead UI formatting

The display behavior of the org selector changed when migrating to a
typeahead.  In some cases, the boundaries of the input need to be more
clearly defined or it will fill the page horizontally.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Kyle Huckins <khuckins@catalyte.io>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1511742 Org unit selector typeahead
Bill Erickson [Fri, 7 Sep 2018 19:59:35 +0000 (15:59 -0400)]
LP#1511742 Org unit selector typeahead

Reimplements <eg-org-selector> as an ngbTypeahead:

https://angular-ui.github.io/bootstrap/#!#typeahead

This allows for type-to-entry of the org selector.  A few additional
bits of logic are added to support click-to-open of the selector
regardless of the selected value.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Kyle Huckins <khuckins@catalyte.io>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1739286: Belt and suspenders on radio button flags
Mike Rylander [Fri, 14 Sep 2018 14:06:33 +0000 (10:06 -0400)]
LP#1739286: Belt and suspenders on radio button flags

Signed-off-by: Mike Rylander <mrylander@gmail.com>
6 years agolp1739286 default search box in Z39.50
Jason Etheridge [Tue, 10 Jul 2018 23:46:04 +0000 (19:46 -0400)]
lp1739286 default search box in Z39.50

This change tweaks the layout of search fields in the web client Z39.50
interface and adds radio buttons for the default search field to auto-focus.
The behavior is "sticky" without the need for an explicit Save action.  If the
current default field is not present due to a given combination of selected
services, then no field will be focused by default.

Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
6 years agoLP1727464: Adding record ID to the title link in the checkout interface
Jane Sandberg [Mon, 10 Sep 2018 17:07:54 +0000 (10:07 -0700)]
LP1727464: Adding record ID to the title link in the checkout interface

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1792429: calculate queue position in correct order
Galen Charlton [Thu, 13 Sep 2018 18:25:05 +0000 (14:25 -0400)]
LP#1792429: calculate queue position in correct order

This patch ensures that the relative hold queue position
displayed in the webstaff Hold Shelf and Record -> View Holds
interfaces is calculated in the correct order, i.e., (cut-in-line aside)
with holds requested earlier having a lower queue position than
holds requested later.

To test
-------
[1] Set up a bib with a number of hold requests.
[2] Under Record -> Viwe Holds, note that the queue
    positions are reversed, with later holds having lower
    queue positions.
[3] Apply the patch and repeat step #2. This time, the queue
    positions should be correct.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP#1774724 - stamp upgrade script
Chris Sharp [Thu, 13 Sep 2018 15:47:55 +0000 (11:47 -0400)]
LP#1774724 - stamp upgrade script

6 years agoLP#1774724: Fix copy-pasto's in Library Settings
Remington Steed [Tue, 1 May 2018 03:34:30 +0000 (23:34 -0400)]
LP#1774724: Fix copy-pasto's in Library Settings

Two long-overdue org unit settings made reference to "lost", being
apparently copied from the similar settings about lost items. This fixes
the wording, both in the settings database table and in the docs.

Signed-off-by: Remington Steed <rjs7@calvin.edu>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
6 years agoLP#1738688: Add cancel time to Most Recent Transits
Kathy Lussier [Wed, 29 Aug 2018 14:58:20 +0000 (10:58 -0400)]
LP#1738688: Add cancel time to Most Recent Transits

Adds the transit cancel time to the Most Recent Transits section of
the Item Status Holds / Transit tab.

Test plan:
Place an item in transit and then cancel the transit. Retrieve the item in
Item Status / Detail View. In the Holds / Transit tab, there is no indication
the transit has been canceled before loading the patch. Post-patch, the
cancel time will display.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: John Amundson <jamundson@cwmars.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1773434: show in catalog
a. bellenir [Tue, 12 Jun 2018 18:54:18 +0000 (14:54 -0400)]
LP#1773434: show in catalog

open a new staff client tab to the record's opac view, not a new opac tab

Signed-off-by: a. bellenir <ab@grpl.org>
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
6 years agoLP#1773434 missing option to "Show in Catalog"
a. bellenir [Mon, 4 Jun 2018 23:41:55 +0000 (19:41 -0400)]
LP#1773434 missing option to "Show in Catalog"

Signed-off-by: a. bellenir <ab@grpl.org>
Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
6 years agoLP#1786534: ensure that changes don't regress
Galen Charlton [Thu, 13 Sep 2018 14:25:20 +0000 (10:25 -0400)]
LP#1786534: ensure that changes don't regress

This patch ensures that somebody who installs a maintenance
release of 3.0 or 3.1 that includes update 1130, then subsequently
upgrades to 3.2 *and* applies the schema update scripts piecemeal
doesn't suffer a regression on actor.usr_merge not updating
Vandelay session ownership or patron name keywords.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1786534: stamp schema update
Galen Charlton [Thu, 13 Sep 2018 14:16:04 +0000 (10:16 -0400)]
LP#1786534: stamp schema update

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1786534: make update script reflect other recent changes in actor.usr_merge
Galen Charlton [Thu, 13 Sep 2018 14:12:17 +0000 (10:12 -0400)]
LP#1786534: make update script reflect other recent changes in actor.usr_merge

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP 1786534: Don't merge a user with itself.
Jason Stephenson [Fri, 10 Aug 2018 19:10:04 +0000 (15:10 -0400)]
LP 1786534: Don't merge a user with itself.

It's possible to merge a user with itself using the actor.usr_merge
database function.  This does not produce a useful result.  One ends
up with a user that is flagged deleted, has a null card field, and is
likely to have their addresses and other cards deleted from the
database.

A simple check at the top of the database function to bail if the
src_usr and dest_usr are the same prevents this from happening.  That
is the change that this commit makes.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1269574 - Exclude backordered copies from deletion.
Chris Sharp [Tue, 7 Nov 2017 21:49:37 +0000 (16:49 -0500)]
LP#1269574 - Exclude backordered copies from deletion.

When canceling a lineitem with a cancel reason that
keep debits = true, make sure we don't delete those copies.

Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: John Amundson <jamundson@cwmars.org>
Signed-off-by: Jason Stephenson <jason@sigio.com>
6 years agoLP#1776917 - fix patron bill grid lacking bill ID
Cesar Velez [Mon, 27 Aug 2018 20:07:48 +0000 (16:07 -0400)]
LP#1776917 - fix patron bill grid lacking bill ID

Without the required attribute in the grid template
declaration, the Bill# column *had* to be enabled for
bill payments to work. This adds required attribute to
the Bill #, so that it's fetched regardless of whether
displayed or not, so posting payments work correctly.

Signed-off by: Cesar Velez <cesar.velez@equinoxinitiative.org>
Signed-off-by: John Amundson <jamundson@cwmars.org>
Signed-off-by: Jason Stephenson <jason@sigio.com>
6 years agoLP 1743654: Removing a duplicate flesh_fields array entry
Jane Sandberg [Mon, 10 Sep 2018 18:23:12 +0000 (11:23 -0700)]
LP 1743654: Removing a duplicate flesh_fields array entry

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: John Amundson <jamundson@cwmars.org>
Signed-off-by: Jason Stephenson <jason@sigio.com>
6 years agoLP1743654: Fleshing out the Created By column in Item Status
Jane Sandberg [Mon, 10 Sep 2018 18:16:51 +0000 (11:16 -0700)]
LP1743654: Fleshing out the Created By column in Item Status

To test:
1) Scan an item into Item Status.
2) Turn on the Created By column.
3) Note that the Created By column shows the ID of the user
that created the record.
4) Apply this commit and repeat steps 1-2.
5) Note that the Created By column now shows the creator's
user name as a link, which opens the creator's record in
a new tab.

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: John Amundson <jamundson@cwmars.org>
Signed-off-by: Jason Stephenson <jason@sigio.com>
6 years agoLP#1718459: Remove apache 2.2 language from README
Ben Shum [Wed, 12 Sep 2018 18:26:25 +0000 (14:26 -0400)]
LP#1718459: Remove apache 2.2 language from README

Signed-off-by: Ben Shum <ben@evergreener.net>
6 years agoLp#1718459: Remove Debian 7 Wheezy Installation Support
Jason Stephenson [Fri, 22 Sep 2017 04:29:37 +0000 (00:29 -0400)]
Lp#1718459: Remove Debian 7 Wheezy Installation Support

Remove references to Debian 7 Wheezy in the installation and upgrade
documentation.

Remove debian-wheezy* targets from
Open-ILS/src/extras/Makefile.install and the supporting Makefiles.

Remove the example Apache 2.2 configuration files, since the supported
distributions all ship with Apache 2.4.

Move the eg_startup.in file from Open-ILS/example/apache to
Open-ILS/examples/apache_24.

Remove references to eg_wheezy_installer.sh in Perl live test
comments.

Remove Open-ILS/web/js/ui/default/staff/README.install, which is out
of date and entirely aimed at Debian 7 Wheezy.

To test: Simply install on a supported distribution other than Debian
7 Wheezy and do the usual tests.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Ben Shum <ben@evergreener.net>
6 years agoLP1792014: KPAC fix for opac.holds.org_unit_not_pickup_lib in org_selector.
Steven Callender [Tue, 11 Sep 2018 19:20:55 +0000 (15:20 -0400)]
LP1792014: KPAC fix for opac.holds.org_unit_not_pickup_lib in org_selector.

Signed-off-by: Steven Callender <stevecallender@esilibrary.com>
Signed-off-by: Ben Shum <ben@evergreener.net>
6 years agoLP1775640: Adds deposit columns to Item Status and Holdings View grids
Jane Sandberg [Mon, 10 Sep 2018 18:42:34 +0000 (11:42 -0700)]
LP1775640: Adds deposit columns to Item Status and Holdings View grids

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Beth Willis <willis@noblenet.org>
Signed-off-by: Ben Shum <ben@evergreener.net>
6 years agoLp 1746251: Fix Circulation Modifier typos.
Jason Stephenson [Mon, 10 Sep 2018 20:39:45 +0000 (16:39 -0400)]
Lp 1746251: Fix Circulation Modifier typos.

Change "Circulation Modifer" to "Circulation Modifier" in two files.
This commit only addresses the obvious typos.  I leave the Circ
Modifier versus Circulation Modifier debate as an open question.  One
of my concerns is changing them all to one string may require some
reorganization of interfaces to avoid clunkiness.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Ben Shum <ben@evergreener.net>
6 years agoLP1665052: Fix checkin workstation display on recent circs view
Jane Sandberg [Mon, 10 Sep 2018 16:23:29 +0000 (09:23 -0700)]
LP1665052: Fix checkin workstation display on recent circs view

To test:
1) Go to Item Status > Detail View > Recent Circ History for
an item that is currently checked out.
2) Note that the Checkin Workstation field says
"{{circ.checkin_workstation.name()}}"
3) Apply this commit.
4) Note that the Checkin Workstation field is empty if an
item is an item hasn't been checked in, but is filled with
the appropriate workstation name after it has been checked
in.

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Ben Shum <ben@evergreener.net>
6 years agoLP#1739087 - enable vol to be zeroed
Cesar Velez [Mon, 20 Aug 2018 19:09:56 +0000 (15:09 -0400)]
LP#1739087 - enable vol to be zeroed

Allow user to "blank" or "zero out" a volume row by using the new "x"

Signed-off by: Cesar Velez <cesar.velez@equinoxinitiative.org>

Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
6 years agoLP#1739087 - add [x] to volcopy editor volume rows-FollowUp
Cesar Velez [Thu, 16 Aug 2018 21:40:56 +0000 (17:40 -0400)]
LP#1739087 - add [x] to volcopy editor volume rows-FollowUp

Since we're programmatically changing the Volume counter,
must manually trigger the change event, to prevent sync issues.

Signed-off by: Cesar Velez <cesar.velez@equinoxinitiative.org>

Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
6 years agoLP#1739087 - add [x] to volcopy editor volume rows
Cesar Velez [Fri, 27 Jul 2018 15:21:25 +0000 (11:21 -0400)]
LP#1739087 - add [x] to volcopy editor volume rows

Enable newly created call numbers to be removable in
VolCopyEditor.

Signed-off by: Cesar Velez <cesar.velez@equinoxinitiative.org>

Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
6 years agoLP#1785887 edi_order_pusher.pl sets message account
Bill Erickson [Tue, 7 Aug 2018 20:26:27 +0000 (16:26 -0400)]
LP#1785887 edi_order_pusher.pl sets message account

Apply the edi_message.account value when sending EDI order messages via
edi_order_pusher.pl.  This solves a problem where EDI ORDERS message
were not visible in the interface, because there was no way to complete
the permission check.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
6 years agoLP1010635: Make bre dates populate in Item Status grid
Jane Sandberg [Sun, 3 Jun 2018 22:50:40 +0000 (15:50 -0700)]
LP1010635: Make bre dates populate in Item Status grid

To test:
1) Enable the Date Record Created and Date Record Last Edited columns
in Item Status.
2) Scan an item barcode into Item Status.  Note that the two columns
you enabled are empty.
3) Apply this commit.
4) Reload the Item Status screen, and scan your barcode again.  The
dates should now be populated.

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1724083 Webstaff approve pending patron address
Bill Erickson [Mon, 30 Jul 2018 21:23:49 +0000 (17:23 -0400)]
LP#1724083 Webstaff approve pending patron address

Add support for approving pending patron addresses in the webstaff
patron edit interface.

To test:
[1] Enable the pending address org unit setting.
[2] Log into the catalog and "edit" an address.
[3] Edit same user in staff client and use the Approve action.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1774886 Distinguish Phys Char Wizard with an edit icon
Dan Scott [Sun, 3 Jun 2018 18:34:04 +0000 (14:34 -0400)]
LP#1774886 Distinguish Phys Char Wizard with an edit icon

As both authority fields and the Physical Characteristics Wizard for 007 use
the same glyphicons-link class, it's not obvious to new users of the MARC
editor that the icons result in radically different actions.

Change the 007 icon to glyphicons-edit to reflect that it opens an editor
interface.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoDocs: Adding info about supercat filters
Jane Sandberg [Tue, 11 Sep 2018 16:15:19 +0000 (09:15 -0700)]
Docs: Adding info about supercat filters

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
6 years agoTranslation updates - po files
Dan Wells [Fri, 7 Sep 2018 15:21:00 +0000 (11:21 -0400)]
Translation updates - po files

Signed-off-by: Dan Wells <dbw2@calvin.edu>
6 years agoDocs: finalizing acknowledgments section for 3.2 release notes
Jane Sandberg [Fri, 7 Sep 2018 14:34:36 +0000 (07:34 -0700)]
Docs: finalizing acknowledgments section for 3.2 release notes

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
6 years agoDocs: Adding Equinox Open Library Initiative's acknowledgments
Andrea Buntz Neiman [Fri, 7 Sep 2018 14:27:02 +0000 (07:27 -0700)]
Docs: Adding Equinox Open Library Initiative's acknowledgments

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
6 years agoDocs: documenting new 3.2 features based on release notes
Jane Sandberg [Fri, 7 Sep 2018 04:01:17 +0000 (21:01 -0700)]
Docs: documenting new 3.2 features based on release notes

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
6 years agoDocs: spellchecking 3.2 release notes
Jane Sandberg [Fri, 7 Sep 2018 00:24:06 +0000 (17:24 -0700)]
Docs: spellchecking 3.2 release notes

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
6 years agoDocs: merge 3.2 release notes
Jane Sandberg [Fri, 7 Sep 2018 00:11:02 +0000 (17:11 -0700)]
Docs: merge 3.2 release notes

6 years agoDocs: adding more contributor info to 3.2 release notes
Jane Sandberg [Fri, 7 Sep 2018 00:09:53 +0000 (17:09 -0700)]
Docs: adding more contributor info to 3.2 release notes

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
6 years agoLP#1791184: ensure that 'make clean' doesn't delete pingest.pl
Galen Charlton [Thu, 6 Sep 2018 22:57:05 +0000 (18:57 -0400)]
LP#1791184: ensure that 'make clean' doesn't delete pingest.pl

This patch corrects an issue where pingest.pl was treated as if
it were generated from a pingest.pl.in source file during the configure
step, meaning that it got deleted by 'make clean'.  This patch also
adds a couple helpful comments.

To test
-------
[1] Apply the patch.
[2] From a git checkout, run the configure and make steps, followed
    by a 'make clean'. Verify that pingest.pl is not deleted from
    the source tree.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Jason Stephenson <jason@sigio.com>
6 years agoDocs: Adding two more entries to 3.2 release notes
Jane Sandberg [Thu, 6 Sep 2018 22:00:26 +0000 (15:00 -0700)]
Docs: Adding two more entries to 3.2 release notes

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
6 years agoLP#1790923: add release notes
Galen Charlton [Wed, 5 Sep 2018 20:44:08 +0000 (16:44 -0400)]
LP#1790923: add release notes

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP#1790923: adjust or remove references to old staff client in install doc
Galen Charlton [Wed, 5 Sep 2018 20:39:13 +0000 (16:39 -0400)]
LP#1790923: adjust or remove references to old staff client in install doc

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP#1790923: make_release no longer munges STAMP_ID in the README
Galen Charlton [Wed, 5 Sep 2018 20:36:53 +0000 (16:36 -0400)]
LP#1790923: make_release no longer munges STAMP_ID in the README

(As that text no longer exists; the installation instructions simply
 will not mention the old staff client.)

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP#1790923: disable XUL staff client by default
Galen Charlton [Wed, 5 Sep 2018 20:29:22 +0000 (16:29 -0400)]
LP#1790923: disable XUL staff client by default

This patch discourages use of the legacy XUL staff client
by adjusting the installation process so that a versioned XUL
server directory is not created. Instead, by default XUL
server files (which is still needed by a few web staff client
interfaces) end up in /openils/var/web/xul/legacy. During installation
and upgrade, the /openils/var/web/xul/server symbolic link is
set to point to /openils/var/web/xul/legacy/server if possible.

If for some reason a given installation of Evergreen 3.2.x does not
wish to stop using the XUL staff client, STAFF_CLIENT_STAMP_ID
can still be provided during the 'make install' step, and the
make_release script can still create the XUL client installers
if given the -x switch.

Note, however, that use of the XUL staff client in 3.2.x is
NOT RECOMMENDED and no longer under any guarantee of community
support.

To test
-------
[1] Perform a fresh installation and verify that /openils/var/web/xul/legacy
    is created and that /openils/var/web/xul/server is a symlink
    pointing to /openils/var/web/xul/legacy/server.
[2] Verify that the web staff client works and that the
    user permissions editor in particular continues to work.
[3] Perform an upgrade; verify that /openils/var/web/xul/legacy exists
    and that if /openils/var/web/xul/server started out as a symlink,
    it has been repointed.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP#1775466 Stamping DB upgrade for Ang6 app
Bill Erickson [Thu, 6 Sep 2018 21:07:35 +0000 (17:07 -0400)]
LP#1775466 Stamping DB upgrade for Ang6 app

Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP#1775466: tweak how make_release prunes eg2/node_modules
Galen Charlton [Thu, 6 Sep 2018 21:03:58 +0000 (17:03 -0400)]
LP#1775466: tweak how make_release prunes eg2/node_modules

Need the -f since some stuff under eg2/node_modules/.cache
ends up as 0444 for some reason, meaning that 'rm -r' doesn't
remove those files and complains about it.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP#1775466: add a newly-added entry to the ang6 navbar
Galen Charlton [Thu, 6 Sep 2018 20:27:27 +0000 (16:27 -0400)]
LP#1775466: add a newly-added entry to the ang6 navbar

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP#1775466: improve release notes for the Angular6 app
Galen Charlton [Thu, 6 Sep 2018 20:26:45 +0000 (16:26 -0400)]
LP#1775466: improve release notes for the Angular6 app

More needs to be added to eg_vhost.conf when upgrading an
existing installation.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP#1775466 Angular6 base app release notes
Bill Erickson [Wed, 5 Sep 2018 19:53:28 +0000 (15:53 -0400)]
LP#1775466 Angular6 base app release notes

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1775466 make_release builds Angular app
Bill Erickson [Wed, 5 Sep 2018 19:55:11 +0000 (15:55 -0400)]
LP#1775466 make_release builds Angular app

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1775466 Add Angular building to install docs
Bill Erickson [Wed, 5 Sep 2018 19:57:51 +0000 (15:57 -0400)]
LP#1775466 Add Angular building to install docs

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1775466 developer prereqs update Node / add angular/cli
Bill Erickson [Wed, 5 Sep 2018 19:56:41 +0000 (15:56 -0400)]
LP#1775466 developer prereqs update Node / add angular/cli

NodeJS version updated from v6 to v8.
Install angular/cli globally, needed for building the Angular app.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1775466 Angular Apache configuration updates
Bill Erickson [Wed, 5 Sep 2018 19:58:23 +0000 (15:58 -0400)]
LP#1775466 Angular Apache configuration updates

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1775466 Acq admin grid workstation settings
Bill Erickson [Wed, 5 Sep 2018 19:54:21 +0000 (15:54 -0400)]
LP#1775466 Acq admin grid workstation settings

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1775466 AngularJS updates for Angular integration
Bill Erickson [Wed, 5 Sep 2018 20:04:19 +0000 (16:04 -0400)]
LP#1775466 AngularJS updates for Angular integration

Changes include:

* Navbar links to Angular acquisitions admin page.
* Auth cookie migration tool for moving AngularJS cookies from /eg/staff
  to /.
* Store last printed receipt (etc) in its final compiled form so it can
  be directly reprinted without having to recompile (via AngularJS).
  This allows the reprint-last action to work in the Angular app.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1775466 Angular(6) base application
Bill Erickson [Wed, 5 Sep 2018 20:11:41 +0000 (16:11 -0400)]
LP#1775466 Angular(6) base application

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1775466 Public API wrapper for mk_copy_query
Bill Erickson [Wed, 5 Sep 2018 20:02:56 +0000 (16:02 -0400)]
LP#1775466 Public API wrapper for mk_copy_query

Adds 2 new APIs:

open-ils.search.bib.copies
open-ils.search.bib.copies.staff

Used by the in-progress Angular staff catalog.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1775466 Record entry flat display attrs link repair
Bill Erickson [Wed, 5 Sep 2018 20:00:51 +0000 (16:00 -0400)]
LP#1775466 Record entry flat display attrs link repair

Fleshing 'mattrs' on a bib record should return an array (i.e. replace
might_have with has_many).

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoMore additions to the 3.2 release notes
Jane Sandberg [Thu, 6 Sep 2018 19:45:46 +0000 (12:45 -0700)]
More additions to the 3.2 release notes

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
6 years agoDocs: adding translators to 3.2 release notes
Jane Sandberg [Thu, 6 Sep 2018 19:05:17 +0000 (12:05 -0700)]
Docs: adding translators to 3.2 release notes

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
6 years agoDocs: creating basic release notes for 3.2
Jane Sandberg [Thu, 6 Sep 2018 18:47:21 +0000 (11:47 -0700)]
Docs: creating basic release notes for 3.2

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
6 years agoTranslation updates - newpot
Ben Shum [Thu, 6 Sep 2018 14:57:54 +0000 (10:57 -0400)]
Translation updates - newpot

Signed-off-by: Ben Shum <ben@evergreener.net>
6 years agoLP#1774277 Acq requests live test vandelay repair
Bill Erickson [Thu, 6 Sep 2018 14:24:14 +0000 (10:24 -0400)]
LP#1774277 Acq requests live test vandelay repair

Acq requests test now logs in with a workstation since under the covers
vandelay (used for acq imports) requires a workstation on the new
tracker tables.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Ben Shum <ben@evergreener.net>
6 years agoLP#1635354 Invoice close date perl live test
Bill Erickson [Thu, 6 Sep 2018 14:03:46 +0000 (10:03 -0400)]
LP#1635354 Invoice close date perl live test

Update Perl live test script to inspect invoice close dates instead of
the now-defunct 'complete' field.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Ben Shum <ben@evergreener.net>
6 years agoLP#1755258 Browser client auth proxy login support
Bill Erickson [Tue, 12 Jun 2018 16:02:02 +0000 (12:02 -0400)]
LP#1755258 Browser client auth proxy login support

Check if the auth_proxy service is enabled during login and use the
proxy login API when it's available, otherwise fall back to standard
Evergreen open-ils.auth login.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1755258 Improve network error handling
Bill Erickson [Tue, 12 Jun 2018 16:01:15 +0000 (12:01 -0400)]
LP#1755258 Improve network error handling

Improve promise handling and logging in browser client network request
failure handling.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1781235: fix changing primary user barcode in web client
Galen Charlton [Wed, 5 Sep 2018 14:56:43 +0000 (10:56 -0400)]
LP#1781235: fix changing primary user barcode in web client

This patch fixes a bug where the patron card dialog would
not allow the user to change the primary barcode under certain
circumstances. The fix is to ensure that the radio buttons
controlling the selection of the primary card are bound to
exactly one scope variable; otherwise, the /last/ barcode in the
list that had a primary value set after user interaction would
be the winner.

To test
-------
[1] Use the 'replace barcode' feature in the patron editor to
    create a test patron with 3 barcodes:

    - barcode A
    - barcode B
    - barcode C (which as last created, would be primary)

[2] Attempt to make barcode A the primary barcode again using
    the 'See All' patron card dialog in the patron editor.
[3] Note that the change of primary barcode doesn't stick
    upon saving the patron record.
[4] Apply the patch and repeat steps 1-3. This time, the
    primary barcode should be changed as expected.
[5] Verify that other patron edit actions and registering a
    new patron record continue to work as expected.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: John Amundson <jamundson@cwmars.org>
Signed-off-by: Jason Stephenson <jason@sigio.com>
6 years agoLP#1781641: make staff-applied patron blocks overridable on web client checkout/renew
Jeff Davis [Wed, 29 Aug 2018 18:51:24 +0000 (11:51 -0700)]
LP#1781641: make staff-applied patron blocks overridable on web client checkout/renew

To test
-------
[1] Apply a blocking penalty such as STAFF_CHR to a patron record.
[2] Attempt to check out an item; note that there is no option to
    force the action.
[3] Apply the patch and repeat #2. This time, the staff user
    should be given an option to force the action.
[4] Verify that forcing the checkout respects whether or not
    the operator has (e.g.) the STAFF_CHR.override permission.

Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Joan Kranich <jkranich@cwmars.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1635354: Stamping upgrade script for acqusitions invoice timestamp
Kathy Lussier [Wed, 5 Sep 2018 03:55:08 +0000 (23:55 -0400)]
LP#1635354: Stamping upgrade script for acqusitions invoice timestamp

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
6 years agoLP#1635354 Support date is/not NULL ACQ searches
Bill Erickson [Thu, 19 Apr 2018 20:15:51 +0000 (16:15 -0400)]
LP#1635354 Support date is/not NULL ACQ searches

Adds support for searching on 'date is NULL' in the ACQ unified search
interface.  To use, chose the 'is' or 'is not'  matcher and leave the
text input value empty.

Update the canned completed invoices search to filter on 'close_date IS
NOT NULL' instead of the now-removed 'complete' field.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
6 years agoLP#1635354 Invoice close date/by release notes
Bill Erickson [Wed, 14 Mar 2018 16:56:07 +0000 (12:56 -0400)]
LP#1635354 Invoice close date/by release notes

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
6 years agoLP#1635354 Invoice close date/by fields
Bill Erickson [Tue, 13 Mar 2018 20:02:41 +0000 (16:02 -0400)]
LP#1635354 Invoice close date/by fields

Acquisitions invoices have 2 new fields:

* Close Date -- This is set to the time when the ACQ user clicks the
  "Close" button in the invoice interface.

This field replaces the existing "Complete" field.  An invoice is now
considered complete if a close date value is set.

* Closed By -- This is set to the logged in staff user who performs the
  "Close" action.

As with the now-defunct 'complete' field, but new fields are cleared in the
event an invoice is reopened.

These new fields are visible in the invoice interface under the 'Show
Details' action for closed invoices.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
6 years agoLP#1746824 - WebStaff egGrid styling
Cesar Velez [Thu, 22 Feb 2018 22:01:39 +0000 (17:01 -0500)]
LP#1746824 - WebStaff egGrid styling

This allows egGrid to receive CSS selector strings via egGridField
declarations in templates, or else auto-generates them based on the
path of the field. Also, sets the DOM id of the grid to its declared
persistKey, unless an id is explicitly given.

For example, due dates could be displayed in purple
as follows by adding the following CSS:

grid-due_date {
   color: purple;
}

The above example uses the autog-enerated class name. One could also
set an explicit one in the eg-grid-field element, e.g.,

<eg-grid-field label="[% l('Due Date') %]" path='due_date' css-selector="purple" ...

In this case, the grid-due_date class would /not/ be generated, and the
developer would be expected to supply CSS for the purple class. (But
with semantic class names :) )

Signed-off by: Cesar Velez <cesar.velez@equinoxinitiative.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
6 years agoLP#1774277 Stamping upgrade for patron acq reqs
Bill Erickson [Tue, 4 Sep 2018 21:37:32 +0000 (17:37 -0400)]
LP#1774277 Stamping upgrade for patron acq reqs

Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agolp1774277 release notes for patron acq requests
Jason Etheridge [Thu, 23 Aug 2018 19:18:05 +0000 (15:18 -0400)]
lp1774277 release notes for patron acq requests

Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agolp1774277 Improvements to Patron Acquisition Request
Jason Etheridge [Mon, 12 Mar 2018 22:02:47 +0000 (18:02 -0400)]
lp1774277 Improvements to Patron Acquisition Request

Squashed and rebased against master, this is an Angular reimplementation of the
Patron Acquisition Request user interface with some improvements.  It still
reaches into the Dojo-based Acquisition interfaces.

Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
toward acq requests

Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
4-status-not-updating-to-recieved-unless-all-items-in-order-are-recieved

Change to acq patron request status logic, which now looks like this:

If a cancel_reason is set on the patron request, then status = "Canceled"

If there is an associated hold request that has fulfillment_time set,
then status = 'Fulfilled"

If there is an associated lineitem has a state of "received", then status =
"Received"

If there is an associated purchase order with a state of "on-order" and an
associated hold request, then status = "Ordered, Hold Placed"

If there is an associated purchase order with a state of "on-order" but no
associated hold request (created through the automated process), then status =
"Ordered, Hold Not Placed"

If there is an associated lineitem (selection list), then status = "Pending"

If there is no associated lineitem, then status = "New"

Any other condition, which should be impossible (I should never say that), will
give a status of "Error"

Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
6-upc-not-on-patron-request-form

Adds a UPC column to the patron acq request table

Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
2-hold-request-fields-that-make-use-of-user-preferences

For new requests (or edited requests when a user barcode is scanned), the user's
preferences (if any) for hold notifications and pickup library will be used to
set various fields in the request dialog.

Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
5-pick-up-library-not-defaulting-to-patrons-home-library

when creating new requests, given a user, default to the user's pickup library
preference setting, or absent a preference, default to their home library.

Absent a user, default to the pickup library selector value from the request
list, if it's of an org type that can have volumes.  Otherwise, default to the
workstation library.  Technically, the without-a-user behavior is going to be
mooted whenever a user is chosen.

Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
5-pick-up-library-not-defaulting-to-patrons-home-library

Fix defaulting to patron home library in absense of user setting when creating
acq patron request from user context

Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
misc fixes

to the IDL and for the email_notify checkbox.

some refactoring to avoid using foreign fields in the request object

Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
7-retrieve-patron-fails-to-load-patron-record

give the user_request.view permission some parity with VIEW_USER

And some defensive programming if trying to create a request in
the user already known context without adequate permission

Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
handle undefined values for email/hold checkboxes

Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
remove acq.holds.allow_holds_from_purchase_request

This was added a long time ago but never actually used by the code.

Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
match pcrud perm for aur with aurs

Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
live_t/ test

Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP#1514085: stamp schema update
Galen Charlton [Tue, 4 Sep 2018 22:35:28 +0000 (18:35 -0400)]
LP#1514085: stamp schema update

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1514085: add to release notes with a server configuration note
Galen Charlton [Tue, 4 Sep 2018 22:33:09 +0000 (18:33 -0400)]
LP#1514085: add to release notes with a server configuration note

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1514085: sync schema update script to reflect changes in master
Galen Charlton [Tue, 4 Sep 2018 21:46:49 +0000 (17:46 -0400)]
LP#1514085: sync schema update script to reflect changes in master

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1514085 Release notes for vandelay session tracking
Bill Erickson [Thu, 23 Aug 2018 18:17:11 +0000 (14:17 -0400)]
LP#1514085 Release notes for vandelay session tracking

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1514085 Vandelay in-database session tracking
Bill Erickson [Thu, 28 Jun 2018 16:38:57 +0000 (12:38 -0400)]
LP#1514085 Vandelay in-database session tracking

Adds a new DB table vandelay.session_tracker for monitoring progress on
Vandelay enqueue and import sessions.

Enqueue and import APIs get a new option to exit early, returning the
newly created tracker object, so the caller can monitor the tracker
instead of listening to streamed responses, which are not supported in
browser client Dojo interfaces.

Teach the existing Dojo Vandelay UI to exit early on enqueu & export and
to poll for tracker data in lieu of waiting for streamed progress data.

On user merge / purge, trackers are migrated to the destination user.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1777675 Stamping upgrade script for latest inventory date support
Dan Wells [Tue, 4 Sep 2018 20:36:09 +0000 (16:36 -0400)]
LP#1777675 Stamping upgrade script for latest inventory date support

Signed-off-by: Dan Wells <dbw2@calvin.edu>
6 years agoLP#1777675: Change table names to Latest Inventory
Kathy Lussier [Tue, 4 Sep 2018 18:38:33 +0000 (14:38 -0400)]
LP#1777675: Change table names to Latest Inventory

Makes the backend code consistent with the new labels that have been added for
the latest inventory date.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
6 years agoLP#1777675 Tweak IDL label for copy inventory
Dan Wells [Thu, 23 Aug 2018 18:38:50 +0000 (14:38 -0400)]
LP#1777675 Tweak IDL label for copy inventory

"Last Copy Inventory" can be misunderstood at first reading as
inventory of the "last copy".  "Latest Inventory" seems easier to
understand, and also still goes well with a potential future "All
Inventories" entry in the IDL.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
6 years agoLP#1777675 Re-add missing columns to checkin interface
Dan Wells [Thu, 23 Aug 2018 18:34:57 +0000 (14:34 -0400)]
LP#1777675 Re-add missing columns to checkin interface

During one iteration of the inventory code, a box was added to the
interface, and some room was made for it by shrinking these other
interface components.

Since the box is now gone, let's get this row back up to the expected
twelve units of width.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
6 years agoLP#1777675: Fix code to update Item Status grid
Remington Steed [Wed, 22 Aug 2018 18:19:19 +0000 (14:19 -0400)]
LP#1777675: Fix code to update Item Status grid

Testing revealed that the grid rows use a different data structure, and
the object member names include dots (periods). Thus, bracket notation
is required to access those members.

This commit also makes a few smaller changes:
  - Prevents an error in the Check-in app when a last_copy_inventory
    doesn't exist yet.
  - Removes the "refresh" parameter from the updateInventory() function,
    which is never supplied when called, nor used by the function.
  - Adds some brief code comments.

Signed-off-by: Remington Steed <rjs7@calvin.edu>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
6 years agoLP#1777675: Release notes entry for inventory date
Kathy Lussier [Tue, 21 Aug 2018 17:31:59 +0000 (13:31 -0400)]
LP#1777675: Release notes entry for inventory date

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
6 years agoLP#1777675: Add inventory checkin modifier setting to server storage
Kathy Lussier [Tue, 21 Aug 2018 17:04:13 +0000 (13:04 -0400)]
LP#1777675: Add inventory checkin modifier setting to server storage

Allows the inventory checkin modifier value to be stored on the server instead
of the browser as is done with other checkin modifier settings.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
6 years agolp1777675 inventory date support
Kyle Huckins [Mon, 9 Jul 2018 18:11:05 +0000 (18:11 +0000)]
lp1777675 inventory date support

- Add toggle for updating inventory date and workstation on checkin
- Create new table asset.last_copy_inventory containing inventory date and inventory workstation columns.
- Add code to do_checkin subroutine to update last_copy_inventory table on checkin.
- Update Holdings view, Checkins table, copy buckets, and item detail grid and lists to display new
inventory date and workstation information.
- Add Update Inventory action to Item Status detail and list views.

Signed-off-by: Kyle Huckins <khuckins@catalyte.io>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Conflicts:
Open-ILS/web/js/ui/default/staff/circ/services/item.js

Signed-off-by: Dan Wells <dbw2@calvin.edu>
6 years agoLP#1712854 Stamping DB upgrade for hold UIs sort/speed
Bill Erickson [Tue, 4 Sep 2018 17:37:33 +0000 (13:37 -0400)]
LP#1712854 Stamping DB upgrade for hold UIs sort/speed

Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP#1712854: Add wide_hold grid settings to server storage
Kathy Lussier [Wed, 29 Aug 2018 21:00:39 +0000 (17:00 -0400)]
LP#1712854: Add wide_hold grid settings to server storage

Adds the new wide_hold grid settings used in the holds shelf and record holds
interfaces to server storage, as is done with other grid settings. Also removes
the legacy eg.grid.circ.holds.shelf and eg.grid.cat.catalog.holds settings.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP#1712854: Provide context-relevant default sort orders
Mike Rylander [Thu, 30 Aug 2018 20:48:23 +0000 (16:48 -0400)]
LP#1712854: Provide context-relevant default sort orders

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP#1712854: Include shelf-expired holds in the "clearable" set
Mike Rylander [Thu, 30 Aug 2018 20:37:21 +0000 (16:37 -0400)]
LP#1712854: Include shelf-expired holds in the "clearable" set

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP#1712854: Make use of local cache when moving to All Holds list
Mike Rylander [Tue, 28 Aug 2018 16:23:50 +0000 (12:23 -0400)]
LP#1712854: Make use of local cache when moving to All Holds list

Clearing holds takes care of local updates to the hold data, so there is no
need to refetch the hold list when moving from Clearable to All.  Actions
that change hold state otherwise do cause a refetch, however.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP#1712854: Provide a "only last captured copy" option to filter holds shelf
Mike Rylander [Tue, 28 Aug 2018 15:45:11 +0000 (11:45 -0400)]
LP#1712854: Provide a "only last captured copy" option to filter holds shelf

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP#1712854: Fix typo in function names for cancel and uncancel of wide holds
Mike Rylander [Tue, 28 Aug 2018 15:09:06 +0000 (11:09 -0400)]
LP#1712854: Fix typo in function names for cancel and uncancel of wide holds

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP#1712854: Speed improvements for two hold interfaces
Mike Rylander [Thu, 19 Jul 2018 00:52:25 +0000 (20:52 -0400)]
LP#1712854: Speed improvements for two hold interfaces

The Hold Shelf and Record -> View Holds interfaces are painfully slow when
faced with a large set of holds.  The main reason is the 2-stage process used
to gather the data: 1) find hold IDs for the context 2) for each hold, fetch
all the requisite data using a relatively slow API.

Here we create a new API that provides a streaming response of pre-inflated
hold data.  The full result set is loaded immediately, and once loaded, the
grid makes use of the "clientsort" feature to provide fast sorting without
the need to go back to the server when only changing the sort columns and
direction, and when paging through results.  The Hold Shelf UI now has a
progress indicator that appears whenever the hold list is retrieved from the
server, and the progress indicator for the Record -> View Holds UI is enhanced
to provide more granular updates.

It is expected that other hold interfaces will be able to make use of this new
API for performance and functionality improvements.

NOTE: This includes an additional change required to protect localStorage from
overlarge values when attempting to save the "last printed value" for future
reprinting.  Previously, when attempting to print a 2000+ hold list,
localStorage throws an error and the print fails.  Now the print will succeed,
but the value is not stored for reprinting and a message is logged to the JS
console.

NOTE: The original development plan was base this a new API on a native
Postgres materialized view, and provide a LISTEN/NOTIFY daemon to monitor for
events that should trigger a refresh of that view.  As it happens, the use of
other new Postgres features (primarily the LATERAL join type) allows us to
avoid that maintenance and run-time complication.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Conflicts:
Open-ILS/web/js/ui/default/staff/services/hatch.js

Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP#1779920: stamp database update
Galen Charlton [Tue, 4 Sep 2018 18:07:38 +0000 (14:07 -0400)]
LP#1779920: stamp database update

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>