Squiz Matrix Newsletter - December 2015

04 Dec

Welcome to the Squiz Matrix Newsletter, a monthly look at all the latest and greatest Matrix news, direct to you from our Squiz Labs development team.

We've been extremely busy over the last couple of months, so much so that our Monthly Newsletter has had to take a step down on the priority of our list of things to do. We do apologise for the lack of news lately, but it only means this edition is jammed packed with things to catch up on.

Enough talk, grab a coffee and read on for the latest news surrounding Squiz Matrix.

SQUIZ MATRIX 5.3 RELEASED

Last month saw the release of the long anticipated and awaited release of Squiz Matrix 5.3. As the fourth release in the 5.X series of Matrix, this expansion sees some very innovative and powerful new features be included alongside the Matrix core offering.

Let's examine some of these features as well as the benefits they will bring to content authors and website implementers in their day-to-day creation, publishing and management of information and web content.

Content Templates

Content Templates is a powerful new feature that allows you to combine Paint Layouts, Metadata Schemas, and Simple Edit Layouts and apply them to content containers as templates. These content templates can be used by editors on the Contents screen of Standard Page assets, taking care of the presentation,
data storage, and editing interface for the containers they are applied.

This new feature should allow you to create unique and tailored front-end content as well as custom user intuitive and friendly editing experiences that are targeted for specific implementation requirements and solutions.

As part of our testing we've been able to come up a variety of different template ideas using these new features, such as:

A tabbed content template, allowing users to create content blocks in tabs easily with flexibility over how many tabs to create.

A template for embedding Google Maps within content with auto-complete street address searching for the default map marker position.

A column content template allowing for easy creation and management of content in column boxes with an optional background image.

Structured content can also be easy to manage and edit using a custom editing interface for all field values similar to that of the metadata screen.

These are, of course, just the tip of the iceberg. We envision a multitude of potential template ideas, really, the possibilities are endless.

With a growing awareness of the power of high quality content, these container templates should provide your editors with more freedom when creating content, taking away any worry of initial HTML creation and element styling, as well as the overheads for initial setup and training.

WYSIWYG Commenting

Inline WYSIWYG comments allows you to add comments to content in a WYSIWYG content container. These comments can then be replied to by other users for easier collaboration on content authoring.

Comments and threads can be deleted by the user who created them and existing comments can be edited which will also track the time-stamp of the edit.

Each comment thread can be marked as resolved at which point they become locked down for further editing until the thread is unresolved again. A pagination tool is also available to quickly navigate through each comment thread and see the associated content.

A new keyword (%asset_attribute_comments%) can also be used to extract all comment data from a particular page into JSON format.

GIT File Bridge

Git is a widely used version control system for software development. It is a distributed revision control system with an emphasis on speed, data integrity, and support for distributed, non-linear workflows.

The Git File Bridge asset enables you to integrate static file assets from a Git repository directly into the Matrix file system.

Once a connection between a Git repository and Matrix has been established, Matrix will load all of the files from the external repository into its file system and represent each file in the asset tree.

You can also set up Git Hooks in your Git system in order to automatically update the files on the Matrix server every time the Git repository is updated with events such as a push or commit.

WYSIWYG Class Picker

The Edit+ WYSIWYG Editor has been enhanced with a class picker. Editors can now easily style up their content with a simple select list of pre-defined styles created for them specifically to work with the site design they are publishing content within.

Classes can be shared between the edit mode and preview so that editors can easily see what their content with applied classes will look like directly within the editing interface.

Classes are applied on the Design assets in the back end and are automatically cascaded down to customisations. Control can be given as well on what HTML elements certain classes can be applied to.

Asset Editor

This feature is actually a powerful extension to the already versatile and useful Asset Builder Page.

Previously you could only create new assets with the Asset Builder, leaving you to have to create additional pages and screens for exposing custom editing interfaces for the assets users were building.

Similar to the Account Manager Page, this enhancement now lets you edit assets via the Asset Builder as well as create them. You can create custom editing interfaces for each type of asset and keywords are available for things like success and error messages when an edit has been performed.

Updated Edit+ Interface

The Edit+ interface has had a bit of a facelift to further modernise and improve the user experience. A lighter theme has now been applied and various minor improvements to editing elements have been tweaked and improved.

The Metadata screen in particular has received some attention in terms of spacing, layout, and consistency.

Multiple Related Asset Metadata Field

There is now a setting where you enter a number value of how many related asset selections you want to allow for the field. Setting this to anything higher than 1 will automatically turn it into a multi asset select picker on the metadata entry screen.

When multiple assets are selected by this field, the output is printed in a JSON structure that can also be turned into XML or CSV using keyword modifiers.

In Edit+, each related asset selection can have its order changed via the easy drag and drop interface tools.

Trigger Logs

Logging of changes have been added to the Trigger Assets in the Admin Interface. System Administrators of a Matrix instance can now easily review all changes made to a Trigger and more importantly, which user made the changes, to help properly audit these power assets.

HPRM 8 Connector

A new dedicated connector and Saved Search asset have been created for connecting a HPRM 8 system to Matrix. This connector and functionality is essentially the same as the existing TRIM connector in Matrix, but is powered off the new REST API that is available in HPRM.

LDAP With SAML Authentication

Both LDAP and SAML authentication has been available in Matrix for a long time. Now these two powerful and popular authentication mechanisms can work together to let your users login to Matrix using external user accounts through a SAML login screen, and managed within Matrix as LDAP user assets.

Braintree Payment Gateway

A new payment gateway system has been added to Matrix to increase the E-Commerce implementation and integration capabilities. Braintree, a PayPayl owned company, specialises in payment solutions for websites to enable fast and easy payment processing online.

This payment gateway can be connected with the standard E-Commerce functionality in Matrix such as the E-Commerce Form and Shopping Cart assets.

LDAP Login Using Email

The LDAP Bridge allows Matrix to display the structure of your LDAP directory in the asset map. You can browse your directory from Squiz Matrix and use the users and groups just as if they were created within Squiz Matrix
itself. You can assign permissions for LDAP users and groups, and apply security restrictions to them to limit their interaction with the administration interfaces.

A small enhancement has been added to the LDAP Bridge to let users login using their email address rather than their usernames.

Parse Push Notification Trigger Action

A new Trigger Action has been added to Matrix that can connect to the Parse Push Notification API to send updates from your website into users device notification systems for things like tablets and smart phones.

With the release of 5.3 on November 2nd 2015, it also means we saw our last version of the 5.1 branch released on the same day (5.1.15.0). It also means that the 5.2
branch has now switched over into a support branch meaning it will only contain bug fixes and security enhancements in all its future releases.

WHAT ELSE IS NEW IN OUR LATEST RELEASES?

It's not only Matrix 5.3 that we've been celebrating. Since our last newsletter, several other enhancements have been added into the various Matrix version releases. Click on the links below to view the release notes for each version:

Better Error Handling For REST Calls

Better error handling and reporting has now been added to REST web service calls for things like the Trigger Action and REST Resource asset.

If a REST call fails, you can print and check the error message and code that was returned as part of the failed web service call. These error values are part of the REST.response JSON data and can be accessed and printed within the JavaScript execution code:

print(_REST.response.error);
print(_REST.response.error_code;

Introduced in version 5.2.7.7

Ability to Create Children Under Assets in Workflow

When an asset is in workflow, all of its attributes and metadata are locked down while the asset's status is in "Up For Review" or "Pending Approval". This is to ensure no data is changed while the asset is in a review state.

This however also meant that the asset's linking information was locked down, and in turn meant that no new child assets could get created under it. This minor enhancement now removes this restriction.

Introduced in version 5.2.7.7

Logging of Changes on File Assets

A new type of logging has been added for File based assets called "file.updated". This log will track changes made to a file and will allow you to download the file at any specific point in time of when it was updated. This will especially be useful for reverting accidental overwritten text based files
such as CSS and JS.

XPath support for tag name extraction on XML Datasource asset

When selecting with tag names to use to extract values from on an XML Datasource asset, you can now use the XPath syntax to extract specific tags that share the same names as tags on other levels of the XML structure. For example, if your XML structure looks like this:

Dynamic Keyword Support for Start Position Setting on Listing Assets

Similar to the "Assets Per Page" setting on listing assets, the "Start Position" setting now supports dynamic keywords as the setting value. For example, passing a URL parameter of "start=3" to an asset listing and setting the "Start Position" value to %globals_get_start%,
will make the asset listing start the list at position 3.

Introduced in version 5.3.1.0

OAuth2 2-Legged Authentication

OAuth2 2-legged authentication has now been added as a new authentication method within Squiz Matrix. This is similar to the already existing OAuth2 3-legged authentication where user needs to be redirected to another website server to login and authenticate the connection.

This new 2-legged method inherits current OAuth2 functionality but doesn't require any redirection on the front end, Matrix will instead work in background to grab the Access Token directly from the end point using server side interaction calls.

Update File Contents JS API Function

A new JS API function has been added that allows you to update the contents of a file by passing the file data as a base64 encoded string. This is particularly useful when creating front-end web apps that let you create and update file assets such as images without the need to use asset builders or
a simple edit layout.

New Keyword Modifiers for base64url Decoding and Encoding

A couple of new keyword modifiers have been added to enable encoding and decoding of strings into base64url format. This is similar to the already existing base64 keyword modifiers, except they encode the string slightly differently to cater for use in URL implementations in order to properly escape
URL sensitive characters.

One example where this is required is when integrating with the Google Gmail API. A ":no_pad" argument can also be passed to strip whites space characters from the end of the string.

Example where the value is "foo bar":

%asset_name^base64url_encode% => Zm9vIGJhcg

Introduced in version 5.3.1.0

USER MANUAL LIBRARY MOVING TO MATRIX

You may not be aware of this, but for the entirety of their lifetime, the User Manuals Website for Matrix has been running on Squiz CMS. This is a smaller based Web CMS built and developed by Squiz Labs which is no longer active in its development.

While it has served us well as a basic CMS that allows us to edit and create pages quickly with basic site functionality, we now have bigger and better plans for the Manuals, which means we need to look elsewhere for a system that is able to support it. The obvious solution is of course, Matrix!

Subsequently, with this migration already in motion, the plan is to have the Manual's Website fully relocated 'like-for-like' to a Squiz Matrix platform in the next couple of weeks. When this has been completed and the migration is live, we can start working on all the new improvements we have in store for the site.

Stay tuned for further updates and keep an eye out for changes and improvements coming to the site over the next few months.

INTERNET EXPLORER CHANGING SUPPORT

Microsoft has announced that support for older versions of Internet Explorer ends on January 12, 2016.

"Beginning January 12, 2016, only the most current version of Internet Explorer available for a supported operating system will receive technical supports and security updates. Internet Explorer 11 is the last version of Internet Explorer, and will continue to receive security updates, compatibility fixes, and technical support on Windows 7, Windows 8.1, and Windows 10."

This also means that the next big release of Matrix (5.4, scheduled for start of Q2 2016) will not be supported in IE8, IE9, and IE10. All other existing browsers will still be supported with the addition of Microsoft Edge.

This will hugely impact the development and testing in Matrix for new features that are getting built as we can build tools and improvements that solely rely on new and powerful web browser technology.

NEW SUBSCRIPTION SERVICE COMING SOON

In order to ensure you always get the latest news regarding Squiz Matrix and Squiz Labs products in general, we have decided to start a brand new email subscription service!

This will be an email newsletter containing updates and news on all Squiz Labs product development. Never miss a release note, bug fix, minor enhancement, newsletter, or announcement again by getting everything new about Squiz Labs products directly in your email inbox.

HAPPY HOLIDAYS

Well that's it for another cracking year of Squiz Matrix development news. This will be the last Squiz Matrix newsletter edition for the year and we'll be back next year bigger and better.

Stay tuned for an end of year Squiz Labs post where we look back and recap all the highlights of the year that was 2015.

Until then, from the Squiz Matrix team we wish you all a Merry Christmas and a Happy New Year!

Squiz Labs

R & D division of Squiz Pty Ltd

Open source web experience management solutions

Squiz Labs is the research and development division of Squiz, the company behind the Squiz Suite of web experience management and development tools.

Our PHP and JavaScript developers are responsible for producing innovative enterprise-quality software while our interface designers and testing team ensure our products both look great and are easy to use.