Release 0.4.4

Operation Reflective Llama - Released February 08, 2018

This release primarily focused on a number of major organizational and infrastructure updates to improve reliability. There were also a great number of smaller UI and reliability improvements. Most of the changes in this release will be unnoticed to users but are very important to improving application stability. There are still plenty of changes that users will find helpful, though:

Infrastructure Updates

  • CMS and preview environment now maintain the same top level domain. A new ad blocking feature for Safari (Mac and iOS) prevented users from seeing the preview while editing a page.
  • Major refactor with the publishing, preview, and other asynchronous processes to improve reliability
  • Added ability to publish all objects on a site. This feature is available under site settings.
  • Publish all objects on a site by default when it is first created.
  • After successful publish operations, save a proper backup of published content
  • Improvements to the reliability of swapping site domains, including properly re-publishing updated menu items.
  • Improved system logging for better debugging information
  • Removed potentially sensitive information from "publish failed" emails
  • Improved form submission email handling and message formatting
  • Exporter can now export larger files

UI Updates

  • Reorganized the primary navigation
    • Moved All Pages and Menus to the Content group
    • All sites now default to "All Pages" when selecting a site
  • Site Settings
    • Removed "Preview Password"
    • Added "Publish All" action
    • Combined Site Settings and Templating into single dialog
    • New site now asks for "Site Name" instead of "Name"
  • Galleries
    • New galleries do not create pages by default
    • Added "default gallery template" site setting
    • Galleries can no longer be created or updated using a non-gallery template
    • Publishing a gallery auto-publishes all unpublished and modified (eg: reordered) gallery items for that gallery as well
  • Calendars
    • Fixed some styling issues with the calendar view
    • Clicking on a calendar entry in the calendar view opens the calendar entry's properties
    • Clicking on a day in the calendar opens up the "New Calendar Entry" dialog pre-filled with the date that was clicked
  • Form, Template, and Datastore Fields
    • Added additional field information to the "Show If" field options
    • After adding, updating, or removing a field, automatically close the field properties
    • Copying, deleting, and trashing nested fields at once automatically filters out any child items from the selection before completing the operation (to prevent weird "bugs" caused by selecting too many objects at once), which results in the operation completing as the user most likely expects it to in the first place.
    • When updating a group field, the field in the UI remains in the same state as it was prior to the update - no child fields are lost and the field is not collapsed.
    • Adjusted the field properties dialog to be more consistent with other property dialogs.
    • + Numerous additional UI improvements for managing fields
  • Copying
    • Copying template fields, form fields, datastore fields, and custom site settings all use the suffix "_copy" instead of "(copy)" with parenthesis so they are valid names
    • Copying a page (including during another copy operation) now uses the suffix "-copy" instead of "(copy)" so that it is a valid URL
    • Copying a template, form, datastore, or other "parent" objects properly copied all child objects - including nested children such as sub-fields of groups
    • Copying an entity also copies pages of the entity, including properly setting the default page
  • Grid Views
    • Added ability to Ctrl/Shift click while selecting objects in the grid-view dialog just like you can when not selecting objects.
    • Improved list-view display of images (moved alt text from second column to third row of first column)
    • When creating new objects while browsing a folder, the new object should include the folder by default. The same thing applies to tags, authors, templates, and other browsable objects.
  • Object Properties
    • Added ellipsis (...) for long names in tag, author, folder, page, redirect, and gallery item associations
    • Now display the full folder path in the folder list field type and the folder associations list
    • Added ability to copy GUIDs in object property dialogs on click.
  • General UI
    • Renamed "Cancel" to "Close" on all dialogs
    • Added hover effect to toolbars, icons, and grid view rows and icons
    • Changed some styles on field names
    • Updated to latest release of wysiwyg editor - includes improvements for copy/pasting and cleaning copied code
    • Login page now has browser check and shows an alert if a user's browser is not recommended
    • Added a loading screen for the manage interface
    • Updating ordering of gallery items, menu items, authors, tags, etc... marks objects as "modified"
    • Checkout information now shows a more readable relative timestamp (eg: "2 days ago")
    • Various attempts to prevent browsers from auto-filling various input fields
  • Other miscellaneous UI updates

Live Template Updates

  • Added ability to sort datastore items numerically by a custom field using the numeric_sort property.
  • HTML fields now interpret the "value" property ({{ field.value }}) - which means that it renders the contents of any <liquid-markup> tags. The "value" property is only interpreted once, however. If you would like it be interpreted every time it is referenced, you may use the "interpreted_value" property instead. If you want or need to access the un-interpreted value, you may use the "plain_value" property. Additional details are in the liquid documentation.

Bug Fixes

  • Fixed bug with the preview area in Safari which prevented users from viewing their preview site from the page editor interface.
  • Fixed 500 error on live sites after going live with a new (existing) domain, caused by duplicate Google Analytics cookies.
  • Fixed the issue where some image and document URL's had an empty GUID ("0000-0000-...") in their URL. Any files that currently have an empty GUID in their URL will continue to work properly using their old (wrong) URLs.
  • Fixed bug with field validation after changing field type
  • Fixed bug with menu item creation
  • Fixed bug where entities with parenthesis in their names were showing in the wrong place in property dialogs
  • Fixed issue where user saw "User" item in primary navigation twice. This only happened to users with access to a single site.
  • Fixed issue with purging items from the CDN after unpublishing files (javascript, stylesheets, images, and documents)
  • Fixed issue with Live Edit button on live sites. Now, only sites with an SSL certificate (https allowed or required) will be able to use the Live Edit button.
  • Fixed issue where reordered gallery items were not published unless the gallery was unpublished and then republished
  • Fixed double-UI-bug with Scheduled Publish dialog. The first bug occasionally prevented users from being able to schedule items for publishing. The second bug failed to notify them that their schedule operation failed.
  • Fixed a couple of form/template/datastore field management issues:
    1. copying/deleting/trashing nested fields would sometimes be buggy if the user selected BOTH the parent AND child items for the operation. The fix was to only copy/delete/trash the parent item(s).
    2. updating a group field would "lose" the child fields and required the dialog to be refreshed in order to display them again.
    3. copying a template, form, or datastore with group fields would fail to copy the sub-fields of those groups properly
  • Fixed WYSIWYG editor height issue in Firefox
  • Fixed annoying alerts in Firefox when using the page editor, template editor, and the quickicons
  • Fixed Firefox bug which prevented users from creating custom fields in templates
  • Fixed bug with javascript files being uploaded with a mimetype of 'octet-stream'.