working/Evergreen.git
5 years agoNAV squash user/gmcharlt/aa1-rebase
Galen Charlton [Tue, 3 Mar 2020 23:24:08 +0000 (18:24 -0500)]
NAV squash

NAV add provider search placeholder menu entry to eg2

NAV Several provider entry points

NAV add provider search to AngularJS Acq menu

NAV move the provider search nav item

5 years agoACQPRO final squash
Galen Charlton [Tue, 3 Mar 2020 23:18:55 +0000 (18:18 -0500)]
ACQPRO final squash

ACQPRO squash #11

ACQPRO squash #10

ang providers: create base modules and components

acq providers: allow search form and details view to share a tab

start work on AcqProviderSearch

ang provider search form component

fix thinko

more work on hooking up search service and search form

TODO:
- contact name searching
- get the org-family-selector to show the starting value
  of the WS OU
- refactor how form parameters are managed?

WIP: complex, cross-table searches

Require classes for search; be very verbose for typescript

make ng lint happier

toward summary pane

add summary pane component to module and a missing decorator

initial stab at provider record service

set active provider ID when a row is selected

Note - not changing the route for now

address and contact stubs

actually push out initial version of provider record service

hook up contact and provider components to record service

add contact and address components to their tabs

refresh record service upon ID change

provider address modal

provider record service updates

- fetch() now returns a promise
- added refreshCurrent();
- added batchUpdate()

update provider address component to reflect updates to provider record service

ACQPRO squash #8

default to valid == true when creating new provider addresses

contacts modal

update provider contacts component to reflect updates in provider record service

provider record service: add currentProviderId

This works around some race conditions fetching the current
provider upon initialization; we should fix this so that
current() can account for in-flight initialization or
refreshes.

add provider invoices component

provider purchase orders component

ACQPRO squash #7

hide provider column by default in contact and address grids...

... but if the user insists on displaying that column, redundantly,
flesh it so that the code is displayed

move provider search form

The provider search form is now outside of the tabset and its
visibility is controlled by a button. Also, clicking on a row
on the search results will now hide the search form.

after selecting a provider from the search form, update the route

hide the provider info tabset if there's no selected provider

add a bit of separation

anq holdings component

fix adding new holdings subfield mappings

ACQPRO squash #12

new provder modal

start work on provider details tab

TODO: teach the record editor how to do a two-column layout
TODO: add delete button

Attributes tab

XXX: Stub function to allow compilation

toggle for provider summary pane

stretch provider UI when summary is collapsed

also hide Delete Provider button when collapsed to give more opportunity for stretch

use materials icons expand_less/expand_more

contact addresses component

ACQPRO squash #6

ensure that provider contact addresses component gets found before reloading its grid

Refresh contact addresses from updated service data

basic EDI account management

update summary after editing provider

add grid for displaying EDI messages for a selected account

adjust display of URL in summary pane

* hyperlink URL
* do not include an empty anchor if no URL is supplied

summary: display active flag using eg-bool

always pass through the state of the 'active' field on the search form

add placeholders for the eg-comboboxes on the search form

tweak display of contact role in sidebar

add field help to the EDI account modal

add a route resolver to ensure that the provider has been fetched when linking by ID

update summary when contacts are edited

Make provider addresses, contacts, and contact addresses filterable

add 'View EDI Messages' grid toolbar button

implement set default view button

fix

display provider name and code even when summary is hidden

use experimental remain open on error

ACQPRO squash #5

WIP: edit tag on holdings tab

Alphabetize the Holdings Definition dropdown (32)

Relabel holdings definitions for consistency (26)

Fix thinko to allow Currency Type searching (30)

Direct provider (and shipper) links in search and provider interfaces at the new Angular UI (24)

Fix thinko with non-pcrud grid paging (31)

adjust links to providers so that user-specified default tab is displayed

add human-friendly labels for the name column in the holdings definitions grid

improve handling of currency type (LH#30)

- display currency label in the summary
- fix ability to edit it in the details fm-editor
- preload the currency drop-down

improve display of the EDI Default field (LH#23)

flesh provider in the provider EDI account grid (LH#23)

(though this is a bit redundant since the list of EDI accounts
 displayed is restricted to the ones owned by the current
 provider)

add grid config to ang

ACQPRO squash #4

tweak columns in addresses tab (LH#25)

- set a default column order
- don't display the ID column by default

ACQPRO squash #3

tweak provider contact addresses

Following LH#25

change input for Active? on search form to a tri-value select (LH#16)

fix styling of clear form button

ACQPRO squash #2

sort by provider name by default (LH#14)

submit search form immediately (LH#14)

TODO: see if we can defer this if all we've done is gone
      directly to a specific provider

immediately run search only of search form starts off being visble (LH#14)

LH#38: add mechanism to detect if provider can be deleted

LH#6: change "Clear Form" => "Reset Form"

LH#41: add column to EDI account table to indicate which account is the provider's default

LH#12 various styling improvements

- clean up how the hide search form and new provider column flows
- add a bit of padding below the Set Default View button
- change the label of the Owning Library search input to Owner
- keep the Owner label and OU search input on same line for narrower screens

LH#8 turn on asyncSupportsEmptyTermClick for some fields in search form

Specifically: EDI Default and Currency

LH#8 preload EDI default default claim policy on provider create/update forms

LH#1: match responsive breakpoint of summary pane and main page

LH#1 tweaks to display of search form and summary

- search form now displays above the summary and vendor
- Delete Provider button now only displayed where there is an active provider
- no traces of the summary pane appear when entering the interface fresh

improve record retrieval and refreshes

- reduce the number of redundant fetches
- use subscriptions to inform child components when
  they need to refresh themselves

update PO and LI components to use AttrDefsService

wire up functionality for primary contact

don't show the primary contact field on the create modal

send toast and navigate away upon deleting provider

quell some console noise

clear search form and redo default search if same-URL-navigated

account for staff users who do not have the ADMIN_PROVIDER permission

TODO: make the Delete Provider and New Provider buttons be deactivated
      or not appear as relevant.

LH#15: tweaks to primary contact functionality

- added unset as primary action
- fixed confirmation modals
- more selectively enable and disable the set and unset actions

LH#9: tweak click actions on provider results form

- single click: retrieve provider but do not hide search form
- double click: retrieve provider and hide search form

LH#9: add explicit 'Retrieve Provider' action

LH#4: add sticky expand/collapse of search form

LH#21: tweak holding tag form

LH#17: warn if attempting to leave provider edits in flight

acqpro SQUASH #1

avoid glitch in low-permission mode

more tweaks for low permissions scenarios

LH#29: ensure that we don't search for providers that we can't retrieve

handle permissions coming in late

LH#27: navigate to search page if given direct link to provider that cannot be retrieved

5 years agoSCHEMA UPDATE grid config settings
Galen Charlton [Wed, 2 Sep 2020 16:36:47 +0000 (12:36 -0400)]
SCHEMA UPDATE grid config settings

5 years agoDB/IDL add primary_contact column to acq.provider
Galen Charlton [Mon, 17 Aug 2020 19:26:21 +0000 (15:26 -0400)]
DB/IDL add primary_contact column to acq.provider

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoIDL SQUASH
Galen Charlton [Wed, 2 Sep 2020 16:32:25 +0000 (12:32 -0400)]
IDL SQUASH

IDL change for contacts

IDL mark required fields as required in IDL for provider addresses

IDL Mark required fields on the provider-contact object

IDL change for holdings subfields

IDL mark required fields in IDL for acqpro

IDL Add link from provider to attributes

IDL update IDL to link acqpro => acqedi

IDL LP#XXX: mark acqpro.name as not translatable

Providers don't tend to vary their names by locale, so
this seems unnecessary.

IDL mark acq.edi_account columns as required in IDL

IDL mark more fields as required in the IDL (LH#20)

IDL for contact addresses

5 years agoorg-family-select: tweak so that mutating its ngModel now updates the control
Galen Charlton [Thu, 9 Jul 2020 21:15:58 +0000 (17:15 -0400)]
org-family-select: tweak so that mutating its ngModel now updates the control

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agofm-edit lint
Galen Charlton [Wed, 2 Sep 2020 16:49:12 +0000 (12:49 -0400)]
fm-edit lint

5 years agofm-editor: add helpText field option
Galen Charlton [Thu, 9 Apr 2020 15:24:04 +0000 (11:24 -0400)]
fm-editor: add helpText field option

This accepts a reference to an eg-string to display as
a popover for the specified fielod.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agofm-edit: (SQUASH) deal with potential initialization sequence error
Galen Charlton [Tue, 1 Sep 2020 14:52:50 +0000 (10:52 -0400)]
fm-edit: (SQUASH) deal with potential initialization sequence error

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
fm-edit: be more resilient in case linked values cannot be fleshed

(as might happen in various permissions scenarios; for example, a
 user may be able to fetch providers but not the EDI default account
 associated with it)

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agofm-edit: add ability to query whether form is dirty
Galen Charlton [Tue, 1 Sep 2020 02:39:49 +0000 (22:39 -0400)]
fm-edit: add ability to query whether form is dirty

NOTE: not all of the custom components that can show up on
      an fm-edit form currently implement component-level
      dirty checks.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agofm-editor: don't activate save button if form is pristine
Galen Charlton [Thu, 9 Jul 2020 20:06:09 +0000 (16:06 -0400)]
fm-editor: don't activate save button if form is pristine

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agofm-edit: add experimental remainOpenOnError to the record editor
Galen Charlton [Fri, 17 Apr 2020 21:11:29 +0000 (17:11 -0400)]
fm-edit: add experimental remainOpenOnError to the record editor

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1850547: (follow-up) fix 'New Selection List' button
Galen Charlton [Wed, 2 Sep 2020 15:34:05 +0000 (11:34 -0400)]
LP#1850547: (follow-up) fix 'New Selection List' button

Now that it's a toolbar button rather than a grid action,
the check to see if the button should be active needed to be
adjusted.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1850547: release notes for Angular Acquisitions Search
Galen Charlton [Fri, 31 Jul 2020 16:10:39 +0000 (12:10 -0400)]
LP#1850547: release notes for Angular Acquisitions Search

The general test plan for the feature includes:

- verifying that results are retrieved as expected
- verifying that default searches can be saved and cleared
  and are used to populate the form.
- verifying that the run immediately checkbox works as expected
- verifying that grid result sorting and filtering works
  as expected
- verifying that links to POs, providers, catalog records,
  etc. find their correct targets

Sponsored-by: Evergreen Community Development Initiative
Sponsored-by: Georgia Public Library Service
Sponsored-by: Indiana State Library
Sponsored-by: C/W MARS
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1850547: Angular Acquistions Search
Galen Charlton [Tue, 22 Oct 2019 19:29:40 +0000 (15:29 -0400)]
LP#1850547: Angular Acquistions Search

This patch adds the Angular application for acquisitions search
and links the Angular and AngularJS navbars to it.

Includes contributions by Mike Rylander and Jason Etheridge.

I would like to also specifically acknowledge feedback from
Bill Erickson and Mike Risher on this patch series.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
5 years agoLP#1850547: Angular Acq Search: Perl API changes
Mike Rylander [Thu, 31 Oct 2019 19:23:22 +0000 (15:23 -0400)]
LP#1850547: Angular Acq Search: Perl API changes

This patch makes a variety of changes to methods used by
acquisitions search and retrieval. The overall intention of this
patch is to not change functionality used by the old Dojo
search interface but to add support for new functionality for
the Angular search form.

Specific changes include:

open-ils.acq.*.unified_search
-----------------------------
* Add __age (interval), __starts, __ends, __gt, and __lt operators.

Update __between to support __castdate modifier, for a more natural
comparison of dates entered by humans to timestamps stored in the
database.

* fix sorting by line item attributes

* add support for __gte, __gt, __lte, and __lt for acqlia searches

* add permissions checks for retrieving POs and invoices via
  unified_search

* improvements to server-side sorting of search results

- create joins for aou, acqim, and acqipm as needed
- look up identity column for a class rather than assuming
  that it's always 'id'

* allow searching on an explicit null value

This adjusts the special logic introduced in LP#1031535 so
that explicitly searching with a field set to not null (e.g.,
when using the Angular grid 'exists' filter) will work.

* add __isnotnull as an acq search field modifier

* allow __fuzzy to override au_by_id in unified search

* Sort by remote selector column when sort-on-link is requested and
  selector exists

* Add additional fleshing for purchase order, selection lists,
  and invoice searches.

* Add au_by_id option

This specifies performing queries on au-linked fields by
ID rather than adding joins to query the fields by user
barcode or username, etc.

* Implement "contains" operator for searches on provider
  fields.

This is similar to how user searches are handled.

Other methods
-------------
* teach open-ils.acq.lineitem.retrieve more fleshing

In particular, teach it how to flesh the LI provider, Vandelay queue,
creator, editor, selector, and claim policy so that Angular LI search
can display them without having to make additional server requests.

* clarify open-ils.acq.picklist.clone

Method is now clear that _nothing_ of the acq.picklist row
itself gets copied over.

This patch contains work by Mike Rylander, Galen Charlton, and Jason
Etheridge.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1850547: add views for PO and LI state labels
Galen Charlton [Tue, 11 Feb 2020 19:18:49 +0000 (14:18 -0500)]
LP#1850547: add views for PO and LI state labels

This patch adds two new views, acq.po_state_label and
acq.li_state_label, to map from the state codes to human-friendly
labels in a way that allows the labels to be retrieved and
translated.

This patch also changes the fieldmapper label of the PO
and LI state column from "State" to "Status".

This patch includes contributions by Mike Rylander.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
5 years agoLP#1862022: add more permissions to stock Acquisitions and Acq Admin profiles
Galen Charlton [Wed, 5 Feb 2020 00:52:25 +0000 (19:52 -0500)]
LP#1862022: add more permissions to stock Acquisitions and Acq Admin profiles

This patch makes the stock Acquisitions and Acquisitions Administrator
profiles better able to use the acquisitions modules out of the box.

The permissions added are:

Acquisitions Administrator Profile
-----------------------------------------
VIEW_FUND
VIEW_FUNDING_SOURCE
VIEW_FUND_ALLOCATION
VIEW_PICKLIST
VIEW_PROVIDER
VIEW_PURCHASE_ORDER
VIEW_INVOICE
CREATE_PICKLIST
ACQ_ADD_LINEITEM_IDENTIFIER
ACQ_SET_LINEITEM_IDENTIFIER
MANAGE_FUND
CREATE_INVOICE
CREATE_PURCHASE_ORDER
IMPORT_ACQ_LINEITEM_BIB_RECORD
IMPORT_ACQ_LINEITEM_BIB_RECORD_UPLOAD
MANAGE_CLAIM
MANAGE_PROVIDER
MANAGE_FUNDING_SOURCE
RECEIVE_PURCHASE_ORDER
ADMIN_ACQ_LINEITEM_ALERT_TEXT
UPDATE_FUNDING_SOURCE
UPDATE_PROVIDER
VIEW_IMPORT_MATCH_SET
VIEW_MERGE_PROFILE
IMPORT_MARC

Acquisitions Profile
-----------------------------------------
ACQ_ADD_LINEITEM_IDENTIFIER
ACQ_SET_LINEITEM_IDENTIFIER
ADMIN_ACQ_FUND
ADMIN_FUND
ACQ_INVOICE-REOPEN
ADMIN_ACQ_DISTRIB_FORMULA
ADMIN_INVOICE
IMPORT_ACQ_LINEITEM_BIB_RECORD_UPLOAD
VIEW_IMPORT_MATCH_SET
VIEW_MERGE_PROFILE

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1850547: Seed data for Angular acquisitions search
Galen Charlton [Mon, 20 Jan 2020 22:42:14 +0000 (17:42 -0500)]
LP#1850547: Seed data for Angular acquisitions search

* grid persistance WS settings
* retrieve-results-immediately sticky checkbox settings
* default saved searches settings

Sponsored-by: Evergreen Community Development Initiative
Sponsored-by: Georgia Public Library Service
Sponsored-by: Indiana State Library
Sponsored-by: C/W MARS
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1850547: eg-date-select: let blur trigger emitting changes
Galen Charlton [Wed, 8 Jul 2020 20:25:47 +0000 (16:25 -0400)]
LP#1850547: eg-date-select: let blur trigger emitting changes

(Otherwise, you have to select the calendar button or hit
 return inisde the input)

Sponsored-by: Evergreen Community Development Initiative
Sponsored-by: Georgia Public Library Service
Sponsored-by: Indiana State Library
Sponsored-by: C/W MARS
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1850547: eg-org-select: allow applyOrg[Id] to clear the org unit
Galen Charlton [Mon, 2 Mar 2020 17:30:47 +0000 (12:30 -0500)]
LP#1850547: eg-org-select: allow applyOrg[Id] to clear the org unit

Sponsored-by: Evergreen Community Development Initiative
Sponsored-by: Georgia Public Library Service
Sponsored-by: Indiana State Library
Sponsored-by: C/W MARS
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1850547: new eg-interval-input: Angular component for inputting time intervals
Galen Charlton [Fri, 31 Jan 2020 23:13:59 +0000 (18:13 -0500)]
LP#1850547: new eg-interval-input: Angular component for inputting time intervals

Usage:

   <eg-interval-input [(ngModel)]="interval">
   </eg-interval-input>

This provides a simple combination of a numeric input and a
drop-down for time interval units.

Sponsored-by: Evergreen Community Development Initiative
Sponsored-by: Georgia Public Library Service
Sponsored-by: Indiana State Library
Sponsored-by: C/W MARS
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1850547: eg-grid: disable filter controls while fetching data
Galen Charlton [Wed, 26 Feb 2020 19:49:31 +0000 (14:49 -0500)]
LP#1850547: eg-grid: disable filter controls while fetching data

This avoids situations where the user who is quick on the mark
tries to set a filter condition but not see it take effect
when the original query returns results.

Sponsored-by: Evergreen Community Development Initiative
Sponsored-by: Georgia Public Library Service
Sponsored-by: Indiana State Library
Sponsored-by: C/W MARS
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1850547: eg-grid: Add ignoreFields support to suppress selected IDL-generated...
Mike Rylander [Tue, 25 Feb 2020 18:24:24 +0000 (13:24 -0500)]
LP#1850547: eg-grid: Add ignoreFields support to suppress selected IDL-generated grid fields

This adds an ignoreFields attribute to eg-grid to specify IDL fields
that should not be automatically added as columns to the grid.

Sponsored-by: Evergreen Community Development Initiative
Sponsored-by: Georgia Public Library Service
Sponsored-by: Indiana State Library
Sponsored-by: C/W MARS
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1850547: eg-grid: Add passthrough capabilities for click-to-dropdown on linked...
Mike Rylander [Fri, 7 Feb 2020 22:43:55 +0000 (17:43 -0500)]
LP#1850547: eg-grid: Add passthrough capabilities for click-to-dropdown on linked fields

Sponsored-by: Evergreen Community Development Initiative
Sponsored-by: Georgia Public Library Service
Sponsored-by: Indiana State Library
Sponsored-by: C/W MARS
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1850547: eg-grid: indicate error condition to user if data source throws one
Galen Charlton [Fri, 31 Jan 2020 22:21:36 +0000 (17:21 -0500)]
LP#1850547: eg-grid: indicate error condition to user if data source throws one

Sponsored-by: Evergreen Community Development Initiative
Sponsored-by: Georgia Public Library Service
Sponsored-by: Indiana State Library
Sponsored-by: C/W MARS
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1850547: eg-grid: use bolder styling for the 'Nothing to Display' message
Galen Charlton [Sat, 25 Jan 2020 13:16:19 +0000 (08:16 -0500)]
LP#1850547: eg-grid: use bolder styling for the 'Nothing to Display' message

Sponsored-by: Evergreen Community Development Initiative
Sponsored-by: Georgia Public Library Service
Sponsored-by: Indiana State Library
Sponsored-by: C/W MARS
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1850547: eg-combobox: handle cases where selectedId gets cleared
Galen Charlton [Wed, 26 Feb 2020 17:04:45 +0000 (12:04 -0500)]
LP#1850547: eg-combobox: handle cases where selectedId gets cleared

Sponsored-by: Evergreen Community Development Initiative
Sponsored-by: Georgia Public Library Service
Sponsored-by: Indiana State Library
Sponsored-by: C/W MARS
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1850547: eg-combobox: teach it to accommodate idlClass changes
Galen Charlton [Wed, 26 Feb 2020 16:42:53 +0000 (11:42 -0500)]
LP#1850547: eg-combobox: teach it to accommodate idlClass changes

This can happen in dynamically constructed search forms such
as the acquisitions search form.

Sponsored-by: Evergreen Community Development Initiative
Sponsored-by: Georgia Public Library Service
Sponsored-by: Indiana State Library
Sponsored-by: C/W MARS
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1850547: eg-combobox: add per-IDL-class formatting
Galen Charlton [Wed, 26 Feb 2020 15:39:10 +0000 (10:39 -0500)]
LP#1850547: eg-combobox: add per-IDL-class formatting

This patch teaches eg-combobox to apply display templates
and label formatters for when idlClass is set. Currently templates
are defined for acqf (to display the fund as "FUND_CODE (YEAR)" and
acpl (to display the shelving location as "LABEL (OWNING_LIBRARY)".

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1850547: eg-combobox: set a limit on number of entries fetched for idlClass
Galen Charlton [Thu, 13 Feb 2020 16:39:42 +0000 (11:39 -0500)]
LP#1850547: eg-combobox: set a limit on number of entries fetched for idlClass

The automatically-created data source for eg-combobox when used
in idlClass will now limit itself to 100 entries in order to avoid
scenarios where it attempts to fetch all patrons in the database
or the like.

Sponsored-by: Evergreen Community Development Initiative
Sponsored-by: Georgia Public Library Service
Sponsored-by: Indiana State Library
Sponsored-by: C/W MARS
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1850547: eg-combobox: handle startId if idlClass is set
Galen Charlton [Mon, 20 Jan 2020 17:12:53 +0000 (12:12 -0500)]
LP#1850547: eg-combobox: handle startId if idlClass is set

This patch teaches the Angular eg-combobox component to retrieve
the record indicated by the startId attribute when an IDL class
is specified.

Sponsored-by: Evergreen Community Development Initiative
Sponsored-by: Georgia Public Library Service
Sponsored-by: Indiana State Library
Sponsored-by: C/W MARS
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1850547: new Angular file-reader component
Galen Charlton [Fri, 8 Nov 2019 23:39:34 +0000 (18:39 -0500)]
LP#1850547: new Angular file-reader component

This adds a ControlValueAccessor wrapper around a file
reader form input. Any file loaded via that input is interpreted
as a text file whose lines are to be split into an array on
newlines, with leading and trailng whitespace removed.

Usage is:

<eg-file-reader [(ngModel)]="fileContents">
</eg-file-reader>

Sponsored-by: Evergreen Community Development Initiative
Sponsored-by: Georgia Public Library Service
Sponsored-by: Indiana State Library
Sponsored-by: C/W MARS
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1850547: apply transformations to fields used in a BETWEEN operation
Mike Rylander [Thu, 31 Oct 2019 22:09:24 +0000 (18:09 -0400)]
LP#1850547: apply transformations to fields used in a BETWEEN operation

This patch teaches cstore and friends how to apply transformations to
fields used in a BETWEEN operation.

Sponsored-by: Evergreen Community Development Initiative
Sponsored-by: Georgia Public Library Service
Sponsored-by: Indiana State Library
Sponsored-by: C/W MARS
Signed-off-by: Mike Rylander <mrylander@gmail.com>
5 years agoLP#1789679: add illustrative example to release notes
Galen Charlton [Mon, 24 Aug 2020 16:10:14 +0000 (12:10 -0400)]
LP#1789679: add illustrative example to release notes

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1789679: Add release notes.
Chris Sharp [Wed, 19 Aug 2020 19:29:13 +0000 (15:29 -0400)]
LP#1789679: Add release notes.

Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Lynn Floyd <lfloyd1@library.in.gov>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP1789679: fix whitespace; uncheck grouping subtotals by default
Chris Sharp [Wed, 26 Feb 2020 20:54:22 +0000 (15:54 -0500)]
LP1789679: fix whitespace; uncheck grouping subtotals by default

Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Lynn Floyd <lfloyd1@library.in.gov>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1789679: Provide ROLLUP support in report output
Mike Rylander [Wed, 29 Aug 2018 15:39:30 +0000 (11:39 -0400)]
LP#1789679: Provide ROLLUP support in report output

In Postgres 9.5 and newer, it is simple to generate group subtotal and grand
total rows for aggregate queries. The simplest thing would be to spell the
grouping clause as

  GROUP BY ROLLUP (...)

rather than

  GROUP BY ...

when there is a mix of aggregate and non-aggregate columns in a report.  This
branch does just that.

The report definition UI now has a checkbox labeled "Calculate grouping
subtotals" which enables use of the ROLLUP functionality.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Lynn Floyd <lfloyd1@library.in.gov>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agolp1795720 add aria-hidden to Angular/AngularJS navbar icons
Mike Risher [Tue, 23 Jun 2020 21:33:20 +0000 (21:33 +0000)]
lp1795720 add aria-hidden to Angular/AngularJS navbar icons

Modify the navbar so that aria-hidden is applied to icons, so that they
are hidden from screen readers.

Signed-off-by: Mike Risher <mrisher@catalyte.io>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP1891960 Stamping upgrade: patron search sticky org
Bill Erickson [Mon, 24 Aug 2020 14:25:16 +0000 (10:25 -0400)]
LP1891960 Stamping upgrade: patron search sticky org

Signed-off-by: Bill Erickson <berickxx@gmail.com>
5 years agoLP1891960: Angular patron search org is sticky
Jane Sandberg [Mon, 24 Aug 2020 11:56:25 +0000 (04:56 -0700)]
LP1891960: Angular patron search org is sticky

Also removes some unused dependencies and adds
a new org setting to the database:
eg.orgselect.patron.search

To test:
1) Find a title in the staff catalog.
2) Click Place Hold.
3) Search for a Patron.
4) Notice that the search org is initially
your root org (Consortium-level).
5) Select a different value.
6) Leave and come back to this screen.  Note
that the value you selected remains.
7) Perform a search to make sure that the
search is limited to the org you selected.
8) Click the Clear button.  Note that the
value you selected still remains.
9) Perform anoter search to make sure that the
search is limited to the org you selected.

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
5 years agoStamping upgrade script for sticky org-select
Jane Sandberg [Sun, 23 Aug 2020 19:50:38 +0000 (12:50 -0700)]
Stamping upgrade script for sticky org-select

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
5 years agoLP1889113 Staff catalog record holds sticky org select
Bill Erickson [Mon, 27 Jul 2020 18:21:09 +0000 (14:21 -0400)]
LP1889113 Staff catalog record holds sticky org select

Teaches the record holds grid to use a persistkey for making the pickup
lib selector sticky.  Additionaly, teach the holds retrieval code to
wait until the org select has settled on a value before collecting any
data.

Also adds the new workstation setting type
'eg.orgselect.cat.catalog.wide_holds'

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
5 years agoLP1889113 Angular org select persistKey support
Bill Erickson [Mon, 27 Jul 2020 18:20:52 +0000 (14:20 -0400)]
LP1889113 Angular org select persistKey support

* Support reading and writing org-select values using server settings.
* Adds a new @Input fallbackOrg[Id] which is used in cases where no
  persisted value is found.
* Adds a new @Otput called componentLoaded which fires once when the
  selector has completed all of it's load time work.
* Improvid code documentation.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
5 years agoLP1892077 Staff catalog Holdings grid more columns
Bill Erickson [Thu, 20 Aug 2020 15:07:13 +0000 (11:07 -0400)]
LP1892077 Staff catalog Holdings grid more columns

Adds columns for Parts and Circulate As MARC Type.

Additionally, adds columns for Notes, Tags, and Alerts which display the
count of each linked to a given item.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
5 years agolp1362743 holdings view duplicate barcodes
Mike Risher [Tue, 24 Mar 2020 16:40:02 +0000 (16:40 +0000)]
lp1362743 holdings view duplicate barcodes

Modify holdings view's "replace barcodes" UI so that it doesn't allow one
to enter a duplicate barcode.

Signed-off-by: Mike Risher <mrisher@catalyte.io>
Changes to be committed:
modified:   Open-ILS/src/templates/staff/cat/share/t_replace_barcode.tt2
modified:   Open-ILS/web/js/ui/default/staff/cat/catalog/app.js

Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
5 years agoLP#1332651 do not strip internal spaces in barcode
Rogan Hamby [Wed, 5 Aug 2020 13:40:46 +0000 (09:40 -0400)]
LP#1332651 do not strip internal spaces in barcode

for retrieve patron via checkout

Signed-off-by Rogan Hamby <rogan.hamby@gmail.com>
Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
5 years agoLP1819367 - Allow paste of list of barcodes in csv format
Josh Stompro [Fri, 13 Sep 2019 16:38:33 +0000 (11:38 -0500)]
LP1819367 - Allow paste of list of barcodes in csv format

Allow the item status scan box to accept a string of barcodes
separated with commas.

Signed-off-by: Josh Stompro <stompro@stompro.org>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Elaine Hardy <ehardy@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
5 years agoLP1865564 Clear holds cache after Request Items
Bill Erickson [Thu, 16 Jul 2020 18:27:34 +0000 (14:27 -0400)]
LP1865564 Clear holds cache after Request Items

When staff place holds on a record within the Holdings View via the
Request Items function, reset the holds grid data so it bypasses the
cache and refetches the holds, including the new holds.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP1865564 Holds grid avoid dupes (AngularJS)
Bill Erickson [Thu, 16 Jul 2020 16:22:52 +0000 (12:22 -0400)]
LP1865564 Holds grid avoid dupes (AngularJS)

Address a couple if cases where the record holds grid in the AngularJS
staff catalog would make multiple network calls to fetch holds data.
In some cases, these calls would result displaying duplicate holds.

1. Avoid fetching holds when the pickup lib selector fires its on change
if the value provided matches the pickup lib we are already using.

2. Avoid reseting and reloading the grid during an active grid load.
Instead wait for the current load to complete before launching the next
load action.

Patch also includes a minor sanity check in the holdings code to avoid
console errors caused during pickup lib change.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agolp1771386 stamping DB upgrade for inactivate bib on merge
Jane Sandberg [Thu, 20 Aug 2020 20:06:47 +0000 (13:06 -0700)]
lp1771386 stamping DB upgrade for inactivate bib on merge

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
5 years agolp1771386 update to record merge assets function to make source bib inactive as well...
Rogan Hamby [Thu, 20 Aug 2020 17:04:10 +0000 (13:04 -0400)]
lp1771386 update to record merge assets function to make source bib inactive as well as flagged deleted

Signed-off-by: Rogan Hamby <rogan.hamby@gmail.com>
Signed-off-by: Beth Willis <willis@noblenet.org>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
5 years agoLP#1844732 Circulation Modifier Display when Batch Editing Items
Garry Collum [Mon, 13 Jul 2020 15:34:55 +0000 (11:34 -0400)]
LP#1844732 Circulation Modifier Display when Batch Editing Items

Fixes the circulation modifiers multivalue list when editing items with
more than one circulation modifier.

To test in with the concerto data, go to Server Administrator ->
Circulation Modifiers and create a couple of circ modifiers (kittens,
puppies).

Bring up the holdings view of a bib and edit a few items assigning these
items to each of the circ modifiers.

After assigning circ modifiers to several items, bring up some of these
items into the item editor making sure that you have chosen items that
have both circ modifiers.

View the multiple values for the circ modifiers.  It will display
something like 'No (10)'.

Apply the patch. Bring up the items again and view the multiple values.
The circ modifiers will be listed indivitually with a number
representing the number of items with that circ modifier.

Signed-off-by: Garry Collum <gcollum@gmail.com>
Signed-off-by: Jennifer Pringle <jennifer.pringle@bc.libraries.coop>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agolp1747664 add batch edit of call numbers to item bucket
Mike Risher [Fri, 5 Jun 2020 18:31:22 +0000 (18:31 +0000)]
lp1747664 add batch edit of call numbers to item bucket

Modify the item bucket so that one can batch edit call numbers, like
one can from the item status page.

Signed-off-by: Mike Risher <mrisher@catalyte.io>
Signed-off-by: Elaine Hardy <ehardy@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP1845047 Ignore grid page size pref when paging disabled
Bill Erickson [Mon, 23 Sep 2019 21:17:13 +0000 (17:17 -0400)]
LP1845047 Ignore grid page size pref when paging disabled

Ignore any saved value for page size on grids configured with paging
disabled.  Such grids are required to show all rows or any data past the
first page would be innaccessible.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Elaine Hardy <ehardy@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP1850825 Vandely export set default record source
Bill Erickson [Mon, 10 Aug 2020 19:19:51 +0000 (15:19 -0400)]
LP1850825 Vandely export set default record source

Provide a default value for the record ID source (csv, id, bucket) in
the Vandelay record export interface.  Without this, a record source was
only specified if the source value was modified.  Defaults to 'csv'.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Rogan Hamby <rogan.hamby@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP1890351 Vandelay queue type selector retains data
Bill Erickson [Wed, 5 Aug 2020 15:41:14 +0000 (11:41 -0400)]
LP1890351 Vandelay queue type selector retains data

Avoid clearing the queue list grid when a click on the Queue Type
selector results in selecting the same queue type as the type already
loaded.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP1839562 Ang Vandelay Match Set Replace Mode
Bill Erickson [Tue, 11 Aug 2020 15:07:04 +0000 (11:07 -0400)]
LP1839562 Ang Vandelay Match Set Replace Mode

Recover "Replace Mode" functionality in the Vandelay Match Set editor
interface, so existing nodes (e.g. And) may be replaced with other nodes
(e.g. Or) without modifying the rest of the tree structure.

Values (Record Attrs / MARC Fields) can replace other values.  Booleans
can replace any type of tree node.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Mary Llewellyn <mllewell@biblio.org>
Signed-off-by: Christine Morgan <cmorgan@noblenet.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agolp1801947 (follow-up): specify behavior for eg-help-popover button
Jane Sandberg [Mon, 17 Aug 2020 20:51:59 +0000 (13:51 -0700)]
lp1801947 (follow-up): specify behavior for eg-help-popover button

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
5 years agolp1801947 eg-help-popover accessibility
Mike Risher [Fri, 19 Jun 2020 20:00:04 +0000 (20:00 +0000)]
lp1801947 eg-help-popover accessibility

Modify the eg-help-popover directive so that it can be invoked via
a keyboard action.

Signed-off-by: Mike Risher <mrisher@catalyte.io>
 Changes to be committed:
modified:   Open-ILS/src/templates/staff/css/style.css.tt2
modified:   Open-ILS/src/templates/staff/share/t_help_popover.tt2

Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
5 years agoLP#1726918 Alert doesn't display for soon-to-expire patron accounts
Terran McCanna [Mon, 21 Oct 2019 19:12:22 +0000 (15:12 -0400)]
LP#1726918 Alert doesn't display for soon-to-expire patron accounts

This displays an alert on the patron summary bar if a patron account
is set to expire within x number of days as defined by the
'Warn when patron account is about to expire' library setting.

Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
5 years agoLP1858833 Stamping DB upgrade for change_password
Bill Erickson [Mon, 17 Aug 2020 20:24:07 +0000 (16:24 -0400)]
LP1858833 Stamping DB upgrade for change_password

Signed-off-by: Bill Erickson <berickxx@gmail.com>
5 years agoLP1858833 Convenience function for setting a salted password
Rogan Hamby [Wed, 8 Jan 2020 20:47:07 +0000 (15:47 -0500)]
LP1858833 Convenience function for setting a salted password

Copy and pasted from bug comment by Bill Erickson.

Signed-off-by: Rogan Hamby <rogan.hamby@gmail.com>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
5 years agoLP#1724019 Offline Circulation Orgs Alphabetized
Mike Risher [Fri, 7 Aug 2020 20:14:40 +0000 (20:14 +0000)]
LP#1724019 Offline Circulation Orgs Alphabetized

On the offline circulation interface adjust the orgs so that they're
sorted alphabetically.  Preserve the org hierarchy.

Signed-off-by: Mike Risher <mrisher@catalyte.io>
 Changes to be committed:
modified:   Open-ILS/web/js/ui/default/staff/services/env.js
modified:   Open-ILS/web/js/ui/default/staff/services/lovefield.js

Signed-off-by: Bill Erickson <berickxx@gmail.com>
5 years agoLP1890849 Grid context menu override fixed width
Bill Erickson [Mon, 10 Aug 2020 15:09:35 +0000 (11:09 -0400)]
LP1890849 Grid context menu override fixed width

Allow grid context menus to expand horizontally for longer terms to
avoid scroll bars and/or having text get cut off.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
5 years agoLP#1839365: (follow-up) update AngularJS login page as well
Galen Charlton [Thu, 13 Aug 2020 20:01:08 +0000 (16:01 -0400)]
LP#1839365: (follow-up) update AngularJS login page as well

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1839365: add h1 heading to Angular staff login page
Shula Link [Tue, 22 Oct 2019 15:06:44 +0000 (11:06 -0400)]
LP#1839365: add h1 heading to Angular staff login page

Signed-off-by: Shula Link <slink@gchrl.org>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agotidying of Pg/upgrade scripts
Galen Charlton [Thu, 13 Aug 2020 15:32:57 +0000 (11:32 -0400)]
tidying of Pg/upgrade scripts

- remove executable flag
- add .sql extension to a recent one

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1869898: stamp DB update
Galen Charlton [Thu, 13 Aug 2020 15:30:58 +0000 (11:30 -0400)]
LP#1869898: stamp DB update

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP1889685 Staff catalog record CN browse retains search
Bill Erickson [Thu, 30 Jul 2020 19:29:08 +0000 (15:29 -0400)]
LP1889685 Staff catalog record CN browse retains search

Using the Shelf Browse tab on the record detail page in the Angular
staff catalog no longer clobbers the active search, allowing the search
navigation buttons (Next, Previous, etc.) to continue working.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP1889694 Staff catalog record summary API
Bill Erickson [Fri, 31 Jul 2020 14:54:28 +0000 (10:54 -0400)]
LP1889694 Staff catalog record summary API

Replaces a number of result page and record detail page API calls with a
bespoke API specifically created to return the data required for display
bib and metabib record summary information in the catalog.

Specifically, a single streaming API this replaces the following:

* fleshed record retrieval
** including record display fields and attributes processing.
* copy count retrieval
* hold count retrieval

The end result is 22 API calls per results page replaced with 2.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP1869898 Remove staffcat AOUS; activate holds template
Bill Erickson [Thu, 6 Aug 2020 17:58:14 +0000 (13:58 -0400)]
LP1869898 Remove staffcat AOUS; activate holds template

Remove the org unit setting for enabling access to the Angular staff
catalog, since it is now the default catalog.

Activate the stock holds-for-bib print template, which is used by the
staff catalog holds-for-record grid.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP1869898 Ang cat copy table responds to broadcasts
Bill Erickson [Wed, 5 Aug 2020 14:43:05 +0000 (10:43 -0400)]
LP1869898 Ang cat copy table responds to broadcasts

Angular staff catalog copy table responds to broadcasts of modified
holdings.  When holdings for the current record have changed, the table
data is refreshed.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP1869898: Banner no longer calls the staff catalog experimental
Jane Sandberg [Tue, 4 Aug 2020 21:50:13 +0000 (14:50 -0700)]
LP1869898: Banner no longer calls the staff catalog experimental

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP1869898 Holdings responds to broadcasted changes
Bill Erickson [Fri, 19 Jun 2020 20:50:18 +0000 (16:50 -0400)]
LP1869898 Holdings responds to broadcasted changes

Adds a new service for interracting with BroadcastChannel's.
Teaches the holdings grid to refresh data if a broadcast is received for
related holdings updates.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP1869898 Angular staff cat place hold from patron
Bill Erickson [Mon, 8 Jun 2020 18:57:37 +0000 (14:57 -0400)]
LP1869898 Angular staff cat place hold from patron

The place hold button in the patron holds list now takes staff to the
Angular catalog for holds placement.  A banner is displayed along the
top of the catalog to indicate which patron the hold is for and to
provide a link back to the patron's holds list.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP1869898 Angular staff cat release notes
Bill Erickson [Tue, 31 Mar 2020 15:01:57 +0000 (11:01 -0400)]
LP1869898 Angular staff cat release notes

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP1869898 Make Angular staff catalog default
Bill Erickson [Fri, 27 Mar 2020 17:17:38 +0000 (13:17 -0400)]
LP1869898 Make Angular staff catalog default

Modifies Angular and AngJS templates and AngJS code to use the new
Angular staff catalog as the default catalog for new catalog searches,
record detail links, etc.

The traditional client is left unmodified and remains accessible from
the navigation menus.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agolp1890498: Replace Item Barcode now warns about duplicate barcode
Mike Risher [Wed, 5 Aug 2020 21:34:12 +0000 (21:34 +0000)]
lp1890498: Replace Item Barcode now warns about duplicate barcode

Modify the Replace Item Barcode page so that it displays an error
message when trying to replace a barcode with a barcode already
in use.

Signed-off-by: Mike Risher <mrisher@catalyte.io>
Signed-off-by: Elaine Hardy <ehardy@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP#1207744: fix display of duplicate results when viewing report folders
Mike Risher [Fri, 12 Jun 2020 22:17:44 +0000 (22:17 +0000)]
LP#1207744: fix display of duplicate results when viewing report folders

When you repeatedly click the link to display a template, report, or
output folder on the reports UI, the contents of that folder can
display multiple times. This patch addresses this bug and prevents
duplicate contents from displaying.

Signed-off-by: Mike Risher <mrisher@catalyte.io>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoDocs: ldconfig needs to be run when installing on Ubuntu 18.04 too
Jane Sandberg [Thu, 13 Aug 2020 13:51:26 +0000 (06:51 -0700)]
Docs: ldconfig needs to be run when installing on Ubuntu 18.04 too

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
5 years agoLp 1843079: Add renewals remaining to AutoRenew reactor's user data
Jason Stephenson [Fri, 6 Sep 2019 14:38:25 +0000 (10:38 -0400)]
Lp 1843079: Add renewals remaining to AutoRenew reactor's user data

Add auto_renewal_remaining and total_renewal_remaining fields to the
autorenew event's user data so that we can report the number of
renewals remaining to the patron without doing (possibly erroneous)
math in the template.  When the circulation is renewed, we use the
renewal remaining counts from the new circulation.  When the renewal
fails, we use the counts from the original circulation.

The current template is not modified to add these fields.  That is left
as an exercise for sites that want to add this information for the
convenience of their patrons.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Jason Boyer <JBoyer@equinoxinitiative.org>
5 years agoforward-port 3.4.3-3.4.4-upgrade-db.sql
Galen Charlton [Wed, 12 Aug 2020 16:21:31 +0000 (12:21 -0400)]
forward-port 3.4.3-3.4.4-upgrade-db.sql

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoForward-port 3.5.1 upgrade script
Jane Sandberg [Tue, 11 Aug 2020 23:58:47 +0000 (16:58 -0700)]
Forward-port 3.5.1 upgrade script

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
5 years agoDocs: asciidoc syntax correction for 3.5 release notes
Jane Sandberg [Tue, 11 Aug 2020 23:11:07 +0000 (16:11 -0700)]
Docs: asciidoc syntax correction for 3.5 release notes

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
5 years agoDocs: asciidoc syntax correction for 3.4 release notes
Jane Sandberg [Tue, 11 Aug 2020 23:09:51 +0000 (16:09 -0700)]
Docs: asciidoc syntax correction for 3.4 release notes

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
5 years agoDocs: 3.5.1 release notes
Jane Sandberg [Tue, 11 Aug 2020 20:11:14 +0000 (13:11 -0700)]
Docs: 3.5.1 release notes

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
5 years agoDocs: tweaks to 3.4.4 release notes
Jane Sandberg [Tue, 11 Aug 2020 20:10:44 +0000 (13:10 -0700)]
Docs: tweaks to 3.4.4 release notes

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
5 years agoDocs: 3.4.4 release notes
Jane Sandberg [Tue, 11 Aug 2020 18:24:46 +0000 (11:24 -0700)]
Docs: 3.4.4 release notes

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
5 years agoDocs: Release notes for 3.4.3
Remington Steed [Wed, 10 Jun 2020 16:06:05 +0000 (12:06 -0400)]
Docs: Release notes for 3.4.3

Signed-off-by: Remington Steed <rjs7@calvin.edu>
5 years agoLP1811466 Add fields to holdings editor column pickers
Michele Morgan [Tue, 27 Aug 2019 12:55:06 +0000 (08:55 -0400)]
LP1811466 Add fields to holdings editor column pickers

Adds item fields creator, editor and last edit date to the working and
completed grids in the holdings editor.

Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
Signed-off-by: Rogan Hamby <rogan.hamby@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
5 years agoLP#1839369: (follow-up) tweak button and styles
Galen Charlton [Mon, 3 Aug 2020 21:14:12 +0000 (17:14 -0400)]
LP#1839369: (follow-up) tweak button and styles

- Change the button text from "Search" to "Search Catalog"
- adjust the styling on the AngularJS side to cuddle the
  button with the search input
- standardize the placeholder text as "Search for..."

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
5 years agoLP#1839369 Accessibility for Search Box
Terran McCanna [Tue, 22 Oct 2019 20:16:35 +0000 (16:16 -0400)]
LP#1839369 Accessibility for Search Box

This adds an accessible label to the Search box on the splash
page of the staff client as well as to the Angular version of
the splash page.

Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
5 years agoLP#1864371: bump up ng-bootstrap to 7.0.0
Galen Charlton [Wed, 5 Aug 2020 18:29:39 +0000 (14:29 -0400)]
LP#1864371: bump up ng-bootstrap to 7.0.0

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
5 years agoLP#1864371: (follow-up) fix lint
Galen Charlton [Wed, 5 Aug 2020 17:49:31 +0000 (13:49 -0400)]
LP#1864371: (follow-up) fix lint

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
5 years agoLP1864371 Angular 10 deps
Bill Erickson [Fri, 26 Jun 2020 18:33:29 +0000 (14:33 -0400)]
LP1864371 Angular 10 deps

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP1864371 Angular 10 deps
Bill Erickson [Fri, 26 Jun 2020 18:31:13 +0000 (14:31 -0400)]
LP1864371 Angular 10 deps

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP1864371 Remove extra match set data source
Bill Erickson [Fri, 26 Jun 2020 18:52:09 +0000 (14:52 -0400)]
LP1864371 Remove extra match set data source

Remove an erroneous [dataSource]="queueSource" attribute from the
Vandelay Match Set grid, which was causing the grid to think it had no
data source.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP1864371 Migrate deprecated loadChildren invocations
Bill Erickson [Fri, 26 Jun 2020 18:24:00 +0000 (14:24 -0400)]
LP1864371 Migrate deprecated loadChildren invocations

https://angular.io/guide/deprecations#loadchildren-string-syntax

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
5 years agoLP1864371 ngbTabset to ngbNav for marc editor
Bill Erickson [Fri, 26 Jun 2020 17:57:50 +0000 (13:57 -0400)]
LP1864371 ngbTabset to ngbNav for marc editor

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>