evergreen/pines.git
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>
6 years agoLP#1779920: adjust release notes
Galen Charlton [Tue, 4 Sep 2018 17:55:18 +0000 (13:55 -0400)]
LP#1779920: adjust release notes

Wrap text and change the order of the paragraphs to put the
intent of the feature first.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1779920 Auto-renew modify related tables/views
Bill Erickson [Tue, 4 Sep 2018 14:31:00 +0000 (10:31 -0400)]
LP#1779920 Auto-renew modify related tables/views

Add new columns to these tables/views:

* action.all_circulation
* action.all_circulation_slim
* action.aged_circulation
* action.all_circ_chain
* action.summarize_all_circ_chain

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1779920 - Autorenewal Feature-Release Docs
Cesar Velez [Tue, 21 Aug 2018 22:23:14 +0000 (18:23 -0400)]
LP#1779920 - Autorenewal Feature-Release Docs

Summary release notes for Autorenewal

Signed-off by: Cesar Velez <cesar.velez@equinoxinitiative.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1779920 Circ auto-renewal repairs
Bill Erickson [Wed, 29 Aug 2018 21:19:07 +0000 (17:19 -0400)]
LP#1779920 Circ auto-renewal repairs

* Remove hard-coded granularity for auto-renewal notification event
  generation
* Moved schema update changes from 950 seed file into schema files.
* Added CircIsOpen validator to auto-renewal reactor on the off chance
  a circ is renewed by the patron in the middle of event processing.
* Notification template formatting and language updates, and removed
  debugging content.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Cesar Velez <cesar.velez@equinoxinitiative.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1779920 - Autorenew Feature
Cesar Velez [Tue, 28 Aug 2018 20:13:51 +0000 (16:13 -0400)]
LP#1779920 - Autorenew Feature

This branch adds the necessary changes to allow Evergreen via the
Action/Trigger system to generate daily automatic renewals of
outstanding loans. Implemented as pair of A/T definitions: Autorenew and
AutorenewNotify.

Signed-off by: Cesar Velez <cesar.velez@equinoxinitiative.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1776020: stamp database update
Galen Charlton [Tue, 4 Sep 2018 17:32:46 +0000 (13:32 -0400)]
LP#1776020: stamp database update

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1776020 Deduplicate name keywords in patron merge
Bill Erickson [Tue, 28 Aug 2018 02:49:12 +0000 (22:49 -0400)]
LP#1776020 Deduplicate name keywords in patron merge

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1776020 Add pref names to bills and items-out receipt templates
Bill Erickson [Tue, 28 Aug 2018 02:00:52 +0000 (22:00 -0400)]
LP#1776020 Add pref names to bills and items-out receipt templates

Add support (with inline docs) for pref_.* name fields in Bills
Current/Historical/Payment templates and the patron Items Out template.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1776020: Tweaks to display of name keywords
Kathy Lussier [Mon, 27 Aug 2018 20:15:31 +0000 (16:15 -0400)]
LP#1776020: Tweaks to display of name keywords

Add an icon next to the primary name to indicate the presence of name keywords,
which can be seen via hovering. The name keywords continue to display at the
bottom of the patron summary sidebar.

Also fixes a minor bug where preferred name would display for anyone with
a middle name.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1776020 Release notes for pref name / keywords
Bill Erickson [Wed, 22 Aug 2018 01:31:15 +0000 (21:31 -0400)]
LP#1776020 Release notes for pref name / keywords

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP#1776020 Patron preferred name & name keywords
Bill Erickson [Mon, 21 May 2018 02:15:23 +0000 (22:15 -0400)]
LP#1776020 Patron preferred name & name keywords

Preferred Name

Adds a new set of patron preferred name fields for prefix, first,
middle, last, and suffix allowing patrons to provide preferred name
information.  Preferred names are optional and each acts as an overlay
to the analogous primary name field, making it possible to provide
preferred name values for individual fields.

For example, a patron named William Erickson may have a preferred first
name (pref_first_given_name) of Bill, in which case the preferred name
would be Bill Erickson.  Note a preferred last name is not required in
this case as the code uses primary name values as defaults when not
replaced with a preferred version.

* Patrons will see primary names displayed in the catalog when set.
* Staff will see both primary name and preferred name in the patron
  summary side bar.
* Patron searches for any given name field will search both the primary
  and preferred name data.
* Preferred name fields are available in Action/Trigger templates and
  are present in various patron-focused print templates.

Name Keywords

Adds a new field to store miscellaneous patron name search terms.  These
values are only for searching and do not appear in any interfaces, apart
from the patron summary side bar and the patron edit UI.

Included is a new search field in the patron search UI which searches
keyword values and all other name fields.  It's essentially a global patron
name keyword search.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
6 years agoLP1752370: Add weight column to metabib fields grid
Jane Sandberg [Mon, 4 Jun 2018 04:09:20 +0000 (21:09 -0700)]
LP1752370: Add weight column to metabib fields grid

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
6 years agoLP#1740412 Double grid tooltip max width
Bill Erickson [Wed, 29 Aug 2018 18:05:09 +0000 (14:05 -0400)]
LP#1740412 Double grid tooltip max width

Bump the max-width of the grid tooltip from 200 to 400px to accommodate
longer messages.  Shorter messages will continue using narrower
tooltips.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
6 years agoLP#1740412 Grid cell tooltips moved to top-left
Bill Erickson [Fri, 24 Aug 2018 14:30:34 +0000 (10:30 -0400)]
LP#1740412 Grid cell tooltips moved to top-left

Avoid rendering the tooltip in the middle of a section of overflowed
text, since it can lead to tooltips being pushed far to the right.
Render at top left of cell instead.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
6 years agoLP#1740412 Grid cell tooltips limited to long content
Bill Erickson [Thu, 23 Aug 2018 17:52:38 +0000 (13:52 -0400)]
LP#1740412 Grid cell tooltips limited to long content

Only display grid cell tooltips when the content of the cell overflows
its container.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
6 years agoLP#1740412 Grid cell content tooltips
Bill Erickson [Mon, 25 Jun 2018 16:19:36 +0000 (12:19 -0400)]
LP#1740412 Grid cell content tooltips

Display a tooltip (popover), containing the full grid contents, when
mousing over a grid cell.  This allows users to see the full contents of
a cell without having to resize the grid column.

This applies to text contents and pre-compiled HTML contents.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
6 years agoLP#1744756: Stamping upgrade script for custom perm group display
Kathy Lussier [Thu, 30 Aug 2018 16:37:45 +0000 (12:37 -0400)]
LP#1744756: Stamping upgrade script for custom perm group display

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
6 years agolp1744756 Utilize Parent Trees
Kyle Huckins [Wed, 29 Aug 2018 15:20:17 +0000 (15:20 +0000)]
lp1744756 Utilize Parent Trees

- Allow Patron Edit interface to make use of Parent OU trees when
expect tree doesn't exist.

Signed-off-by: Kyle Huckins <khuckins@catalyte.io>
 Changes to be committed:
modified:   Open-ILS/web/js/ui/default/staff/circ/patron/regctl.js

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
6 years agolp1744756 Docs fix and Permission change
Kyle Huckins [Mon, 27 Aug 2018 20:21:45 +0000 (20:21 +0000)]
lp1744756 Docs fix and Permission change

- Introduce MANAGE_CUSTOM_PERM_GRP_TREE permission.

- Remove unnecessary references to unused "disabled"
field for pgtdes.

- Update documentation to correctly explain how removing
and adding display entries works.

 Changes to be committed:
modified:   Open-ILS/examples/fm_IDL.xml
modified:   Open-ILS/src/sql/Pg/006.schema.permissions.sql
modified:   Open-ILS/src/sql/Pg/950.data.seed-values.sql
modified:   Open-ILS/src/sql/Pg/upgrade/XXXX.schema.perm-group-display.sql
modified:   Open-ILS/web/js/ui/default/staff/admin/local/permission/app.js
modified:   Open-ILS/web/js/ui/default/staff/circ/patron/regctl.js
modified:   docs/RELEASE_NOTES_NEXT/Client/pgtde.adoc

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
6 years agoLP#1744756 Grp display tree minor fixes.
Bill Erickson [Mon, 6 Aug 2018 15:35:44 +0000 (11:35 -0400)]
LP#1744756 Grp display tree minor fixes.

1. Fix group tree display entry IDL sequence copy/paste issue:

permission.grp_tree_id_seq => permission.grp_tree_display_entry_id_seq

2. Apply consistent use of tabs in the IDL.

3. Fix thinko use of grp as a function in the no-entries-exist scenario
   in the patron editor.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Kyle Huckins <khuckins@catalyte.io>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
6 years agolp1744756 Release Notes for PGTDEs
Kyle Huckins [Thu, 14 Jun 2018 16:11:34 +0000 (16:11 +0000)]
lp1744756 Release Notes for PGTDEs

- Include release notes for Permission Group Tree Display
Entry UI and usage.
- Include pictures of interface for documentation.

Signed-off-by: Kyle Huckins <khuckins@catalyte.io>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
6 years agolp1744756 Profile Tree Display Entry Admin UI
Kyle Huckins [Thu, 15 Mar 2018 18:54:13 +0000 (18:54 +0000)]
lp1744756 Profile Tree Display Entry Admin UI

- Flesh out permission.group_tree_display_entries table.
- Create pgtde IDL class corresponding to new permission.group_tree_display_entries
table.
- Admin UI for Permission Group Tree Entries capable of viewing, adding, removing,
or changing position of entries within tree based on OU.
- Save functionality to persist any changes made.
- Persist changes in positions of permission group display
entries in Admin UI with the Profile Selector in the patron
edit interface.
- Make profile selector use original functionality if there are no
display entries.

Signed-off-by: Kyle Huckins <khuckins@catalyte.io>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
6 years agoForward-port 3.1.5 upgrade script
Dan Wells [Wed, 29 Aug 2018 22:18:54 +0000 (18:18 -0400)]
Forward-port 3.1.5 upgrade script

Signed-off-by: Dan Wells <dbw2@calvin.edu>
6 years agoForward-port 3.0.11 upgrade script
Dan Wells [Wed, 29 Aug 2018 22:18:25 +0000 (18:18 -0400)]
Forward-port 3.0.11 upgrade script

Signed-off-by: Dan Wells <dbw2@calvin.edu>
6 years agoLP#978095 ACQ use last-canceled copy reason if best
Bill Erickson [Fri, 27 Jul 2018 18:30:07 +0000 (14:30 -0400)]
LP#978095 ACQ use last-canceled copy reason if best

Only use an alternate keep-debits cancel reason if the currently
canceled copy is not using a keep-debits reason.

Also clarify in the docs that if another keep-debits reason is selected,
it's essentially chosen at random, not necessarily the "last" copy.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
6 years agolp978095 auto-canceling lineitems
Jason Etheridge [Fri, 2 Feb 2018 16:30:36 +0000 (11:30 -0500)]
lp978095 auto-canceling lineitems

"Acq: lineitems display as "on order" even after all copies have been cancelled"

When a copy (lineitem detail) on a lineitem is canceled through the UI, all of
the sibling copies are examined, and if they also happen to be canceled, then a
cancel attempt is made on the parent lineitem.

The cancel reason fed to the lineitem cancelation attempt will be the last
cancel reason on an examined sibling lineitem where Keep Debits is True, or
failing that, the cancel reason used wih the copy just canceled.

The UI will refresh to the lineitem view when such an auto-cancelation happens.

Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
6 years agoLP#1768902 Stamping DB upgrade for Z39 UPC
Bill Erickson [Fri, 24 Aug 2018 20:05:09 +0000 (16:05 -0400)]
LP#1768902 Stamping DB upgrade for Z39 UPC

Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP#1768902: quick release note entry
Ben Shum [Thu, 3 May 2018 17:36:31 +0000 (12:36 -0500)]
LP#1768902: quick release note entry

Signed-off-by: Ben Shum <ben@evergreener.net>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP#1768902: Add UPC to z3950 search for OCLC and LOC
Ben Shum [Thu, 3 May 2018 17:24:44 +0000 (12:24 -0500)]
LP#1768902: Add UPC to z3950 search for OCLC and LOC

Based on settings provided by Jane Sandberg, add the UPC as a search
attribute definition for OCLC and LOC z3950 targets.

Signed-off-by: Ben Shum <ben@evergreener.net>
Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoDocs: adding release notes and docs for LP1760160
Jane Sandberg [Tue, 1 May 2018 08:22:15 +0000 (03:22 -0500)]
Docs: adding release notes and docs for LP1760160

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP1760160: Search bar has a different CSS class when on the home page
Jane Sandberg [Sat, 31 Mar 2018 13:48:49 +0000 (06:48 -0700)]
LP1760160: Search bar has a different CSS class when on the home page

To test:
1. In templates/opac/css/style.css, add some highly noticeable CSS that
applies to .searchbar-home or an element within .searchbar-home, e.g.
  .searchbar-home .search-box {
    background-color: purple;
    height: 4em;
  }
2. Go to the home page of your public catalog.  The .searchbar-home .search-box CSS
should have taken effect.
3. Go to another page of your public catalog, such as a search results
or login page.  The CSS should not have taken effect here.

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP 1768715: pingest.pl merge conflict typo fix: skip_dispaly
Bill Erickson [Thu, 23 Aug 2018 16:26:11 +0000 (12:26 -0400)]
LP 1768715: pingest.pl merge conflict typo fix: skip_dispaly

Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP 1768715: pingest.pl Release Notes and Installation
Jason Stephenson [Sun, 3 Jun 2018 00:33:23 +0000 (20:33 -0400)]
LP 1768715: pingest.pl Release Notes and Installation

Add pingest.pl to Open-ILS/src/Makefile.am so it will be installed by
default.

Add release notes for pingest.pl.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP 1768715: Fix pingest.pl bug discovered by Dan Scott of Laurentian U.
Jason Stephenson [Sat, 2 Jun 2018 23:18:40 +0000 (19:18 -0400)]
LP 1768715: Fix pingest.pl bug discovered by Dan Scott of Laurentian U.

Reingest was not happening if all ingests were skipped, except for the
display field reingest.  This came down to a matter of two conditional
statements not including checks for the $skip_display variable being
true.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP 1768715: Use older named notation in pingest.pl
Jeff Godin [Fri, 24 Nov 2017 15:23:56 +0000 (10:23 -0500)]
LP 1768715: Use older named notation in pingest.pl

Use older style param := 'value' named notation for PostgreSQL
function calls in pingest.pl to support PostgreSQL versions < 9.5.

NOTE: This commit was modified to fit with the flow of the surrounding
commits from the master branch of the source repository.

Signed-off-by: Jeff Godin <jgodin@tadl.org>
Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP 1768715: Whitespace cleanup in Blake's commit.
Jason Stephenson [Wed, 22 Nov 2017 02:23:03 +0000 (21:23 -0500)]
LP 1768715: Whitespace cleanup in Blake's commit.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP 1768715: Missing semi colon
Blake GH [Tue, 21 Nov 2017 16:41:48 +0000 (10:41 -0600)]
LP 1768715: Missing semi colon

Add missing semi-colon in pingest.pl.

Signed-off-by: Blake GH <blake@mobiusconsortium.org>
Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP 1768715: Handle the skip_display option of metabib.reingest_metabib_field_entries.
Jason Stephenson [Wed, 4 Oct 2017 20:43:37 +0000 (16:43 -0400)]
LP 1768715: Handle the skip_display option of metabib.reingest_metabib_field_entries.

pingest.pl gets a --skip-display option of its own that disables the
display ingest.  The display ingest is also skipped in the browse
ingest.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP 1768715: Add skip_browse where it was missed in pingest.pl.
Jason Stephenson [Wed, 4 Oct 2017 17:25:19 +0000 (13:25 -0400)]
LP 1768715: Add skip_browse where it was missed in pingest.pl.

I missed the named parameter for skip_browse in reingest_field_entries
in pingest.pl in the earlier commit.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP 1768715: Use named arguments in function calls in pingest.pl.
Jason Stephenson [Wed, 4 Oct 2017 16:55:05 +0000 (12:55 -0400)]
LP 1768715: Use named arguments in function calls in pingest.pl.

This makes it work, more or less, with Evergreen 3.0 and the changes
to metabib.reingest_field_entries.  Note that the new skip_display
parameter is not set, so you might get collisions between the browse
ingest and one of the other ingest processes if they both work on the
same record at once.

I will make a branch for use with Evergreen 3.0 until I upgrade to
Evergreen 3.0 and merge that branch into master.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP 1768715: Add database connection parameters to pingest.pl command line.
Jason Stephenson [Wed, 4 Oct 2017 15:18:35 +0000 (11:18 -0400)]
LP 1768715: Add database connection parameters to pingest.pl command line.

This will serve as the model for future Perl scripts that need to
connect to the PostgreSQL database with DBI.  I may go back and alter
the existing scripts to use this method.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP 1768715: Make the pingest.pl --pipe option be greedy.
Jason Stephenson [Mon, 11 Apr 2016 16:25:57 +0000 (12:25 -0400)]
LP 1768715: Make the pingest.pl --pipe option be greedy.

The --pipe option is used with pingest.pl now assumes that that any
string of digits in the input is a record id.  Instead of using just
the first string of digits on a line, as it did before, it now uses
each string of digits on a line.

Signed-off-by: Jason Stephenson <jstephenson@mvlcstaff.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP 1768715: Simplify Open-ILS/src/support-scripts/pingest.pl with selectcol_arrayref.
Jason Stephenson [Mon, 11 Apr 2016 14:39:02 +0000 (10:39 -0400)]
LP 1768715: Simplify Open-ILS/src/support-scripts/pingest.pl with selectcol_arrayref.

By switching to DBI->selectcol_arrayref in pingest.pl, we can avoid
having to check for references in the main loop.  This eliminates an
extra variable and an extra line of code that are no longer needed.

Signed-off-by: Jason Stephenson <jstephenson@mvlcstaff.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP 1768715: Only connect to the database when needed in pingest.pl.
Jason Stephenson [Fri, 1 Apr 2016 14:02:45 +0000 (10:02 -0400)]
LP 1768715: Only connect to the database when needed in pingest.pl.

We chagne where we connect and disconnect the database in the parent
process in pingest.pl.  There's no point connecting at all if the
--pipe option is used.

Signed-off-by: Jason Stephenson <jstephenson@mvlcstaff.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP 1768715: Fix bug in pingest.pl after --pipe option was added.
Jason Stephenson [Fri, 1 Apr 2016 14:00:20 +0000 (10:00 -0400)]
LP 1768715: Fix bug in pingest.pl after --pipe option was added.

Apparently, the results of DBI->selectall_arrayref need to be cast to
an array and not just returned as a list.

Signed-off-by: Jason Stephenson <jstephenson@mvlcstaff.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP 1768715: Add --pipe option to pingest.pl
Jason Stephenson [Thu, 31 Mar 2016 15:39:49 +0000 (11:39 -0400)]
LP 1768715: Add --pipe option to pingest.pl

With this option, pingest.pl reads a list of record IDs from standard
input, instead of running a query.  This is useful if you have a
custom query to output only certain records to reingest and you can
pipe the output into pingest.pl.

Signed-off-by: Jason Stephenson <jstephenson@mvlcstaff.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP 1768715: pingest supports max/min ID, duration, more ops
Bill Erickson [Tue, 16 Feb 2016 17:59:55 +0000 (12:59 -0500)]
LP 1768715: pingest supports max/min ID, duration, more ops

From the new help text:

    --batch-size
        Number of records to process per batch

    --max-child
        Max number of worker processes

    --skip-browse
    --skip-attrs
    --skip-search
    --skip-facets
        Skip the selected reingest component

    --start-id
        Start processing at this record ID.

    --end-id
        Stop processing when this record ID is reached

    --max-duration
        Stop processing after this many total seconds have passed.

    --help
        Show this help text.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
6 years agoLP 1768715: Add pingest.pl to Evergreen.
Jason Stephenson [Mon, 26 Oct 2015 14:32:19 +0000 (10:32 -0400)]
LP 1768715: Add pingest.pl to Evergreen.

Add Open-ILS/src/support-script/pingest.pl to do ingests in parallel.
See release notes for details.

NOTE: This and subsequent commits were added from a branch that
preserves the history of the repository from which pingest.pl was
copied.  The dates on these commits represent when the code was added
or modified in the source repository.  They do not reflect when the
code was added to Evergreen.

Also, pingest.pl predates this commit.  The date on this commit was
when the source repository was split into separate directories for SQL
and Perl scripts.

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP#1732552: Move OPAC login username hint to separate template
Jeff Davis [Wed, 15 Nov 2017 22:36:21 +0000 (14:36 -0800)]
LP#1732552: Move OPAC login username hint to separate template

Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoDocs: finalizing 3.1.5 release notes
Jane Sandberg [Wed, 22 Aug 2018 20:58:24 +0000 (13:58 -0700)]
Docs: finalizing 3.1.5 release notes

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
6 years agoDocs: finalizing 3.0.11 release notes
Jane Sandberg [Wed, 22 Aug 2018 20:57:32 +0000 (13:57 -0700)]
Docs: finalizing 3.0.11 release notes

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
6 years agoLP1733590: Only Print Selected Items Out
Jason Boyer [Wed, 22 Aug 2018 13:07:55 +0000 (09:07 -0400)]
LP1733590: Only Print Selected Items Out

The list of selected items being passed to print_receipt
was being ignored and the whole list of items currently
checked out used instead. This patch uses the list
presented so staff can only print those items that they
want to, such as a small number of items renewed today,
etc.

Signed-off-by: Jason Boyer <jboyer@library.in.gov>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
6 years agoDocs: more release notes for 3.1.5
Jane Sandberg [Wed, 22 Aug 2018 17:22:20 +0000 (10:22 -0700)]
Docs: more release notes for 3.1.5

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
6 years agoDocs: updating 3.0.11 release notes
Jane Sandberg [Wed, 22 Aug 2018 17:18:29 +0000 (10:18 -0700)]
Docs: updating 3.0.11 release notes

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
6 years agoLP#1788417: boolean fields should say 'Yes'/'No' instead of true/false
a. bellenir [Wed, 22 Aug 2018 15:33:55 +0000 (11:33 -0400)]
LP#1788417: boolean fields should say 'Yes'/'No' instead of true/false

boolean fields on egGrid use tt2-translated strings for "Yes" and "No"
instead of letting the browser translate the values 'true' and 'false'
(in accordance with the prophecy of XUL)

Signed-off-by: a. bellenir <ab@grpl.org>
Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
6 years agoLP#1774448 Auth poll spam/timing repairs
Bill Erickson [Thu, 31 May 2018 19:12:55 +0000 (15:12 -0400)]
LP#1774448 Auth poll spam/timing repairs

Avoid spamming the server with authentication session checks on bad poll
time values.  Specifically, never poll more often than once per minute
and avoid integer overflow on long authentication timeout values
(greater than about 24.8 days) resulting in the poll running with an
effective timeout of zero and spamming the server with API calls.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jason Boyer <jboyer@library.in.gov>
6 years agoLP#1724029 Patron search API returns correct order
Bill Erickson [Fri, 10 Aug 2018 16:16:57 +0000 (12:16 -0400)]
LP#1724029 Patron search API returns correct order

Avoid use of max_chunk_size in patron search API as it results in
streaming responses in the wrong order.  Use max_bundle_count instead,
which does not suffer from the sorting issues.  What's more, its purpose
and affect is easier to grasp in the code.

Bundle count is set to 5 so the API will begin returning results at most
5 patrons into the data fleshing process.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
6 years agoLP#1743801: Item Status List Display Issues
a. bellenir [Mon, 4 Jun 2018 18:25:00 +0000 (14:25 -0400)]
LP#1743801: Item Status List Display Issues

Update fm_IDL.xml, establishing circ_as_type as a link to
config::item_type_map.  Flesh this field to display desired value on
client side.

Conflicts:
    Open-ILS/web/js/ui/default/staff/circ/services/item.js

Signed-off-by: a. bellenir <ab@grpl.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Jason Stephenson <jason@sigio.com>
6 years agoLP#1743801: Item Status List View Display Issues
a. bellenir [Thu, 24 May 2018 15:44:28 +0000 (11:44 -0400)]
LP#1743801: Item Status List View Display Issues

Age Protection was missing '.name' field.

Loan Duration and Fine Levels are numeric: 1, 2, or 3.
Added an Angular filter to show the desired string from numeric index.

Conflicts:
    Open-ILS/src/templates/staff/cat/item/t_list.tt2

Signed-off-by: a. bellenir <ab@grpl.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Jason Stephenson <jason@sigio.com>
6 years agoDocs: Adding release notes for 3.1.5
Jane Sandberg [Tue, 21 Aug 2018 17:12:45 +0000 (10:12 -0700)]
Docs: Adding release notes for 3.1.5

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
6 years agoDocs: Adding release notes for 3.0.11
Jane Sandberg [Tue, 21 Aug 2018 17:10:32 +0000 (10:10 -0700)]
Docs: Adding release notes for 3.0.11

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
6 years agoDocs: removing outdated info about alerts
Jane Sandberg [Mon, 20 Aug 2018 23:47:23 +0000 (16:47 -0700)]
Docs: removing outdated info about alerts

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
6 years agoDocs: small changes to record bucket docs
Jane Sandberg [Fri, 17 Aug 2018 19:25:55 +0000 (12:25 -0700)]
Docs: small changes to record bucket docs

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
6 years agoLP#1775216: Stamping upgrade script for inconsistent copy counts
Kathy Lussier [Wed, 15 Aug 2018 22:10:08 +0000 (18:10 -0400)]
LP#1775216: Stamping upgrade script for inconsistent copy counts

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
6 years agoLP#1587620: inconsistent copy counts between opac and staff client for peer bibs
a. bellenir [Fri, 15 Jun 2018 19:53:10 +0000 (15:53 -0400)]
LP#1587620: inconsistent copy counts between opac and staff client for peer bibs

staff copy counts should include peer bib copies, per LP1587620.

Signed-off-by: a. bellenir <ab@grpl.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
6 years agoLP#1775216: inconsistent copy counts between opac and staff client
a. bellenir [Fri, 8 Jun 2018 15:42:53 +0000 (11:42 -0400)]
LP#1775216: inconsistent copy counts between opac and staff client

opac version of copy counts was including copies under deleted call numbers
more discussion here: http://irc.evergreen-ils.org/evergreen/2018-06-08#i_363334

Signed-off-by: a. bellenir <ab@grpl.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
6 years agoLP#1775216: adding a pgtap test for inconsistent availability counts
a. bellenir [Fri, 8 Jun 2018 14:29:59 +0000 (10:29 -0400)]
LP#1775216: adding a pgtap test for inconsistent availability counts

Signed-off-by: a. bellenir <ab@grpl.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
6 years agoLP#1775216: inconsistent availability counts between staff client and opac
a. bellenir [Tue, 5 Jun 2018 19:56:24 +0000 (15:56 -0400)]
LP#1775216: inconsistent availability counts between staff client and opac

update asset.staff_ou_record_copy_count to get an accurate available count.

borrow asset.opac_ou_record_copy_count's logic for counting available copies
so that statuses with is_available set to 't' in config.copy_status are used
instead of using the hardcoded status id list (0,7,12)

Signed-off-by: a. bellenir <ab@grpl.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
6 years agoLP#1721575 Stamping DB upgrade: batch catalog actions
Bill Erickson [Wed, 15 Aug 2018 18:08:41 +0000 (14:08 -0400)]
LP#1721575 Stamping DB upgrade: batch catalog actions

Also replaced a remaining reference to "cart" with "basket"

Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP#1721575: Changes to some strings
Kathy Lussier [Tue, 14 Aug 2018 20:28:35 +0000 (16:28 -0400)]
LP#1721575: Changes to some strings

We missed one instance of cart when changing everything over to baskets. Also,
I updated language for clearing a basket after placing a hold to make it a
little clearer.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
6 years agoLP#1721575: Batch Actions In the Public Catalog
Galen Charlton [Mon, 14 May 2018 19:24:59 +0000 (15:24 -0400)]
LP#1721575: Batch Actions In the Public Catalog

The public catalog now displays checkboxes on the bibliographic and
metarecord constituents results pages. Selecting one or more titles
by using the checkboxes will dynamically add those title to the
temporary list, which is now renamed the basket.

Above the results lists there is now a bar with a select-all checkbox,
a link to the basket management page that also indicates the number of
of titles in the basket, and a link to remove from the basket titles that
are selected on the currently displayed results page.

The search bar now includes an icon of a basket and displays the number
of titles currently in the basket. Next to that icon is a menu of basket
actions.

The basket actions available are Place Hold, Print Title Details,
Email Title Details, Add Cart to Saved List, and Clear Cart. In the
web staff client, the basket actions also include Add Cart to Bucket.
When an action is selected from this menu, the user is given an
opportunity to confirm the action and to optionally empty the basket
when the action is complete. The action is applied to all titles
in the basket.

Clicking on the basket icon brings the user to a page listing the
titles in the basket. From there, the user can select specific records
to request, print, email, add to a list, or remove from the basket.

The list of actions on the record details page now provides separate
links for adding the title to a basket or to a permanent list.

The permanent list management page in the public catalog now also
includes batch print and email actions.

Additional information
++++++++++++++++++++++
* The checkboxes do not display on the metarecord results page, as
  metarecords currently cannot be put into baskets or lists.
* The checkboxes are displayed only if Javascript is enabled. However,
  users can still add items to the basket and perform batch actions on
  the basket and on lists.
* A template `config.tt2` setting, `ctx.max_basket_size`, can be used to
  set a soft limit on the number of titles that can be added to the
  basket. If this limit is reached, checkboxes to add more records to the
  basket are disabled unless existing titles in the basket are removed
  first. The default value for this setting is 500.

Developer notes
+++++++++++++++

This patch adds the the public catalog two routes that return JSON
rather than HTML:

* `GET /eg/opac/api/mylist/add?record=45`
* `GET /eg/opac/api/mylist/delete?record=45`

The JSON response is a hash containing a mylist key pointing to the list
of bib IDs of contents of the basket.

The record parameter can be repeated to allow adding or removing
records as an atomic operation. Note that this change also now available
to `/eg/opac/mylist/{add,delete}`

More generally, this adds a way for EGWeb context loaders to specify that
a response should be emitted as JSON rather than rendering an HTML
page using `Template::Toolkit`.

Specifically, if the context as munged by the context loader contains
a `json_response` key, the contents of that key will to provide a
JSON reponse. The `json_response_cookie` key, if present, can be used
to set a cookie as part of the response.

Template Toolkit processing is bypassed entirely when emitting a JSON
response, so the context loader would be entirely reponsible for
localization of strings in the response meant for direct human
consumption.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>