LP#
1541559: ebook API integration for TPAC
When this feature is enabled, Evergreen will use the open-ils.ebook_api
service to look up title and patron information from specified vendor
APIs and display that information in the TPAC. (The service should be
configured using org settings before being enabled in config.tt2.)
This frontend is essentially a JS layer over top of the OPAC, with some
light use of Dojo since we're already using it, plus a few additions to
TT2 templates. The JS layer uses OpenSRF JS bindings to talk to the
backend service, which in turn makes the appropriate calls to the
third-party API. Session IDs and (if logged in) patron information are
stored in cookies, which are cleared when the patron logs out.
The user will see the following changes:
- On search results and record summary, for any records from a known
e-book vendor, Evergreen will automatically look up holdings info from
the vendor API. If detailed information on formats and available
"copies" is provided by the API (e.g. for OverDrive), that information
is displayed in a table within the record; if only basic availability
info is available (e.g. for OneClickdigital), a line is added to each
record indicating whether the title is available. (Eventually, "Place
Hold" or "Check Out" links will be added to allow patrons to
checkout/hold titles without leaving the TPAC.)
- When the user is logged in, the dashboard will show a count of e-book
checkouts and holds for all enabled e-book vendors, as will the
account summary. This is separate from the "main" checkouts/holds
display, since checkouts/holds on titles from third-party vendors are
unrelated to checkouts/holds in Evergreen.
- When the user is logged in, additional tabs will be available in My
Account for displaying detailed information on the patron's ebook
checkouts and holds. (Eventually, functionality will be added to My
Account allowing the user to download or renew titles, suspend or
cancel holds, etc.)
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>