Aeon 3.9 Release Notes

Follow

Bug fixes and new features are added periodically as point releases:

8 September 2017 (3.9.4) DLL Release

29 November 2018 (3.9.6) Web DLL Release 

Aeon 3.9 Highlights 

Keep in Review

We've made some enhancements to the existing Keep in Review feature which will improve support for request submissions from external systems. These changes will require some files in the web directory to be added or modified for existing sites to benefit from all the new functionality, but existing web pages will continue to work. The significant change to existing behavior is that requests submitted with the "Keep for My Review" option selected are no longer validated with the web validation rules. Instead, all requests are validated at the point they are submitted for processing. This will allow the Awaiting User Review queue to act as a holding queue for any requests that may not be complete. In particular, any requests submitted from an external system that may lack certain details that would prevent them from passing web validation can now be stored in Awaiting User Review and viewed, edited to include any required details, and submitted at a later time.  Please see Aeon 3.9 Web Page Changes for additional information.

 External Request Endpoint

The external request endpoint provides a new way for third-party systems to submit requests to Aeon and takes advantage of the modifications to the Keep in Review feature made in Aeon 3.9. Using the endpoint, one or more requests can be submitted for user review or for staff processing. For additional information, please see External Request Endpoint.

Web Validation

In this release, we've modified the way web validation works to more easily allow the reuse of validation rules among multiple forms. This functionality already exists in the FormValidationOverride input (described in Customizing and Editing Web Pages), but that requires the validation rules for a given web form to be declared on the form itself. This enhancement will work similarly but will allow us to define which validation rules apply to a form in the database which will allow other parts of the system outside of form submissions to take advantage of it.

Important Changes

The WebValidation table has been modified to no longer refer to form names. The FormName field has been renamed to RuleSet and defines the name of the set of validation rules that that row applies to. We've also added a new table named WebFormValidationLinks which describes the relationship between web forms and the validation rule sets that should be applied to submissions from that form. The WebFormValidationLinks table has two columns - FormName and RuleSet. For a given web form, the WebFormValidationLinks table will contain a record for each validation rule set that applies to it.

 For example, two of the WebValidation records that are created on new installations are:

RuleSet
FieldName
Validation
Error
ErrorTag
AllRequests Site .+ Site is a required field.

ERRORSite

AllRequests ItemTitle .+ Title is a required field. ErrorItemTitle

and two of the WebFormValidationLinks records are:

When a user submits a default request or photoduplication request, the aeon.dll will look at the WebFormValidationLinks table to see which rule sets apply to the form (AllRequests, in this case) and then retrieves and applies the validation rules belonging to the AllRequests rule set found in WebValidation. This provides us a simple way to centralize and share validation rules among many forms. If you wanted to change the validation rule for the Site field or drop it altogether, you only have to make a single change to the WebValidation table.Suppose we wanted to ensure that users provided a format and service level when submitting photoduplication requests. We can do this now strictly from the table editor in Customization Manager; there is no longer any need to edit the web pages. In this case, we'd add the two new validation rules to WebValidation. The rule set name can be any string up to 100 characters. For this example, I'll call it PhotoduplicationRequests.

FormName
RuleSet
DefaultRequest AllRequests
PhotoduplicationRequest AllRequests

 

RuleSet
FieldName
Validation
Error
ErrorTag
PhotoduplicationRequests Format .+ Format is a required field. ERRORFormat
PhotoduplicationRequests ServiceLevel .+ Service level is a required field. ERRORServiceLevel

and we'd add a record to WebFormValidationLinks to link that rule set to the photoduplication request form

FormName
RuleSet
PhotoduplicationRequest PhotoduplicationRequests

Now, when a user submits a photoduplication request, both the AllRequests and PhotoduplicationRequest validations rule sets will be applied.The default web pages have been updated to remove any FormValidationOverride inputs and the equivalent rules are now seeded into the WebValidation and WebFormValidationLinks tables.When a site is being updated, the WebValidation.FormName field is renamed to RuleSet and the existing values are left in place. In this case, rule sets' names will be the same as their form names. Then the WebFormValidationLinks table will be populated by taking the rule sets with known Aeon form names and creating a link from that form name to its rule set. For example, before updating you have a WebValidation record with a FormName of 'ChangeUserInformation'. During the update, a record will be added to WebFormValidationLinks with the value 'ChangeUserInformation' for both the FormName and the RuleSet fields.The FormValidationOverride input will continue to work as it previously did, except that the value attribute will now refer to the WebValidation.RuleSet field. No changes need to be made to existing web pages because of this feature.OpenURL MappingOpenURL mapping now supports default constant values. As noted in Submitting Requests Via OpenURL and External Systems, the OpenURL Field Values section explains how Aeon breaks the field value into separate expressions on the pipe character. It then processes these expressions one at a time, left to right, until it finds an expression with a tag that matches one of the provided OpenURL parameters. This behavior has changed to allow expressions without any tags, i.e. string constants. When Aeon is evaluating each expression, if it finds one without any tags in it, it is considered a match and its value is used to populate the corresponding Aeon field.This behavior has changed to allow expressions without any tags, i.e. string constants. When Aeon is evaluating each expression, if it finds one without any tags in it, it is considered a match and its value is used to populate the corresponding Aeon field.

For example, if the OpenURLFieldValues for the ItemAuthor field are:  <#author>|<#rft.au>

and the OpenURL link has neither an author nor rft.au parameter, the ItemAuthor field will be blank. However, if it is instead:  <#author>|<#rft.au>|Author unknown

then the same situation would lead to the ItemAuthor field being set to "Author unknown". This allows default values to be defined for request fields. Any expressions beyond the ìAuthor unknownî string constant will not be evaluated since the a constant expression is considered a match. 

Aeon 3.9 Features & Fixes

Activities | Administrative Tools | Aeon Client | Database | Installation | Photoduplication | Printing | Web Interface | Web Platform 

Activities

Change The Callslip Button is now disabled when creating a new activity.

Administrative Tools

Fixed 

Templates created in StaffManager can now have apostrophes in their names.

Aeon Client

Fixed  Z39.50 Record Detail Tab no longer overlaps the MARC and Text data.
 Fixed Corrected the issue where the Client request form may leave the request at Request in Processing.
Fixed Any open layout customization forms that are open (i.e. any pending changes to layouts) will be closed when clicking Save on the template editing form.
Fixed Fixed an issue where Aeon would fatally exit when some Z39.50 servers would error out when searching certain queries. This was corrected when the Z39.50 server timed out or the connection was lost while performing the query.
 Fixed The End of Support Tooltip's typo has been corrected by saying "This version of Aeon is no longer begin supported. Click here for more details." to "This version of Aeon is no longer being supported. Click here for more details."
Fixed The problem where the Browser in Aeon would not be the correct version of Internet Explorer when Aeon was launched for the first time has been fixed.
Fixed  The GroupRequestsByLocation Customization Key now has a description. There have been unit tests added to the UpdatedDatabaseTests, and NewDatabaseTests to ensure that no other Customization Keys can be assigned an empty or null description.
Fixed  Saving a Z39.50 search with no included servers no longer causes an error.
 Fixed Updating a layout template in the client will now update the Last Modified Date.
 Fixed The user history entry is now created when a user is cleared from the Users Waiting to be Cleared form.
Fixed When exporting large data sets from custom search results, the System.OutOfMemoryException no longer occurs and the grid export feature now supports the more modern XLSX spreadsheet format.
Fixed 

Browsing feature corrected to prevent unwanted cancellation of request.

Fixed 

Text controls that have a drop-down list of recent entries may throw exceptions when editing the text that contains certain unicode characters.

 Fixed

Some status bars do not correctly pluralize 'activity' or 'request'.

Fixed 

Hiding fields named "ID" in layout field customizations can cause an exception when saving a photoduplication request.

Database

Fixed 

Existing usernames had trailing whitespace removed.

 

Installation

Fixed 

Addressed installer compatibility issue that prevented installation on Windows 7.

 

Photoduplication

Fixed

Aeon.dll can now serve files larger than 2GB.

 

Printing

Changed The MSWord template document closes automatically after printing.
Changed Updated Printing so that users don't have to modify the word setting that opens e-mail attachments in the reading view.
Fixed  Corrected issue where the Print Callslips button on the activity form does not report printing errors.

Web Interface 

Changed

The DLL will now preserve data if a user is expired and has to first update their information.

Sites who want this functionality will need to update their ChangeUserInformation.html page (or their ExpiredUsers.html page if they use that) to add a FormState tag.

Changed

Updated the tables on the ActivityInformation.html page to the new table header convention for accessibility purposes.

Changed The Document Types on new requests with only one option in the key no longer sets the document type to NULL.
Changed  When submitting a request from user review (status Awaiting User Review or an equivalent custom queue) the Aeon web DLL will now ensure that the request being submitted is currently in user review. Additionally, because requests are now validated when being submitted from user review, if such a request fails validation, the user will be redirected to the request's edit page and the web validation errors will be shown at the top of the page.
Changed The Web DLL now requires that a username be supplied that does not contain only whitespace. If the username is only whitespace and there is no web validation rules to prevent that, the DLL will report it back as a username is already in use to ensure blank usernames cannot be created. The default validation for the Registration ruleset for the Username field has been changed to "\S+" to require one or more fields that are not white space. The validation entry for the Registration ruleset for existing Aeon sites will only be updated if the existing expression matches the previous default of ".+"
Changed 

We removed the leading slash from "/aeon.dll" in the tags where it is combined with the WebURL to prevent double slashes when WebURL ends with a trailing slash (which it should). These changes were made to all three feature-specific CreditCardPayment.html pages. 

Note: Existing sites do not need to update their pages if their credit card processing is working as is.

Changed  The DLL will now handle HTTP redirects when processing EAD requests if the EAD URL link redirects to an alternate page.
Changed  Expired web sessions were not handled properly when submitting requests from the EADRequest.html page. This was corrected by changing how EAD submissions work. 
Changed  Modify EAD request submission so that requests that fail validation will be put into Keep In Review rather than discarded. 
Changed  Modified the way web validation works to more easily allow the reuse of validation rules among multiple forms. This functionality already exists in the FormValidationOverride input (described in Customizing and Editing Web Pages), but that requires the validation rules for a given web form to be declared on the form itself. This enhancement will work similarly, but will allow us to define which validation rules apply to a form in the database which will allow other parts of the system outside of form submissions to take advantage of it.
Fixed  Corrected an issue where cancelled photoduplication requests would still show when viewing order billing.
Fixed Fixed an issue where blank users could be created when navigating to a specific DLL page.
Fixed Corrected the RequestCopy feature not submitting the disabled fields which could cause web validation issues. Also corrected an issue where if web validation was unsuccessful when handling the "Request Copy" the disabled fields would become enabled again allowing the user to modify values of fields.
Fixed

Added closing <div> tag at line 24 in the Logout.html file. 

 

 Fixed Adding a note to a request in the web will no longer fail if it is greater than 4000 characters.
Fixed The javscript on the CreditCardPayment.html pages for PayPal and Authorize.net have been updated to prevent issues caused by caching that Internet Explorer does. 

 

  Web Platform

Fixed 

Missing parameter for LogFormat statement in CancelRequestProcess used by WebPlatform

 

8 September 2017 (3.9.4) DLL Release

We removed the leading slash from "/aeon.dll" in the tags where it is combined with the WebURL to prevent double slashes when WebURL ends with a trailing slash (which it should). These changes were made to all three feature-specific CreditCardPayment.html pages. Note: Existing sites do not need to updte their pages if their credit card processing is working as is.

New

Add support for Payeezy payment gateway.

Changed 

Remove EAD contents from log statements.

Fixed Aeon cannot retrieve finding aids with the HTTPS protocol.
Fixed The 'Request For' dropdown may exclude activities or users when cloning requests in the web.
 Fixed If the collective cookie size is more than 4096 characters, Aeon is unable to read cookies including the AeonSessionID.
 Fixed We should be setting the HttpOnly flag on cookies
 Fixed The web DLL does not properly handle more than 48K of POST data.
 Fixed Requests can be created in the web without web validation being applied.
 Fixed DLL does not always handle invalid Action/Form values
Fixed  Aeon.dll doesn't check a user's request limit when they edit and submit for retrieval a request that's in user review.
Fixed  Submitting photoduplication requests from an EAD does not send the user to the View Order Estimates page even when not configured to skip order estimates.
Fixed Aeon- Typo in Paypal IPN Response Debug statement
Fixed  PayEEZY payments fail if the charge amount is less than $1
 Fixed Aeon.dll doesn't check a user's request limit when they approve an order estimate
Fixed  If the LDAP server times out when logging in, the web DLL incorrectly reports that the username is not in the database.
 Fixed Logging in to the web will fail if the password contains certain characters, such as a plus sign.
Fixed  Billing options that contain a double quote character cause the billing option dropdowns to be empty in the web.
 Fixed The billing account associated with a request is not set when creating or editing a request in the web.
Fixed Payments with Authorize.net may fail if details contain certain characters.
Fixed  The Aeon DLL does not correctly set more than one cookie at a time.

 

 29 November 2018 (3.9.6) Web DLL Release   

Fixed

Fixed

3466

3722

Fixed two bugs that could potentially (under rare circumstances) allow users to see email notifications that did not belong to them.
Fixed

Fixed

3662

Changed web template tag handling to prevent the use of tag replacements for cross-site scripting (XSS).

Questions?

If this article didn’t resolve your issue, please take a moment and answer a few questions to help improve our documentation:

Feedback