+++ /dev/null
-Override Label for draw_field_label Patron Edit Fields
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-Evergreen developers may now specify a label for fields in
-the patron registration/patron edit form (generated by
-the draw_field_label macro). By default,
-draw_field_label uses the label of supplied IDL field class.
-Now a developer may supply an additional third parameter,
-label_override, which overrides the default IDL-based label.
-This would typically be done in the course of customizing
-the web staff client template `circ/patron/t_edit.tt2`.
+++ /dev/null
-Angular Acquisitions Search
-^^^^^^^^^^^^^^^^^^^^^^^^^^^
-The acquisitions search interfaces are now written in Angular
-and provide a new centralized place for searching Line Items,
-Purchase Orders, Invoices, and Selection Lists in the Acquisitions
-module of Evergreen. The Acquisitions Search interface can be accessed
-under Acquisitions -> General Search.
-
-The search interface has four tabs for line item search, purchase order
-search, invoices search, and selection list search. Each tab
-offers a search form allowing the user to select one or more
-fields to search on. Each search tab stores a separate default search
-that the user can update; for example, a user could have their
-line item search default to showing all on-order line items from
-a particular provider.
-
-The grid that displays search results in each tab is filterable.
-
-The line items and PO search interfaces allow the user to navigate to
-linked POs, invoices, and so forth, but offers no direct actions. The
-invoices search tab includes a 'Print Selected Invoices' action,
-while the selection lists search tab offers actions to create,
-clone, delete, and merge selection lists.
-
-The Angular search page contains a link to the legacy Dojo search
-interface if needed. The Dojo interface will be removed in a future
-release of Evergreen.
-
-The Angular search interface offers various usability improvements
-over the Dojo one, including:
-
-* only the search operators that are relevant for a given field
- are displayed.
-* search fields that are associated with controlled vocabularies
- will display drop-downs on the search form.
-* results are sortable
-* the line item and PO state fields have been relabeled to "Status"
-* greater than and less than are now available as search operators
-* publication date searches are more flexible
-
-Adjustments to Stock Permissions
-++++++++++++++++++++++++++++++++
-As part of this feature, the stock permissions for the Acquisitions
-and Acquisitions Administrator profiles have been expanded. In
-particular, the Acquisitions Administrator profile can now be
-more readily used to perform normal acquisitions work in addition
-to configuring the acquisitions module.
+++ /dev/null
-Angular Providers Interface
-^^^^^^^^^^^^^^^^^^^^^^^^^^^
-The interfaces for searching for and managing acquisitions provider
-records have been rewritten in Angular. This rewrite includes the
-following significant changes:
-
-* The provider search interface is now available directly from the
- Acquisitions menu, supplementing its longstanding availability from
- the Acquisitions Administration page.
-* The search interface is modeled after the patron interface, including
- a search form that can be hidden or displayed, a provider summary box,
- and a multi-tabbed interface for managing the provider itself.
-* The grid displaying search results is filterable and sortable.
-* The provider display tabs are
- ** Details, allowing the user to view, and if permitted, edit
- the base provider record.
- ** Addresses
- ** Contacts
- ** Attribute Definitions
- ** Holdings Definitions
- ** EDI
- ** Invoices, providing an interface for viewing the invoices
- associated with the provider.
- ** POs, providing an interface for viewing the purchase orders
- associated with the provider.
-* The new interface makes it possible to edit contact addresses.
-* The base provider record now has an optional primary contact field.
- Selecting a contact as the primary one is managed on the Contacts
- tab. The primary contact, if set, is displayed on the provider
- summary box.
-
-Interfaces that used to link to the Dojo provider interface now link
-to the Angular one instead.
+++ /dev/null
-Changes to Autorenewal Action/Trigger Failure Reasons
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-Previously the "reason" field in the userdata for an Autorenewal
-event would contain both the failure code and the description for
-the failure event as a single string such as
-"MAX_RENEWALS_REACHED : Circulation has no more renewals remaining"
-Now the "reason" field will only contain the description of the issue
-(Circulation has ...) while a new "textcode" field will contain the
-event code (MAX_RENEWALS_REACHED) if administrators still want to
-display it in template outputs.
-
+++ /dev/null
-EZProxy authentication
-^^^^^^^^^^^^^^^^^^^^^^
-
-Evergreen can now provide CGI authentication for EZProxy.
-To enable this, you will need to:
-
-. Add a new User Activity Type to Evergreen for EZProxy CGI authentications.
-. Add a new Remote Authentication Profile to Evergreen. You will probably want
-to use `EZProxyCGI` as the name.
-. Edit the `<Location /api/ezproxy>` stanza in Evergreen's eg_vhost configuration
-file. In particular, you will need to allow access to from your EZProxy server,
-fill in the base uri of your EZProxy server, and add a secret to the
-_OILSRemoteAuthEZProxySecret_ variable.
-. Restart Apache.
-. Edit the EZProxy user.txt file. You will likely want to add a stanza such
-as the following:
-
-.Sample user.txt stanza
-----
-::CGI=http://your-evergreen-catalog.com/api/ezproxy?url=^R
-::Ticket
-MD5 <same secret as in eg_vhost config>
-Expired; Deny expiredticket.htm
-/Ticket
-----
-
-When this feature is enabled, users will see an Evergreen-based login screen.
-You may customize the look and feel of this login screen by editing the relevant
-template toolkit files.
-
+++ /dev/null
-Matomo Support
-^^^^^^^^^^^^^^
-
-Support for the open source web analytics platform Matomo is now
-native to Evergreen. Support is on an org unit level so different
-libraries can have separate or no analytics. Once you setup
-a Matomo service you will need the URL and site ID. Typically
-Matomo will give you a block of javascript you can insert into
-web sites. One line will look like :
-
-var u="http://mylibrary.lib/matomo/";
-
-The full URL in the double quotes will be your URL. Another line
-will look like:
-
-_paq.push(['setSiteId', '1']);
-
-In this case the number 1 will be your site ID.
-
-These are set by YOAUSes opac.analytics.matomo_url and
-opac.analytics.matomo_id respectively. A new permsision,
-MATOMO_UPDATE_SETTINGS, controls access to these.
-
+++ /dev/null
-"PatronAPI" authentication
-^^^^^^^^^^^^^^^^^^^^^^^^^^
-Evergreen now supports the III "PatronAPI" scheme for authenticating
-patrons and supplying some information about them.
-
-To enable this, you will need to:
-
-. Add a new User Activity Type to Evergreen for PatronAPI authentications.
-. Add a new Remote Authentication Profile to Evergreen. You will probably want
-to use `PatronAPI` as the name.
-. Edit the `<Location /api/patronapi>` stanza in Evergreen's eg_vhost configuration
-file. In particular, you will need to allow access to it from the server(s)
-wanting to make PatronAPI requests, determine whether to enable the PatronAPI
-"dump" feature, and specify whether users can be identified by username
-or barcode.
-. Restart Apache.
-. Update the PatronAPI client to use https://your.evergreen.server/api/patronapi
- as its base URL.
-
-Example PatronAPI URLs look something like this:
-
-.PatronAPI URLs
-----
-# test a patron's PIN:
-https://evergreen.example.org/api/patronapi/USERNAME/PASSWORD/pintest
-
-# dump some information about the patron. Note that this
-# does _not_ require the the patron's password be supplied.
-https://evergreen.example.org/api/patronapi/USERNAME/dump
-----
-
-The responses for the `pintest` and `dump` actions are specified by
-Template Toolkit templates under (e.g.) `/openils/var/templates/remoteauth`.
+++ /dev/null
-Preloaded Audio Icon and Search Format
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-A new search and icon format called Preloaded Audio now exists
-that overlaps with the eAudio format. If you want to exclude
-the Preloaded Audio format from overlapping with eAudio
-you can use the following SQL:
-
-UPDATE config.composite_attr_entry_definition SET definition = '{"0":{"_attr":"item_type","_val":"i"},"1":[{"_attr":"item_form","_val":"o"},{"_attr":"item_form","_val":"s"}]}'
- WHERE coded_value IN (SELECT id FROM config.coded_value_map WHERE code = 'eaudio');
-
-It is also recommended that you reingest your bibliographic records
-to updated the fixed field indexes. You can accomplish this by running
-the following query in your database:
-
-SELECT metabib.reingest_record_attributes(source)
-FROM metabib.record_attr_vector_list WHERE
-(SELECT id FROM config.coded_value_map WHERE ctype = 'item_form' AND code = 'q') = ANY(vlist)
-AND (SELECT id FROM config.coded_value_map WHERE ctype = 'item_type' AND code = 'i') = ANY(vlist);
-
-
+++ /dev/null
-Documentation Now Uses the Antora Toolchain
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-The core Evergreen documentation under the `docs/` subdirectory
-has been changed to use Antora, a documentation site generator
-for AsciiDoc. The result of this change is the ability to generate
-documentation for the `docs.evergreen-ils.org` website that is
-searchable, easier to maintain, and readily installable on a
-local Evergreen site if desired.
-
-For instructions on how to build the documentation, consult
-the file `README.adoc` under the `docs` directory.
+++ /dev/null
-New Action/Trigger reactor for 3rd party signaling
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-This new Action/Trigger reactor module allows an Evergreen administrator to
-create event defintions that use HTTP (or HTTPS) to contact external services
-and let them know that something has happened in Evergreen.
-
-For instance, a discovery layer can be informed when a bib record is updated
-or when a user's barcode changes.
-
-Reactor Template Syntax
-+++++++++++++++++++++++
-The new reactor module uses a template to define its behavior. While the
-template is processed by Template Toolkit, as with any A/T templates, its
-output format is new to Evergreen.
-
-The template should output data that can be parsed by the Config::General Perl
-module. See: https://metacpan.org/pod/Config::General
-
-Top level settings should include the HTTP *method* and the *url*.
-
-A block called *Headers* can be used to supply arbitrary HTTP headers.
-
-A block called *Parameters* can be used to append CGI parameters to the URL,
-most useful for GET form submission. Repeated parameters are allowed. If
-this block is used, the URL should /not/ contain any parameters, use one or
-the other.
-
-A HEREDOC called *content* can be used with POST or PUT to send an arbitrary block
-of content to the remote server.
-
-If the requested URL requires Basic or Digest authentication, the template can
-include top level configuration parameters to supply a *user*, *password*, *realm*,
-and hostname:port *location*.
-
-A default user agent string of "EvergreenReactor/1.0" is used when sending requests.
-This can be overridden using the top level *agent* setting.
-
-Here is an example template that could be used by a definition attached to the
-*bib.edit* hook:
-
-[source]
-----
-method post # Valid values are post, get, put, delete, head
-url https://example.com/api/incoming-update
-agent MySpecialAgent/0.1
-
-user updater
-password uPd4t3StufF
-realm "Secret area"
-location example.com:443
-
-<Headers>
- Accept-Language en
-</Headers>
-
-<Parameters>
- type bib
- id [% target.id %]
-</Parameters>
-
-content <<MARC
-[% target.marc %]
-MARC
-----
-
+++ /dev/null
-Fix For "Blank" (Empty String) TCN Source
-^^^^^^^^^^^^^
-Previously, it was possible for sparsely-populated MARC records to be
-saved with a TCN Source of '' (the "empty string"), which caused the
-901 $b subfield to be void of data, causing errors when exporting
-MARC records to such third-party programs as Zotero.
-
-A site that has been running without this patch for a long time might want to
-check how many bib records they have with an empty tcn_source:
-
-SELECT COUNT(*) FROM biblio.record_entry WHERE deleted IS FALSE AND tcn_source = '';
-
-Sites can fix the problem by issuing UPDATE statements to set the 901$b to a value
-like 'AUTOGEN' or 'Unknown'. They should probably do it per-record, however, to
-avoid locking the table in a huge commit.
+++ /dev/null
-Manage Authorities Angular Port
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-The Cataloging => 'Manage Authorities' interface has been ported to Angular.
-
-New functionality includes displaying additional authority data, like create
-and edit dates, etc. It's also possible to view the list of linked bib
-records.
+++ /dev/null
-MARC Batch Edit UI Angular Port
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-The MARC Batch Edit interface has been ported to Angular.
+++ /dev/null
-Preloaded Audio Icon and Search Format
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-A new search and icon format called Preloaded Audio now exists
-using the following atttributes: itemtype i, item form q. This
-overlaps with the eAudio format. If you want to exclude
-preloaded audio from eAudio there is a script in the Administration
-notes to exclude it.
-
+++ /dev/null
-Curbside Pickup
-^^^^^^^^^^^^^^^
-The Curbside Pickup features in Evergreen provides an interface to help
-facilitate contact free pickup of library materials. It provides a dedicated
-interface in the staff client for library staff to track and manage curbside
-pickup appointments and materials through the various stages of the process.
-Staff can also schedule pickup appointments on behalf of patrons. This feature
-also allows patrons to schedule their own curbside pickup appointments in their
-OPAC account, as well as inform the library when they have arrived and are
-waiting for their materials.
-
-This is an extension of the existing holds functionality in Evergreen. A hold
-must be placed for an item to be eligible for curbside pickup. After an item
-has been captured for a hold and is available for pickup from the holds shelf,
-a curbside pickup appointment can be scheduled to allow the materials to be
-obtained in a contact free transaction.
-
-It can accommodate several different workflows depending on how the library
-decides to implement curbside pickup. It can help library staff track and
-checkout batches of items to be picked up curbside and help facilitate
-communication between library staff and patrons. It does not prescribe a
-specific workflow for curbside pickup.
-
-It can be used alongside regular (in the library) hold pickup. Curbside pickup
-can be an option offered patrons in addition to regular pickup or it can
-be the primary pickup option depending on tghe library’s current service plan.
-
-It assumes the library will have a staff member assigned to managing curbside
-pickup throughout the day.
-
-Library Settings
-++++++++++++++++
-This feature adds the following library settings.
-
- * `circ.curbside`: whether to enable curbside appointments for
- picking up available hold requests. This default to off.
-
- * `circ.curbside.granularity`: interval between appointment slots. This
- defaults to 15 minutes.
-
- * `circ.curbside.max_concurrent`: how many appointments to permit per
- time slot. This defaults to 10.
-
- * `circ.curbside.disable_patron_input`: if turned on, display scheduled
- and pending appointments in My Account in the public catalog but
- do not give the patron the ability to change them from My Account.
- This defaults to false, i.e., allowing patrons to modify appointments
- from My Account.
-
-Notifications And Action Triggers
-+++++++++++++++++++++++++++++++++
-There are several new patron notice options related to curbside pickup.
-
-When a patron’s holds are marked as ready for pickup in Evergreen, an email or
-text/SMS notification can be sent to let them know that curbside pickup is an
-option at their library. This notice can be used to promote this service and
-the default message will prompt patrons to log in to their OPAC account to
-schedule an appointment or call the library to schedule an appointment.
-notice message is customizable. The Trigger Event Definitions for this notice
-are called:
-
- * Curbside offer Email notification, triggered by CurbsideSlot reactor on a
- definition attached to the hold available hook
- * Curbside offer SMS notification, triggered by CurbsideSlot reactor on a
- definition attached to the hold available hook
-
-If a patron has scheduled a curbside pickup appointment, an email or text/SMS
-notification can be sent to confirm the appointment. It will also prompt them
-to log into their account or call the library when they have arrived for their
-pickup appointment. The Trigger Event Definitions for this notice are called:
-
- * Curbside confirmation Email notification
- * Curbside confirmation SMS notification
-
-Patrons can receive an email with a list of the items they checked out. To
-receive this notice patrons must have an email address associated with their
-account and the option for “Email checkout receipts by default?” must be
-selected in their account. This is an existing notice in Evergreen that ties
-in to the curbside pickup workflow.
-
-There is another action trigger called “Trigger curbside offer events and
-create a placeholder for the patron, where applicable”. This action trigger
-does not send a notice to patrons or staff. It is a silent action behind the
-scenes that initiates the curbside offer email or SMS notification described
-above.
-
-Upgrade Notes
-+++++++++++++
-This feature adds a new OpenSRF service, `open-ils.curbside`, which must be
-enabled and registered with the public router for the feature to function.
-
-This feature adds no new staff permissions.
+++ /dev/null
-Booking Capture is now in Angular
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-The interface to capture resources for booking
-reservations has been re-implemented in Angular.
-Other booking screens, such as Pick Up and
-Manage Reservations, now include an option to
-re-print capture slips.
-
-System administrators can now edit the template
-for booking capture slips in Administration ->
-Server administration -> Print templates.
-
+++ /dev/null
-New Fields for AutorenewNotify Event Template
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-Two new fields, `auto_renewal_remaining`, and `total_renewal_remaining` have
-been added to the AutorenewNotify action/trigger event code. They will
-report the number of autorenewals and regular renewals, respectively,
-remaining on the new circulation if renewed, or on the old circulation
-if not renewed. This is provided as a convenience to avoid possibly
-inaccurate math in the template. You may access them in the template via
-the `udata`:
-
-.................................................
-Automatic Renewals Remaining: [% udata.auto_renewal_remaining %]
-Total Renewals Remaining: [% udata.total_renewal_remaining %]
-.................................................
-
+++ /dev/null
-Course materials module
-^^^^^^^^^^^^^^^^^^^^^^^
-
-This version of Evergreen includes an optional course materials module.
-Like course reserves modules in other library software, this module
-makes reserves collections more discoverable and easier to manage.
-The module also provides similar functionality for library electronic
-resources and open educational resources, whether they have been
-cataloged or not.
-
-To enable the course materials module, go to Administration >
-Local Administration > Library Settings Editor. Find the setting
-called "Opt Org Unit into the Course Materials Module". Set it to
-True for the org units that want to use the module.
-
-To use the course materials module effectively, staff will need a
-new permission called _MANAGE_RESERVES_. By default, circulation
-administrators will receive this permission.
-
-Courses
-+++++++
-
-Staff members with the _MANAGE_RESERVES_ permission can create
-courses, attach materials to them, attach users to them, and
-archive them when they are no longer needed.
-
-When associating physical materials from the catalog to a
-course, staff members can choose temporary item attributes.
-These attributes will last until the course is archived or
-the item is detached from the course, whichever happens
-first.
-
-Staff can also choose to associate electronic resources from
-the catalog (which must have a transcendent bib source or
-a located URI). They can also create a brief bib record
-to attach to the course from within the course materials
-module.
-
-Staff members can attach users to the course. These users
-can have either a public role (e.g. instructor) or private
-roles (e.g. student). The public roles will be displayed
-in the OPAC.
-
-OPAC
-++++
-
-If the module is enabled, the OPAC will include a course search
-and a course browse.
-
-Other uses
-++++++++++
-
-Libraries may also want to use this module to manage their
-displays. Each display can be treated as a course, and staff
-can attach the items they wish to display to the course along
-with the temporary attributes (e.g. a shelving location called
-"On display"). When the display is over, staff members can
-archive the course.
-
+++ /dev/null
-Hopeless Holds Interface
-^^^^^^^^^^^^^^^^^^^^^^^^
-
-A new interface under Local Administration has been added called
-Hopeless Holds. Using a new Hopeless Date field on hold requests,
-this interface gives staff a way to resolve issues with hold
-requests that may have become unfulfillable or "hopeless".
-
-The Hopeless Date is set for a given request by the hold targeter
-whenever the potential items list for the hold is empty, or when
-all potential items have a copy status that has been designated
-as Hopeless Prone (a new boolean field on copy statuses).
-
+++ /dev/null
-In-house use now records workstations
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-Evergreen now records the workstation along with each
-in-house use. Staff can now run reports on which
-workstation created which in-house uses.
-
+++ /dev/null
-Purge User Preferred Names
-^^^^^^^^^^^^^^^^^^^^^^^^^^
-The new, user preferred name fields are now set to NULL in the
-database when a user account is purged via the staff client or using
-the actor.usr_delete function in the database.
-
-To clear the preferred name fields from records that have already been
-purged, run the following SQL update:
-
-[source,sql]
-----
-UPDATE actor.usr
-SET pref_prefix = NULL,
- pref_first_given_name = NULL,
- pref_second_given_name = NULL,
- pref_family_name = NULL,
- pref_suffix = NULL,
- name_keywords = NULL
-WHERE usrname ~ ('^' || id || '-PURGED')
-AND NOT active
-AND deleted
-AND (
- pref_prefix IS NOT NULL OR
- pref_first_given_name IS NOT NULL OR
- pref_second_given_name IS NOT NULL OR
- pref_family_name IS NOT NULL OR
- pref_suffix IS NOT NULL OR
- name_keywords IS NOT NULL
-);
-----
+++ /dev/null
-Test Notification Method
-^^^^^^^^^^^^^^^^^^^^^^^^
-Patrons and staff may request a test notification for a patron's default email address or SMS
-number via the Patron Registration interface in the staff client or the Opac preferences interface. The OPAC_LOGIN permissions are required to
-request a notification. When a notification is sent, it will be sent to either the user's default email or default SMS number, depending on
-what was requested.
-
-Upgrade Notes
-+++++++++++++++++++
-
-This feature adds two new rows to action_trigger.event_definition, two into
-action_trigger.hook, and six into action_trigger.environment.
+++ /dev/null
-Angular catalog recall/force/part holds
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-The Angular staff catalog now has entry points for placing Recall,
-Force, and Part-level holds.
-
-For any item-level hold type, the user now has the option to cycle
-between Item, Recall, and Force hold types. The selected type affects
-the full batch of holds.
-
-For title-level holds, the user now has the option to select a part
-as the hold target for each record in the list. Part selection is
-optional.
+++ /dev/null
-New Angular Staff Catalog Default
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-The experimental Angular staff catalog has been promoted to operate as the
-default catalog in the browser staff client. It will be used for all
-catalog entry points, except for the menu entries for the traditiaional
-catalog and any links within the traditional catalog.
-
-Menu Changes
-++++++++++++
-
-* Search => 'Search The Catalog' now searches to new catalog.
-* Cataloging => 'Search The Catalog' now searches to new catalog.
-* Cataloging => 'Search The Catalog (Traditional)' searches the traditional
- TPAC-style catalog.
-* Staff client splash page => 'Search the catalog' inline form uses the
- new catalog.
-
+++ /dev/null
-Basket To Bucket Action Now Allows Adding To Shared Buckets
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-The Angular staff catalog's 'Add Basket to Bucket' action now
-gives the user the option of adding the contents of the basket
-to a shared bucket.
-
+++ /dev/null
-Enhanced Public Catalog Printing and Email
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-Evergreen now provides additional functionality for printing and emailing
-bibliographic record and holdings information from the catalog, including
-from an individual record or from a list or basket.
-
-After selecting Print or Email, the user will be presented with a preview of
-the printout or email, respectively. From the preview users can chose to view
-Brief or Full record information (Full includes holdings information) and how
-records should be sorted (Author, Title, Publication Date). Holdings
-information can also be limited to a certain library.
-
-Users can be required to log in to their OPAC account to send an email or this
-feature can be configured to allow sending an email without signing in to the
-public catalog. If the option to allow emailing without signing in is enabled
-(by turning on the new 'Allow record emailing without login' library setting),
-user will be asked to solve an arithmetic CAPTCHA in order to send the email.
-
-Administration
-++++++++++++++
-Two new interfaces have been added to Local Administration: Event Definition
-Groups and Event Definition Group Members. The Event Definition Groups defines
-the various groups for Action Trigger Event Definitions-- currently Print
-Record(s) or Email Record(s). The Event Definition Group Members defines the
-options within each group-- currently Brief or Full record information.
-
-These two interfaces expose the infrastructure behind the new print and
-email functionality and library staff will not need to make any changes to
-these interfaces to use the existing print and email options. The stock print
-and email Action Trigger Event Definitions can be cloned and modified to
-provide additional bibliographic format options. After creating the custom
-Event Definition, add it to the appropriate Event Definition Group (Print
-Record or Email Record) and the new format will be available in the catalog.
-
+++ /dev/null
-New Bootstrap-based OPAC
-^^^^^^^^^^^^^^^^^^^^^^^^
-
-This release includes a new experimental OPAC with a cleaner, more modern design.
-
-To enable the new OPAC design, open the _/etc/apache2/eg_vhost.conf_ file.
-
-Find the following line:
-
-------------------------------------------------------------------------------
-PerlAddVar OILSWebTemplatePath "/openils/var/templates"
-------------------------------------------------------------------------------
-
-Add the following line directly below it:
-
-------------------------------------------------------------------------------
-PerlAddVar OILSWebTemplatePath "/openils/var/templates-bootstrap"
-------------------------------------------------------------------------------
-
-Be sure that, if you have any local customizations, that they are referenced below
-this line. This way, your customizations will still appear in the new OPAC design
-(although they may need to be adjusted to better fit the new style).
-
-You can also turn on the new OPAC for some virtual hosts only, by adding it to the
-appropriate virtual host entry. Be sure to reference the OILSWebTemplatePath for
-the `templates-bootstrap` directory before referencing any local customizations
-used by that virtual host.
-
-To emphasize, the new OPAC skin is considered experimental for 3.6.x. There
-are some discrepancies between its functionality and the functionality
-present in the original "TPAC" skin. The Evergreen community aims to
-resolve those discrepancies and make the Bootstrap skin become the default
-OPAC for the Spring 2021 release (though the original TPAC skin will still
-be available). Using the Bootstrap skin in production for 3.6 is at your own risk.
+++ /dev/null
-Credit card payments using Stripe now on version 3 (Elements)
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-When Stripe payments are enabled, the public catalog will now
-use version 3 of the Stripe client library, as well as its
-Elements API for building the credit card form. For
-technical reasons, this more easily lends a site to PCI
-compliance.
-
-On the staff side, the credit card option is disabled for
-Stripe, as that has not been implemented and in the past
-would just give an error.
+++ /dev/null
-Combined Aged and Active Circluations Source Naming
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-A recent improvement to aid web client data retrieval
-speed resulted in a new reports source that was named
-nearly identically to a long-existing one, and both
-were appearing in the "Core Sources" section of reports.
-The newer source has been renamed for clarity and removed
-from the core sources to prevent confusion:
-
- * "Combined Aged and Active circulations" is now named "Combined Aged and Active Circulations (Slim Version)"
- and is removed from the Core Sources.
- * "Combined Aged and Active Circulations", which contains more linkages to other data sources, remains in the
- Core Sources list.
+++ /dev/null
-Reports Subtotals
-^^^^^^^^^^^^^^^^^
-Reports now allow group subtotals and grand totals. By checking the
-new "Calculate grouping subtotals" checkbox under "Output Options",
-a new unlabeled row or column is created with the subtotals for each
-grouping and an unlabeled grand total row or column.
-
-This takes advantage of PostreSQL's built-in ROLLUP feature. See the
-PostgreSQL documentation for details:
-
-https://www.postgresql.org/docs/9.6/queries-table-expressions.html#QUERIES-GROUPING-SETS
-
-An example of a report that could use this new feature is
-one based on the Circulation source with the following fields:
-
- * Circulation -> Checkout / Renewal Library -> Short (Policy) Name (Raw Data)
- * Circulation -> Checkout Date/Time (Year)
- * Circulation -> Shelving Location -> Name (Raw Data)
- * Circulation -> Circ ID (Count Distinct)
-
-Turning on the "Calculate grouping subtotals" checkbox would make
-the report show subtotals for each combination of
-short name, checkout year, and shelving location name.
+++ /dev/null
-Allow Username in Patron ID
-^^^^^^^^^^^^^^^^^^^^^^^^^^^
-Evergreen now accepts a patron's username in the SIP2 Patron ID field
-(AA) in addition to the barcode. This modification is useful for
-vendors, such as Overdrive, who can accept a user's username.
-Additionally, it is easier for a patron to find and remember their
-username over their barcode.
-
-The new feature determines if the value in the Patron ID field is a
-barcode or username by comparing the field value against the
-`opac.barcode_regex` setting for the organizational unit of the logged
-in SIP2 account as configured in the oils_sip.xml file. This is
-similar to what the OPAC does when a patron logs in.
-
-This feature requires activation. To activate, uncomment (or add) the
-following line in the oils_sip.xml configuration file and change the
-value from 'false' to 'true'.
-
-[source,xml]
----------------------------------------------------------------------------
-<option name='support_patron_username_login' value='true' />
----------------------------------------------------------------------------