As of Aeon v5.2, the Appointment Required setting for reading room calendars configured in the Aeon Customization Manager will apply the appointment requirement only to the individual reading rooms and user statuses for which the Appointment Required setting is enabled instead of applying to all reading rooms on the site. To supplement this functionality, additional web validation options must be configured in the Aeon Customization Manager to ensure that the appointment requirement is properly enforced across the Aeon web pages after updating to Aeon 5.2 (if appointment scheduling features had been previously configured in Aeon 5.1) or when implementing the appointment scheduling features at Aeon 5.2 or later.
Configuring this feature will require configuring settings in three different interfaces in the Aeon Customization Manager:
Appointment Scheduling Calendar Configuration
First, ensure that each reading room for which you'd like to require appointments is properly configured in the Aeon Customization Manager:
- Open the Aeon Customization Manager
- Click on the Appointment Scheduling tab
- Review each reading room appointment calendar you have configured using the Reading Rooms navigation pane on the left side of the screen
Ensure that the Appointment Required option is configured for each specific user status that should be required to book appointments in the room and/or as a default setting for the room in the Status-Specific Policies table:This requirement can be configured as a default setting/policy for the room or limited to only apply to certain user statuses. Each reading room can contain different requirements/policies for each user status (e.g., faculty users can be required to book appointments in one reading room but not required to do so in another). See Configuring Reading Room Calendars for more information on configuring these settings.
WebValidation Table Configuration
Next, new entries must be created in the WebValidation table that will require the ReadingRoomID field on the requests form on which the appointment fields are configured:
- Click on the Customization tab in the Aeon Customization Manager
- Navigate to the WebValidation table (located under Web Interface | Validation)
- Click New Record
Create a validation rule for the ReadingRoomID field that will apply to the web validation rule sets you have configured for your non-photoduplication request forms (i.e., the request forms on which the appointment scheduling fields are configured). The default non-photoduplication request forms will be covered by the ReadingRoomRequests rule set in a default Aeon configuration. To create a new validation rule for ReadingRoomID that will apply to the ReadingRoomRequests rule set, enter the following information:
Rule Set ReadingRoomRequests Fieldname ReadingRoomID Validation .+ Error You must select a reading room Error Tag ERRORReadingRoomIDYour Aeon configuration may vary from the default and may use a different rule set to apply validation rules to your request forms. You may also have different rule sets configured for different request forms. You can check which rule sets have been applied on each request form and/or create new links between rule sets and request forms in the WebFormValidationLinks table. For more information on the two web validation tables, see Field Validation and Required Fields. To add the ReadingRoomID WebValidation table entry for additional rule sets, use the same configuration information above and change the Rule Set field to match the name of those additional rule set(s).Warning! If you are using a photoduplication toggle on your EAD Request form, do not use a rule set that will apply the ReadingRoomID requirement to EADRequest.html.
- Click Save
- Repeat steps 3-5 for additional rule sets, if necessary
- Click New Record
Create a new ruleset called ViewUserReviewRequests by entering the following information:
Rule Set ViewUserReviewRequests Fieldname ReadingRoomID Validation .+ Error You must select a reading room Error Tag ERRORReadingRoomIDThis rule will enforce the reading room selection requirement for requests submitted from the Saved Requests web page.The Saved Requests web page will only enforce the reading room requirement for requests that were created using a request form that has also been configured in the WebValidation table to require the ReadingRoomID field (see step 4 above for instructions).
- Click Save
WebFormValidationLinks Table Configuration
Finally, a new entry must be created in the WebFormValidationLinks table that will link the ViewUserReviewRequests form (i.e., the Saved Requests web page) to the new rule requiring the ReadingRoomID field:
- Navigate to the WebFormValidationLinks table (located under Web Interface | Validation)
- Click New Record
- Link the ViewUserReviewRequests form to the rule created in the WebValidation table by entering the following information:
Form Name ViewUserReviewRequests Rule Set ViewUserReviewRequests
- Click Save
- Review the rest of the entries in the WebFormValidationLinks table to ensure that your non-photoduplication request forms have been linked to the rule set(s) indicated in the new validation rule(s) requiring the ReadingRoomID field that you created in steps 4-6 of the WebValidation table configuration instructions above
Web Page Changes (Aeon 5.1 Web Pages Only)
If you have not yet updated to the Aeon v5.2 Appointment Scheduling web pages, your existing web pages must be edited to mark the Reading Room dropdown as a required field on all web forms using the appointment scheduling fields. Please add the "(required)" text and 'required' attribute to the Reading Room field as shown below within the files listed below the example:
<div class="form-group col-md-5 appointments-enabled">
<span class="<#ERROR name='ERRORReadingRoomID'>">
<select class="custom-select mr-sm-2" id="ReadingRoomID" name="ReadingRoomID"
data-persisted-value="<#PARAM name='ReadingRoomID'>" size="1" required></select>
Use the code above to mark the Reading Room dropdown as required on the following web pages:
- EADRequest.html (if your appointment scheduling fields are hardcoded in this file) OR include_appointment_info_ead.html (if your appointment scheduling fields are not hardcoded in this file and were implemented on EADRequest.html using a separate include file)