Evergreen.git
4 years agoLP#1848524: Docs: Add missing file from TechRef directory
Remington Steed [Thu, 5 Dec 2019 19:41:24 +0000 (14:41 -0500)]
LP#1848524: Docs: Add missing file from TechRef directory

Signed-off-by: Remington Steed <rjs7@calvin.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agoLP#1848524: Docs: Adjust headings where we used to use leveloffset
Remington Steed [Thu, 5 Dec 2019 19:16:48 +0000 (14:16 -0500)]
LP#1848524: Docs: Adjust headings where we used to use leveloffset

Signed-off-by: Remington Steed <rjs7@calvin.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agoLP#1848524: Docs: Add intro material to ROOT nav file
Remington Steed [Thu, 5 Dec 2019 18:54:44 +0000 (13:54 -0500)]
LP#1848524: Docs: Add intro material to ROOT nav file

Signed-off-by: Remington Steed <rjs7@calvin.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agoLP#1848524: Docs: Add Index file and appendix attribs file
Remington Steed [Thu, 5 Dec 2019 16:06:27 +0000 (11:06 -0500)]
LP#1848524: Docs: Add Index file and appendix attribs file

Signed-off-by: Remington Steed <rjs7@calvin.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agoLP#1848524: Docs: Draft of all nav files
Remington Steed [Thu, 5 Dec 2019 16:06:27 +0000 (11:06 -0500)]
LP#1848524: Docs: Draft of all nav files

Some files still contain 'leveloffset' commands which need to be
removed, and those previously offset files should probably have their
headings adjusted accordingly.

Signed-off-by: Remington Steed <rjs7@calvin.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agoLP#1848524: Docs: Add draft nav for "Software Installation" section
Remington Steed [Thu, 5 Dec 2019 14:23:06 +0000 (09:23 -0500)]
LP#1848524: Docs: Add draft nav for "Software Installation" section

Note: I don't think "leveloffset" is allowed like this here. We could
pass it to "include" as an attribute, but I'd rather us standardize our
headings in our files.

Also adjust heading levels to avoid using leveloffset

Signed-off-by: Remington Steed <rjs7@calvin.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agoLP#1848524: AsciiDoc HEADING CONVERSION
Remington Steed [Thu, 5 Dec 2019 13:48:48 +0000 (08:48 -0500)]
LP#1848524: AsciiDoc HEADING CONVERSION

This commit changes all headings from two-line style to prefix/suffix
style. (For now, we're only doing this in the docs using Antora.) Example:

Heading 1
=========

becomes

= Heading 1 =

This conversion makes it much easier to adjust the heading levels of
several files which were previously included using the 'leveloffset'
command.

NOTE: Only the prefix is required, but we felt the suffix improves
readability of the source.

Below is the python script I used to do the conversion. It is slightly
modified from a script used by ___ here:

https://github.com/JanusGraph/janusgraph/pull/115/commits/dc67ce73c08e79fa65b30bc8280861056070c573

Here's my source:

import re
import sys

def main(argv):
    #http://asciidoctor.org/docs/asciidoc-recommended-practices/#section-titles
    patterns = [
        (re.compile('^=+$'), '='),
        (re.compile('^-+$'), '=='),
        (re.compile('^~+$'), '==='),
        (re.compile('^\^+$'), '===='),
        (re.compile('^\++$'), '====='),
    ]

    with open(argv[1], 'r') as input_file:
        prev_line = None
        curr_line = None
        for line in input_file.readlines():
            prev_line = curr_line
            curr_line = line

            if prev_line is None:
                continue

            for pattern, heading in patterns:
                if pattern.match(curr_line) and len(prev_line) == len(curr_line):
                    # remove newline so we can append suffix to heading
                    prev_line = prev_line.rstrip()
                    sys.stdout.write('%s %s %s\n' % (heading, prev_line, heading))
                    prev_line = None
                    curr_line = None
                    break

            if prev_line is not None:
                sys.stdout.write(prev_line)

        # end for
        if curr_line is not None:
            sys.stdout.write(curr_line)

    # end with

if __name__ == '__main__':
    main(sys.argv)

Signed-off-by: Remington Steed <rjs7@calvin.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agoLP#1848524: Docs: Remove Unicode Byte-Order Mark (BOM)
Remington Steed [Thu, 5 Dec 2019 14:06:46 +0000 (09:06 -0500)]
LP#1848524: Docs: Remove Unicode Byte-Order Mark (BOM)

A few asciidoc files start with the BOM, which occasionally causes us
trouble.  For example, it interfered with our python script converting
headings from two-line style to prefix/suffix style.

Signed-off-by: Remington Steed <rjs7@calvin.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agoLP#1848524: Remove "Admonitions" section and images, not used by AsciiDoctor/Antora
Remington Steed [Tue, 3 Dec 2019 21:13:28 +0000 (16:13 -0500)]
LP#1848524: Remove "Admonitions" section and images, not used by AsciiDoctor/Antora

Signed-off-by: Remington Steed <rjs7@calvin.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agoLP#1848524: Docs: Convert normal includes to Antora "partials"
Remington Steed [Thu, 24 Oct 2019 13:48:53 +0000 (09:48 -0400)]
LP#1848524: Docs: Convert normal includes to Antora "partials"

Antora treats all includes as either "partials" or "examples". This case
seems like "partials", since "examples" seems to be meant for code
snippets.

Signed-off-by: Remington Steed <rjs7@calvin.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agoLP#1848524: Docs: Treat code include as an Antora "example"
Remington Steed [Thu, 24 Oct 2019 13:45:37 +0000 (09:45 -0400)]
LP#1848524: Docs: Treat code include as an Antora "example"

This seems like a case that matches Antora's idea of an "example",
rather than a "partial".

Signed-off-by: Remington Steed <rjs7@calvin.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agoLP#1848524: various tweaks
blake [Thu, 24 Oct 2019 14:48:59 +0000 (09:48 -0500)]
LP#1848524: various tweaks

* Renamed the supplimental_ui folder for ease of understanding
* UI Tweaks
* Fixed README.adoc for working repo
* add Next/Previous links at the bottom of the pages

Signed-off-by: blake <blake@mobiusconsortium.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agoLP#1848524: start an "Evergreen Theme" for the Antora docs
blake [Thu, 24 Oct 2019 06:02:43 +0000 (01:02 -0500)]
LP#1848524: start an "Evergreen Theme" for the Antora docs

Changed several values for css theming. Still need to figure out how to
padd the nav bar off of the right so the dropdown isn't cut off.

Also added links to stuff in the nav. Making it more useful.

Signed-off-by: blake <blake@mobiusconsortium.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agoLP#1848524: add lunr search functionality to the docs build
blake [Wed, 23 Oct 2019 19:29:10 +0000 (14:29 -0500)]
LP#1848524: add lunr search functionality to the docs build

Signed-off-by: blake <blake@mobiusconsortium.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agoLP#1848524: start adding Antora support to the docs
blake [Mon, 21 Oct 2019 15:23:20 +0000 (10:23 -0500)]
LP#1848524: start adding Antora support to the docs

This introduces the antora directory structure stub. Started a new folder
docs-antora. The sub folder "ui" contains a dump of the Antora-provided default
UI from https://gitlab.com/antora/antora-ui-default.git

This commit also starts updating the document navigation.

This commit includes contributions by Remington Steed.

Signed-off-by: blake <blake@mobiusconsortium.org>
Signed-off-by: Remington Steed <rjs7@calvin.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agoLP#1848524: Docs: Delete unused assets
Remington Steed [Tue, 22 Oct 2019 21:20:39 +0000 (17:20 -0400)]
LP#1848524: Docs: Delete unused assets

This commit attempts to delete all images from the media/ directory that
aren't used within an AsciiDoc file (via "image:" or "image::"). This
commit also doesn't touch images that are known to be used in the HTML
template (such as the Evergreen logo, PDF/ePUB icons, NOTE icons, and
callout number icons).

This list of images was generated via multiple bash commands, grepping
and diffing. It would be great for us to have a standard command for
finding these periodically.

This commit also removes all AsciiDoc files that we don't currently include
in another AsciiDoc file (via "include::"), because that means they
never appear in the generated docs (HTML, PDF, or ePUB). Some files have
been left untouched, such as everything in the TechRef/ directory. It
also further removes any images referenced by these files.

Signed-off-by: Remington Steed <rjs7@calvin.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agoLP#1418694 Change wording for saving to selection list
Tiffany Little [Fri, 1 Mar 2019 19:00:59 +0000 (14:00 -0500)]
LP#1418694 Change wording for saving to selection list

Changes label in line item table Actions menu for 'Save to Selection List' to 'Move to Selection List' to better reflect action taken.

Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Mary Llewellyn <mllewell@biblio.org>
Signed-off-by: Jason Boyer <JBoyer@equinoxinitiative.org>
4 years agoLP#1841974: Stamp Upgrade Scripts
Jason Boyer [Thu, 3 Sep 2020 22:33:40 +0000 (18:33 -0400)]
LP#1841974: Stamp Upgrade Scripts

Signed-off-by: Jason Boyer <JBoyer@equinoxinitiative.org>
4 years agoLP#1841974: Allow adjusted proximity for age-protect
Mike Rylander [Mon, 2 Mar 2020 20:49:05 +0000 (15:49 -0500)]
LP#1841974: Allow adjusted proximity for age-protect

When testing prospective transit distance for age-protected items at
hold placement time we currently use the direct, baseline proximity
between the item circ (or owning) lib and the pickup lib.  With this
commit, setting a new YAOUS will allow the circ library of the item to
specify that a potentially-adjusted, calculated proximity should be used
instead.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Diane Disbro <ddisbro@scenicregional.org>
Signed-off-by: Nelson Appell <nappell@washmo.gov>
Signed-off-by: Jason Boyer <JBoyer@equinoxinitiative.org>
4 years agoLP#1880028 Backdate Checkins Until Logout Option
Dan Briem [Sat, 30 May 2020 23:27:39 +0000 (19:27 -0400)]
LP#1880028 Backdate Checkins Until Logout Option

- Adds a checkbox option to store the backdate as a
  session item and only loads the backdate on the checkin
  screen (backdate ignored on the hold capture screen)
- Adjusts existing $watch to enable/disable the checkbox
  and store/remove session backdate when appropriate
- Adjusts is_backdate() to not consider null or undefined
  dates as backdates so the visible alert is accurate
- Adjusts "today" comparison to use a time of 00:00:00 so
  that when the Clear button is used and clears the time
  the Today button won't cause a backdate just because it's
  an earlier time on the same date

Signed-off-by: Dan Briem <dbriem@wlsmail.org>
Signed-off-by: rfrasur <rfrasur@library.in.gov>
Signed-off-by: Dawn Dale <ddale@georgialibraries.org>
Signed-off-by: Jason Boyer <JBoyer@equinoxinitiative.org>
4 years agoLP1850547 Stamping DB upgrade: Ang Acq Search
Bill Erickson [Thu, 3 Sep 2020 16:00:27 +0000 (12:00 -0400)]
LP1850547 Stamping DB upgrade: Ang Acq Search

Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 years agoLP#1850547: (follow-up) add a bit of spacing between two buttons
Galen Charlton [Thu, 3 Sep 2020 13:56:09 +0000 (09:56 -0400)]
LP#1850547: (follow-up) add a bit of spacing between two buttons

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 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>
Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 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>
Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 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>
Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 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: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 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>
Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 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>
Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 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>
Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 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>
Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 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>
Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 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>
Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 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>
Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 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>
Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 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>
Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 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>
Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 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>
Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 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>
Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 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>
Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 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>
Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 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>
Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 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>
Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 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>
Signed-off-by: Tiffany Little <tlittle@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 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>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 years agoDocs: correcting typos in release notes
Jane Sandberg [Mon, 31 Aug 2020 18:35:31 +0000 (11:35 -0700)]
Docs: correcting typos in release notes

Thanks to Jennifer Weston for reporting these!

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
4 years agoLP#1879993: use default value for opac.hold_notify when appropriate
Jeff Davis [Fri, 22 May 2020 22:40:30 +0000 (15:40 -0700)]
LP#1879993: use default value for opac.hold_notify when appropriate

Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agolp1840329 Register Patron keyboard accessibility
Mike Risher [Wed, 17 Jun 2020 23:36:26 +0000 (23:36 +0000)]
lp1840329 Register Patron keyboard accessibility

Adjust the register patron page so that the "Primary Name" and
"Preferred Name" tabs are accessible when pressing the tab key.

Signed-off-by: Mike Risher <mrisher@catalyte.io>
Signed-off-by: Ruth Frasur <rfrasur@library.in.gov>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agoLP1889628 SIP patron username logging config option
Bill Erickson [Thu, 20 Aug 2020 19:04:24 +0000 (15:04 -0400)]
LP1889628 SIP patron username logging config option

Adds an option to oils_sip.xml which allows admins to activate (or not)
the login-via-username SIP support.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jason Stephenson <jason@sigio.com>
4 years agoLP 1889628: Use Workstation in SIP Username Lookup
Jason Stephenson [Tue, 18 Aug 2020 12:45:07 +0000 (08:45 -0400)]
LP 1889628: Use Workstation in SIP Username Lookup

Following a suggestion from Bill Erickson, the SIP->get_ou_settings()
function now uses the workstation org. unit of the logged in SIP2
account if it is set.  The home_ou is used as a fallback.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 years agoLP 1889628: SIP2 Patron Username Lookup
Jason Stephenson [Wed, 12 Aug 2020 18:44:00 +0000 (14:44 -0400)]
LP 1889628: SIP2 Patron Username Lookup

Allow SIP2 clients to pass the username or barcode in the SIP2 Patron
Identifier field (AA).  This is useful for services, such as
Overdrive, that can send a patron's username.  It is easier for a
patron to remember their username rather than barcode, and this
unifies login for those patrons who use their username to login to the
OPAC.

To make this possible, we modify the OpenILS::SIP::Patron->new method
to accept a usrname key to retrieve patrons by usrname.

We also modify the OpenILS::SIP->find_patron method to accept a
usrname key to look up patrons.  The find_partron method is further
modified to check the patron id against the opac.barcode.regex in more or
less the same manner as the OPAC.

Two helper functions are added to OpenILS::SIP:

1. get_ou_setting: to retrieve org unit settings using the home_ou of
the logged in SIP2 account.

2. get_barcode_regex: To retrieve and cache the opac.barcode_regex
setting.

Testing this requires a working SIP2 installation and a knowledge of
the SIP protocols.  The easiest thing is to install the patch and see
if your SIP client can recognize a patron who has a username different
from their barcode by using both their barcode and then their
username.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
4 years agoLP1891355 Perm group refresh after changes
Bill Erickson [Fri, 21 Aug 2020 15:14:02 +0000 (11:14 -0400)]
LP1891355 Perm group refresh after changes

Fixes an issue where the permission group interface failed to refresh
the page after an edit and data refetch was performed.  At issue was a
progress component which was not rendered/active at the time of refresh,
leading to a JS error, causeing the refresh to stop.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agoLP1850992: More documentation for the EZProxy remoteauth feature
Jane Sandberg [Wed, 19 Aug 2020 21:31:32 +0000 (14:31 -0700)]
LP1850992: More documentation for the EZProxy remoteauth feature

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agoRemoteAuth EZProxy CGI authentication
Jeff Davis [Thu, 21 Nov 2019 22:43:33 +0000 (14:43 -0800)]
RemoteAuth EZProxy CGI authentication

This commit adds a RemoteAuth handler (and associated templates,
configuration, and sample data) for EZProxy CGI user authentication:

https://help.oclc.org/Library_Management/EZproxy/Authenticate_users/EZproxy_authentication_methods/CGI_authentication

The user is presented with a login form.  If their account is
authorized, they will be redirected to EZProxy with a valid
authentication ticket, allowing them to access online resources.  If
they are not authorized, an error message is displayed indicating why
the auth attempt failed.  The login form and error messages use
Template Toolkit (TT2) templates and can be customized.

Signed-off-by: Jeff Davis <jeff.davis@bc.libraries.coop>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agoTemplate Toolkit for RemoteAuth
Jeff Davis [Thu, 21 Nov 2019 22:27:00 +0000 (14:27 -0800)]
Template Toolkit for RemoteAuth

With this commit, RemoteAuth handlers can now use TT2 templates to
manage the format and content of responses.  This will make it easier
for admins to control what patron information is included in a
successful auth response, among other things.

TT2 support is provided by a new OpenILS::WWW::RemoteAuth::Template Perl
module.  (EGWeb has too much overhead and is not well-suited to this use
case.)

Signed-off-by: Jeff Davis <jeff.davis@bc.libraries.coop>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agoLP#1837802: (follow-up) add release notes
Galen Charlton [Tue, 25 Aug 2020 20:34:40 +0000 (16:34 -0400)]
LP#1837802: (follow-up) add release notes

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agoLP#1837802: (follow-up) convert ngbTabset to ngbNav
Galen Charlton [Tue, 25 Aug 2020 20:30:02 +0000 (16:30 -0400)]
LP#1837802: (follow-up) convert ngbTabset to ngbNav

Also add a bit of top margin for a couple of the tab's
contents.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agoLP1837802: Add records to shared record buckets from the Staff Catalog
Jane Sandberg [Wed, 18 Mar 2020 00:34:01 +0000 (17:34 -0700)]
LP1837802: Add records to shared record buckets from the Staff Catalog

To test:
1) As User A, create a bucket.
2) As User B, search in the Staff Catalog, and add some items to your
basket.
3) As User B, click Basket Actions, and choose add Basket to Bucket
4) Click on the "Shared Bucket" tab and enter the id of User A's bucket

Some potential scenarios to test:
* Trying to add to a bucket that does not exist
* Trying to add to an unshared bucket when User B does not have the
VIEW_CONTAINER permission
* Trying to add to existing and new buckets as before

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 years agoLP1885764 Staff catalog UPC search
Bill Erickson [Thu, 30 Jul 2020 16:30:28 +0000 (12:30 -0400)]
LP1885764 Staff catalog UPC search

Adds a "UPC" entry in the Query Type selector under the Numeric Search
tab in the Angular staff catalog.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>