ADF Release Notes v2.4

Overview

The Application Development Framework (ADF) version 2.4 release contains enhancements and bug fixes to core ADF 2.3.1 functionality.

Version Compatibility

This version of the ADF is compatible with CommonSpot 10.0.x, 10.5.x, and 10.6.x


If your site is running CommonSpot 10 or greater and is using a previous build of ADF v2.x, please upgrade to the release version of ADF 2.4! If you are upgrading to CommonSpot 10 or greater and have ADF 1.8.x or older installed, at least ADF 2.0 is required, but upgrading to ADF 2.4 is recommended.


ADF 1.8.x and older versions of the ADF are not compatible with CommonSpot 10.x. Please note if your site is running CommonSpot 9 or older you will need to use the ADF 1.8.1 release or 1.8.2 development builds.

Field Type CFCs

CommonSpot 10 and above, requires that all Custom Field Type Render modules be converted to be a CFC versus a CFM module. See the ADF 2.0 release notes for more information regarding CFC render modules built for the ADF 2.x releases.

Resource Loading

CommonSpot 10 introduces a new Resource Loading Framework to help efficiently load JavaScript and CSS resources. See the ADF 2.0 release notes for more information regarding using CommonSpot Resource Loading with ADF 2.x releases.


For detailed information about the Resource Loading Framework, see the CommonSpot Developer's Guide.

Installation/Upgrade

For detailed instructions for installing the ADF, see the ADF Installation Guide.


For detailed instructions for upgrading from a previous version of the ADF, see the ADF v2.4 Upgrade Guide.

If you are upgrading from an earlier release, we strongly recommend that you also read the following:

2.0.0 Release Notes

2.0.1 Release Notes

2.3.0 Release Notes

2.3.1 Release Notes

Previous ADF version Release Notes

Notable Enhancements

The ADF 2.4 release contains the following significant enhancements.

Custom Field Types

  • All Applicable CFTs
    • Updated loading image tags to have an ALT attribute for accessibility
  • CE Form Select
    • Added Simple Forms to the list of Custom Elements that are listed
  • Custom Element DataManager
    • Updated the code that renders the selected Display Column order to render the order properly
    • Added buildCustomFieldMap() method to allow override of field name/column labels
    • Added renderCustomJSmethods() method as a placeholder to allow appending custom JS method after the renderJSmethods() in the _render.cfc
    • Enabled real-time sorting by clicking on a column header, if a sort column was selected in the custom properties. Disable if manual drag & drop sorting is enabled
    • Added the "hideFieldLabelContainer" parameter and property option
    • Added the "renderFieldLabelAbove" parameter and property option
  • Custom Element Select
    • Added option to allow the CS Page ID (DataPageID) from the Custom Element record to be a value option
  • Datepicker
    • Added an optional Year Range property
  • DB Hierarchy Selector
    • Updated to handle more complex order by statements
  • General Chooser
    • Updated _renderChooserJS_formEditCallback() method to only refresh the side (selected or unselected) that was edited

DataSheet Modules

  • Delete_element_handler.cfm
    • Added jQuery noConflict=1 to allow jQuery late loading
  • Edit-delete-bootstrap.cfm
    • Added Bootstrap icon versions for the Datasheet Edit and Delete buttons
  • Edit-delete-fontawesome.cfm
    • Added Font Awesome icon versions for the Datasheet Edit and Delete buttons/li>

Library Components

  • ccapi
    • Added Conduit Page Pool example nodes to the CCAPI.cfm file
  • ceData
    • Updated getCEData() method to add "equals" and "notequals" query types
    • Updated the getElementFieldsByFormID() method to add an "order" parameter to allow to return the fields in the order that they are arranged in the CS UI
    • Added "skipFields" parameter to the formatDataForGceArchivePostImport() method
    • Added the getFormIDQueryFromPageID() method
    • Added the getFormIDArrayFromPageID() method
  • csData
    • Updated parseCSExtURLLinkHTML() to use parseLinksInHTML() helper method
    • Added the getMdFormIDByFormName() method
    • Added the getMdFormNameByFormID() method
  • data
    • Updated the tagValueCleanup() method to add parameters to enable removing or finding tag terminators and/or html comments
    • Added a padNumericValue method
    • Added a parseNumberWithUnits method
    • Added a "delimiter" parameter to the listInCommon() method
  • date
    • Added EpochTimeToLocalDate() method
  • fields
    • Added the getMdFieldId() method
    • Added the getMdFicFieldIdName() method
  • memCache
    • Added memory cache component library with memory cache methods
  • preSaveForm
    • Added the preSaveFormElementType() method to get the element type if can not be found in the submitted data
  • scheduler
    • Added additional job statistics to the rendered output (tasks per batch/batch delay/total batches) of the getScheduleHTML() method
  • search
    • Added custom search component and example override methods
  • taxonomy
    • Updated getTermIDs() method to to attempt to get the taxonomy id from the csTaxObj object or force the taxonomy id by using the existing "taxIDorName" parameter
  • utils
    • Added the "top" parameter to the doDump() method for limiting the rendering of large query and array data sets to the passed in value
    • Added "encodePath" parameter to the buildFullURL method
    • Added doSimpleDump() method

Third Party

  • Added Bootstrap 4.3
  • Added the Bootstrap 3.3 glyphicons as a standalone library
  • Added Font Awesome 5.9 (free) icon library
  • Added jsTree v3.3 library
  • Added the jQuery 3.4.1
  • Added jQuery Migrate 3.0.1
  • Updated the iCalendar jQuery library to allow use of font icon libraries (eg. FontAwesome 4 & 5) instead of just an image for iCal download links
  • Added the OverlayScrollbars library
  • Added the SlimScroll jQuery library
  • Added the Font Awesome plugin for the DataTables library
  • AAdded the ImagesLoaded 4.1 library

Notable Updates

The following notable updates were in this release:

Core

  • Updated the core files to log errors instead of using cfaborts which interrupt the ADF reset/loading process

Custom Script

  • ceManagement.cfm
    • Added the jQuery noConflict flag to the loadJQuery resource loading to resolve issue with Custom Script configuration dialog

Custom Fields Types

  • General Chooser
    • Updated to resolve issue with duplicate items when editing with built-in edit lightbox option
  • Custom Element DataManager
    • Updated to be compatible with the CommonSpot 10.5 post save hook data structure
    • Reconfigured the renderStandard(), renderLabelContainerStart() and renderLabelContainerEnd() methods overrides to resolve issue with the inputtype undefined error
    • Added the dataTablesAfterRenderHook_ JS hook to the custom_element_datamanager_render.cfc to allow after render specific overrides
  • Custom Element Hierarchy
    • Resolved issue with checking initially selected items buy updating the jstree call to use .on("loaded.jstree") instead of .bind("loaded.jstree")
  • Custom Element Select
    • Updated to handle the case where a display field is not defined
  • Custom Text Field
    • Added a label tag around the editOnce parameter radio buttons
  • Device Size Options
    • Updated to resolve issue with not rendering the saved values

Library Components

  • apiPage
    • Updated the createRemote() method error rendering logic
    • Updated the deleteRemote() method error handling to properly state if page delete was successfully
  • ceData
    • Updated the getFormFieldsQuery() method to use the VersionState=2 criteria to prevent creating ceData views with duplicate fields
    • Updated convertFICDataValuesToCEData() method to handle the case where the FIC_{formid}_{fieldid}_FIELDNAME keys are not in the FIC data
  • csData
    • Added the parseCSExtURLProps() method
    • Added the buildCSExtURLLink() method
    • Added the parseCSExtURLLinkHTML() method
  • data
    • Updated the “datasourceName” parameter in the verifyTableExists() method and removed the misspelled parameter. Added logic for backwards compatibility with the misspelled parameter
  • preSaveForm
    • Updated to better detect FormID values
  • log
    • Updated addLogEntry() method to handle the non-Simple cfcatch value
    • Updated the logAppend() method to use a lock around the CFFILE call
  • scheduler
    • Updated the setSchedule() method to use HTTPS if needed
    • Updated the processNextScheduleItem() method to use HTTPS if needed
    • Updated getScheduleHTML() method to remove reference to the ptProfile app
  • utils
    • Update the addTimerEvent() method to obey the request.enableADFtimerInfo flag
    • Update the renderTimerReport () method to obey the request.enableADFtimerInfo flag
    • Update the initTimer() method to obey the request.enableADFtimerInfo flag

Third Party

  • Updated the DataTables 1.10 standard library to render the column sorting icons properly

Updated ADF Applications

The following ADF applications were also updated as part of the ADF 2.4 release. Please check the release notes for these apps for details.