Mike Rylander [Thu, 14 May 2020 18:13:38 +0000 (14:13 -0400)]
LP#1860703: Additional A/T hooks for use with various patron changes
This commit normalizes the au.update/au.updated and au.create/au.created
hooks, making them match between code and seed data, and adds two
entirely new hooks, au.renewed and au.barcode_changed.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Troy Leonard <leonardt@aadl.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Mike Rylander [Mon, 28 Oct 2019 15:03:58 +0000 (11:03 -0400)]
LP#1860703: Create A/T hook and reactor for push integration
There is currently no stock mechanism for pushing information out of Evergreen
to trigger activities in external systems. Third party discovery systems,
among other external systems, would benefit from the ability to be alerted of
changes to data within an Evergreen instance.
This commit adds such a capability by supplying a new A/T reactor module that
can make HTTP requests that supply data to a third party endpoint.
To support the discovery system use case, this commit also adds a new A/T hook,
bre.edit, fired whenever a bibliographic record is modified due to staff
interaction.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Troy Leonard <leonardt@aadl.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
- make executable
- adjust so that it doesn't need root privileges
to install in the system Node module directory
- let Gulp be installed in the temporary scratch
directory
- Add chapter labels to nav file items
- (Not needed for this section.) Combine adoc files so that each
"chapter" from the old docs structure has a single file linked from
the nav
- Upgrade all heading levels in each adoc file so that the top-most
heading is a "Level 1" heading (example: "= Chapter Name =")
- Add ":toc:" below top heading of each file
For Circulation:
- Add chapter labels to nav file items
- To match existing docs "chapter" level headings, combine adoc files as
needed so that each "chapter" from the old docs structure has a single
file linked from the nav
- Added advanced_holds.adoc to the end of basic_holds.adoc
- Upgrade all heading levels in each adoc file so that the top-most
heading is a "Level 1" heading (example: "= Chapter Name =")
- Add ":toc:" below top heading of each file
- Add chapter labels to nav file items
- To match existing docs "chapter" level headings, combine adoc files as
needed so that each "chapter" from the old docs structure has a single
file linked from the nav
- Upgrade all heading levels in each adoc file so that the top-most
heading is a "Level 1" heading (example: "= Chapter Name =")
- Add ":toc:" below top heading of each file
For 'Using the Public Access Catalog'":
- Add chapter labels to nav file items
- To match existing docs "chapter" level headings, combine adoc files as
needed so that each "chapter" from the old docs structure has a single
file linked from the nav
- In this case, the only change was in advanced_features.adoc,
where two sections had the top heading level (seems like a mistake).
I bumped the second one down ("Binary MARC21 Feeds") so it is a
subsection of the file. Ironically, since this commit also bumps
up all headings by one level, it means that heading is the only one
not changed in this commit.
- Upgrade all heading levels in each adoc file so that the top-most
heading is a "Level 1" heading (example: "= Chapter Name =")
- Add ":toc:" below top heading of each file
For "Developer Resources" and "Getting Data from Evergreen":
- Add chapter labels to nav file items
- To match existing docs "chapter" level headings, combine adoc files as
needed so that each "chapter" from the old docs structure has a single
file linked from the nav
- Upgrade all heading levels in each adoc file so that the top-most
heading is a "Level 1" heading (example: "= Chapter Name =")
- Add ":toc:" below top heading of each file
Level 2 became level 1 and Table of contents added. Two files were merged
onto the "parent" as per the live docs layout. So it makes more sense when
viewed via Antora
* Fix double level 0 headings end_matter.adoc
* Add MOBIUS's name and DIG individuals to the _attributes.adoc
* Changed the home page to be the introduction page
* Fix syntax broken by "heading conversion" script
* Improve antora navs, add missing attrib files
- Remove numbering from install docs headers
- Link top-level nav items to each section's intro file
- Add a few missing _attributes.adoc files in pages/ subdirs
* Start converting internal links to antora format
Links to sections in the same file only need the section ID like this:
xref:#section_id
But links to sections in another file need the Antora page_id also:
xref:MODULE:PAGE.adoc#section_id
* Convert existing anchors to Antora syntax
* Convert more links to Antora syntax
Antora requires that links to sections in a different file use the xref
syntax, not the double-angle-bracket shortcut syntax. As best as I can
tell, this commit changes all the links that go to other files (not the
file that the link is in).
Some files still contain 'leveloffset' commands which need to be
removed, and those previously offset files should probably have their
headings adjusted accordingly.
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
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)
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.
* 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
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.
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.
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>
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>
- 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>
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>
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.
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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.
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>
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>
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>
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>
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>
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>
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>
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>
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
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>
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>
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>
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>