2018/04 Release notes

30 April

Release: 2018.13

  • Custom Properties
    • Custom properties are now available in the Blogs module for blog posts
    • It is now possible to set values for custom properties from the front-end, where a context module supports it (e.g. blog posts)
  • Hooks
    • New Quote Expiry Event which allows to trigger a workflow for a quote N number of days before it expires.
    • Template selection UI now supports sub-directories, which helps to organise the templates.
  • e-Commerce
    • Fixed an issue with Converge payment gateway where address was too long
    • Fixed an issue with class loader when restoring cart2 from the session
  • Product Catalogue
    • Invalid product/category URL now redirected to 404 page with correct HTTP Status code 
  • Mailer
    • Improved error capturing and reporting for SendGrid
  • Various updates and bug fixes for TeamFlow
  • Development Environment
    • The same hook can now be run safely from different environments

23 April

Release: 2018.12

  • Custom Properties
    • Custom properties allow to store arbitrary text data. Unlike custom fields, custom property values are stored in the same table as the entity itself and therefore are always available and do not cause any processing overhead. For further details refer to the documentation.
  • Hooks
    • Added delayed execution for some events to prevent race conditions
  • Discounts
    • It is now possible to remove all discounts restored from the saved quote.
      Call /index.php?action=prodcataloguecart&form_name=cart3&form_action=clear_discounts&content_type=json (new standard JSON response; recommended).
      Or /index.php?action=prodcataloguecart&form_name=cart3&form_action=clear_discounts&json=1 (old JSON response; not recommended)
    • Fixed a bug with improper comparison of decimal numbers
    • Fixed a bug showing zero on user conditions
  • Users
    • It is now possible to check if e-mail address has already been used by a user (e.g. with AJAX request). Include the check field into the request with the value of 1.
  • e-Commerce
    • Cart will now return "itemCount" in preview for any action. This number includes all items ( products/bundles * quantity) in the cart currently.
  • Product Catalogue
    • Fixed a bug with cache invalidation on category option action.
    • Fixed a bug with copying products to different categories in the same centre.
  • Routing
    • Fixed an issue with caching
  • URL Rewrites
    • Fixed an issue with escaping of backslashes.
  • Development Environment
    • The error messages are now being sent directly to Graylog in JSON format bypassing Apache error handler. The l() function now has a second argument $tag which can be used to tag user errors.  

16 April

Release: 2018.11

  • Hooks
    • Various improvements for UI
    • Various fixes of minor issues
  • Registration
    • Added AJAX support for users login
  • Deployments
    • Fixed an issue with CDN caching
  • Core
    • Fixed an issue with late session registering
    • Optimised the order of loading of the system components
  • Product Catalogue
    • It is now possible to copy bundles within the same centre or to a different centre
  • Discounts
    • Fixed a bug with the "Final" switch

9 April

Release: 2018.10

  • Deployment
    • A new centre option "secure-deployment" allows to implement two-factor authorisation workflow when deploying changes through the version control system. When this option is enabled, a super-user or administrator needs to login into the DXP and click the button to deploy the changes.
  • Documents
    • File uploads from the front-end now support AJAX
  • Hooks
    • The $centre object is now always available in all hook action. This object now has getMetaData() method which allows to retrieve centre-specific variables set up in the DXP. The use of this feature can make the templates used in hooks module more brand agnostic. A list of all standard objects available to hooks is here.
    • Two new events are now available: "VCS Commit" and "VCS Deploy". A common use case for this is to send notifications when a change is pushed or when deploy has occurred. 
    • Fixed a bug with = character in REST HTTP Request headers 
    • A great number of UX enhancements in Hooks Run History 
      • The default log history view is now a summary by date. The total number of executed batches is shown for each day, along with the total number of successfully executed batches and failed batches. Every number on the screen is clickable and drills down to the detailed view for the day.
      • The detailed view for the day allows to filter log entries by status and Event ID. Event ID is a unique identifier of the main object associated with the event (e.g. Order Id, User ID, etc.).
      • The detailed view for the day now allows bulk re-run action. You can tick the batches you would like to re-run (or toggle "select all") and re-run them at once.
      • When "Run Again" button is clicked in log entry detailed view, the modal window is no longer closed. Also, the "Refresh" button was added to have a better control over the execution status of the batch.
      • Log entry detailed view now provides a tree view of all the files generated during the execution. This includes files intentionally generated with "Create File" action, as well as the dumps of all raw HTTP requests and responses generated with "REST Request" actions. Also, JSON dumps of some objects can be found in "stored_objects" directory. Clicking on a file name displays its content (with limited syntax highlighting). It is also possible to download the files.  
  • Core
    • Fixed a bug with Regionalisation data loaded out of order 
    • Fixed an issue with invalid characters in image names when uploaded via drop zone
    • Fixed various UI issues across multiple modules in the DXP
  • WYSIWYG editor
    • An image can now have a caption
  • Site Maintenance
    • Fixed a bug with adding/removing the "owner" role for centre users
  • Development Environment
    • A new PHP error handler is implemented. Access and error logs are now available through Graylog (VPN connection required)
  • e-Commerce
    • Fixed a bug with multiple e-mail notifications were sent 
  • Blogs
    • Fixed an issue with blank date fields in blogpost list (DXP)