Creating New Request Forms

Print Friendly and PDF Follow

You can create as many new web request forms as you wish by creating new request HTML pages and designating each one as a different Document Type. For every GenericRequestX.html page that you decide to create, you also need to create a corresponding EditGenericRequestX.html page to handle the error and editing functions. If the DLL encounters a problem when the request is submitted, it jumps to the Edit page for editing. To create your custom request form, follow the guidance in each section below.

Copy an Existing Request Form

Aeon requires that the name of a custom form begins with the text "GenericRequest".

To create a custom request form, you should start by taking one of your existing Aeon request forms and saving it as a new form file named GenericRequestX.html, where the X represents a description of the request type. In this article, we will create a new request form called GenericRequestMusicScore.html as an example. To copy an existing request form:

  1. Select one of your existing Aeon request forms (for example, GenericRequestMonograph.html) and copy it to a new HTML file.
  2. Rename the copied page to GenericRequestX.html where the X represents your description of the new page. Example: GenericRequestMusicScore.html.
  3. Edit the HTML of the new page to reflect the new request type (see Add Identifier Code to the New Form below for details).
  4. Change the wording or format of the file as needed to be consistent with your existing forms and the new type of request that you are creating. Add/remove fields to the request form as needed.
  5. Create the corresponding edit form for the custom request form.

Understanding and Editing the "Switch to Photoduplication Request" Toggle Button on Default Aeon Request Forms

Beginning with Aeon 5.0, several default Aeon forms contain a "Switch to Photoduplication Request" button, which allows the user to switch to submitting a photoduplication request from the reading room request form. When this button is clicked, the user is directed to the photoduplication request form corresponding to the reading room request form from which the button was clicked (e.g., this button on GenericRequestMonograph.html will send the user to GenericRequestMonographPhotodup.html when clicked). Similarly, the default photoduplication request forms contain a "Switch to Reading Room Request"/"Switch to Published Materials Request"/"Switch to Manuscripts/Archives Request" button (the wording used varies by form), which toggles the user back to the corresponding reading room request form for that photoduplication form when clicked. The code for this button will be located near the top of the HTML file. For example, the code for this button on GenericRequestMonograph.html looks like this:

<div class="ml-auto">
<button id="SwitchToPhotoduplicationRequest"
class="btn btn-primary btn-md switchButton switch-request-form float-right"
type="button" name="switchButton" data-switchrequest-form="20"
data-switchrequest-value="GenericRequestMonographPhotodup">
Switch to Photoduplication Request
</button>
</div>

The form name set in the data-switchrequest-value attribute is where the user will be sent when the button is clicked, meaning that in this case, the user will be taken to the GenericRequestMonographPhotodup.html form to submit a photoduplication request when the button is clicked.

Similarly, the GenericRequestMonographPhotodup.html form contains a "Switch to Published Materials Request" button, which the user can use to toggle back to the GenericRequestMonograph.html form in order to submit a reading room request if needed. The code for this button on GenericRequestMonographPhotodup.html looks like this (note the form name used in the data-switchrequest-value attribute, which points the user back to the GenericRequestMonograph.html form):

<div class="ml-auto">
<button id="SwitchToDefault" class="btn btn-primary btn-md switchButton
switch-request-form float-right" type="button" name="switchButton"
data-switchrequest-form="20" data-switchrequest-value="GenericRequestMonograph">
Switch to Published Materials Request
</button>
</div>

Modifying the Switch Button on Your Custom Form

If the default Aeon form you copied to create your custom request form contains the code for the switch button, you can delete this code if you do not want users to be able to toggle to a photoduplication request from your new custom request form. If you do want users to be able to toggle between submitting a reading room request or a photoduplication request from your custom form, you can also create a new GenericRequestXPhotodup.html file by copying the default Aeon photoduplication form that corresponds to the default Aeon reading room request form you copied to create the initial custom form, following the same steps in the Copy an Existing Request Form above. You would then modify the switch button code on your custom GenericRequestX.html and GenericRequestXPhotodup.html forms to reference each other by changing the form name used in the data-switchrequest-value attribute for the buttons.

For example, if you have created a custom GenericRequestMusicScore.html file, you would first create a GenericRequestMusicScorePhotodup.html file by copying the default photoduplication form that corresponds to the reading room request form you initially copied to create the GenericRequestMusicScore.html file. You would then modify the switch button code on the GenericRequestMusicScore.html file to reference this new photoduplication file:

<div class="ml-auto">
<button id="SwitchToPhotoduplicationRequest"
class="btn btn-primary btn-md switchButton switch-request-form float-right"
type="button" name="switchButton" data-switchrequest-form="20"
data-switchrequest-value="GenericRequestMusicScorePhotodup">
Switch to Photoduplication Request
</button>
</div>

You would then change the code for the switch button on the GenericRequestMusicScorePhotodup.html file to point back to GenericRequestMusicScore.html (note that you can also change the button text from "Switch to Published Materials Request" to any different wording you want to use for the button, if necessary):

<div class="ml-auto">
<button id="SwitchToDefault"
class="btn btn-primary btn-md switchButton switch-request-form float-right"
type="button" name="switchButton" data-switchrequest-form="20"
data-switchrequest-value="GenericRequestMusicScore">
Switch to Published Materials Request
</button>
</div>

If creating a GenericRequestXPhotodup.html file, do not forget to also create a corresponding EditGenericRequestXPhotodup.html file. Note that the EditGenericRequestX.html and EditGenericRequestXPhotodup.html Edit forms should not contain any code for this switch button. 

Copy an Existing Edit Request Form

For every new request form that you decide to create, you also need to create a corresponding Edit form to handle the error and editing functions. If the DLL encounters a problem when the request is submitted, it jumps to the Edit page for editing. To create a custom Edit form:

  1. Find the corresponding Edit form for the existing Aeon request form you selected to copy for your custom request form (for example, EditGenericRequestMonograph.html) and copy it to a new HTML file. 
  2. Rename the copied page to EditGenericRequestX.html where the X represents your description of the new page. Example: EditGenericRequestMusicScore.html.
  3. Edit the HTML of the new page to reflect the new request type (see Add Identifier Code to the New Form below for details).
  4. Change the wording or format of the file as needed to be consistent with your existing forms and the new type of request that you are creating. Add/remove fields to the request form as needed.
Note: All Edit forms must include a hidden input for the TransactionNumber field. Ensure that your custom Edit form includes the following line of code near the top of the file where hidden inputs are listed:
<input type="hidden" name="TransactionNumber" 
value="<#PARAM name='TransactionNumber'>">

Add Identifier Code to the New Form

On each custom form you create, you will need to locate and modify the following lines of the HTML code to reflect the new request type:

<input type="hidden" name="AeonForm" value="GenericRequestX">
<input type="hidden" name="RequestType" value="Loan">
<input type="hidden" name="DocumentType" value="Y">
  • Again, the X in the first line of code that sets the AeonForm value is used to describe the new type of request. For the music score example, this would be set to "GenericRequestMusicScore". Note that Edit forms will need to have 'Edit' prefixed to this value, for example, this should be set to "EditGenericRequestMusicScore" on the EditGenericMusicScoreRequest.html file.
  • The Request Type in line 2 may be "Loan" as shown above or may be set to "Copy" initially, depending on which default Aeon form you copied to create the new custom request form. In specifying this value, you should first decide if the system should treat this new type of request as a reading room request or as a photoduplication request. If the request type is intended to be for photocopies, set the value to "Copy". If the request type is intended to be for a physical object accessed in the reading room, set the value to "Loan".
  • The Y in Line 3 is intended to represent the Document Type to be recorded by the system for this type of generic request. For our example, this is "Music".

After these inputs are set, you should also ensure that you change the title of the form located below the hidden inputs to reflect the new request form type. Below is an example of what the hidden inputs and title for a GenericRequestMusicScore.html file would look like:

<form action="aeon.dll" method="post" name="DefaultRequest" id="RequestForm">
<input type="hidden" name="AeonForm" value="GenericRequestMusicScore">
<input type="hidden" name="TransactionLink" value="<#PARAM name='TransactionLink'>">
<input type="hidden" name="ReferenceNumber" value="<#PARAM name='ReferenceNumber'>">
<input type="hidden" name="ItemNumber" value="<#PARAM name='ItemNumber'>">
<input type="hidden" name="RequestType" value="Loan">
<input type="hidden" name="DocumentType" value="Music">

<h2> Describe a New Music Score Request</h2>

Create the Link to the New Request Form

If using the Aeon 5.0 or later web pages, create a new link for your request form in the include_nav.html file. If using the Aeon 4.1 (or earlier) web pages, create a new link for your new request form on the Aeon Main Menu (include_menu.html page). The text can be whatever you would like, but the link should be formatted following the example for GenericRequestMusicScore below, where the value is the name of the new HTML page you've created and the text before the </a> tag is the text that will appear in the menu linking to the form:

<a href="<#ACTION action="10" form="20" value="GenericRequestMusicScore">">
Music Score</a>

The code for the link should be placed with the other request form links in this file. For example, when the music score request form link is added to the include_nav.html file, the code will look like this:

<div class="dropdown-menu" aria-labelledby="navbarNewRequest">
<a class="dropdown-item" href="<#ACTION action='10' form='21'>">Default Request</a>
<a class="dropdown-item" href="<#ACTION action='10' form='20'
value='GenericRequestMonograph'>">Monograph Request</a>
<a class="dropdown-item" href="<#ACTION action='10' form='20'
value='GenericRequestSerial'>">Serial Request</a>
<a class="dropdown-item" href="<#ACTION action='10' form='20'
value='GenericRequestManuscript'>">Manuscript/Archives Request</a>
<a class="dropdown-item" href="<#ACTION action='10' form='20'
value='GenericRequestMusicScore'>">Music Score Request</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="<#ACTION action='10'
form='23'>">Photoduplication Request</a>
</div>

Changes in the Customization Manager

Finally, if your new custom form has any required fields, you will need to add new entries for the form and its corresponding edit form to the WebFormValidationLinks table in the Aeon Customization Manager. The Form Name value for each entry should contain the name of the form (i.e., this should be set to the value you set in the AeonForm hidden input on that form when adding the new identifier code). The Rule Set used for each entry can be set to an existing rule set configured in the WebValidation table if the required fields on your custom form are covered by one of your pre-existing rule sets, or you can create a new rule set in the WebValidation table if the fields required on your new form are unique to that form. If you are using a photoduplication switch button toggle on the custom form, you should also add entries for the custom photoduplication request form and its corresponding edit form to the WebFormValidationLinks table if they contain any required fields. 

For more information on configuring these tables, see Field Validation and Required Fields.

WebFormValidationLinks table

Questions?

If this article didn’t resolve your issue, please contact Atlas Support for assistance:

Contact Support