MySource Matrix Developer

Main Content

MySource Matrix Developer Newsletter Issue 185
Friday 4th July 2008

covers versions 3.16.9 stable, 3.18.2 stable, 3.19.0 development

News

New Matrix Releases Due Monday

The next release of MySource Matrix will be this coming Monday (7th July) when versions 3.16.10 and 3.18.3 are made available.

New Features

Paint Layouts Overhaul

Added to: 3.19.0 development, 3.18.3 stable

The way Paint Layouts work in general has been overhauled quite radically. The "Lookup Values" screen has been renamed "Lookup Settings". The changes to this screen in summary:

  • Paint Layouts can now be applied on a per-asset basis, rather than just per URL. Paint Layouts set this way will apply across all URLs of the asset. Per-URL Paint Layout settings are still available.
  • Override Paint Layouts can also be applied at either a per-asset or per-URL level, working similar to designs.

When evaluating which Paint Layout asset to display, the following rules apply:

  • URL-based paint layouts have priority over asset-based ones. Where no URL-based paint layouts exist for the current URL, the asset-based one will be used instead.
  • All Override layouts take priority over all normal (inherited) layouts. For instance, if you have an Override Paint Layout at an asset level but only an inherited Paint Layout at a URL level, then the Override asset-level Paint Layout takes priority.
Set Paint Layout Trigger Action

Added to: 3.19.0 development, 3.18.3 stable

Complementing the above development, this new trigger action allows you to set an asset-level Paint Layout (both standard and Override) on an asset that fires a trigger. Dynamic parameters can be used to select an alternative asset ID for either one.

Set Paint Layouts on Built Assets

Added to: 3.19.0 development, 3.18.3 stable

Also complementing the above development, asset-based Paint Layouts can now be set on assets created through an Asset Builder.

Pass Extra GET Variables to Nested Content

Added to: 3.19.0 development, 3.18.3 stable

This new functionality allows you to pass extra GET variables to an asset being included via Nest Content. The values can include global keywords and keywords of the asset you are nesting (using %nested_asset_*% instead of %asset_*%). These extra keywords will overwrite GET variables passed through a query string, but will only have the lifetime of that nesting.

GET Variables Available as Global Keyword

Added to: 3.19.0 development, 3.18.3 stable

Complimenting the above development, GET variables are now available as global keywords using the %globals_get_*% format. Only scalar variables are able to be used as glopbal keywords; arrays are not supported.

Remote Content: Global Keywords Now Supported in URL

Added to: 3.19.0 development, 3.18.3 stable

Complimenting both these above developments, the Remote Content asset now accepts global keywords in the URL. Caching of output has changed slightly to better handle the possibility for dynamic URLs.

Set "Not Found" Page for Archived Assets

Added to: 3.19.0 development, 3.18.3 stable

This is a new "Special Page" option added to Site assets. It is triggered when a user accesses an asset with "Archived" status, without the appropriate read permissions. (Due to it being archived, users actually need write permissions to get read permission too.)

The page behaves exactly like the "Not Found" special page option, in that it will return a HTTP 404 status code.

Schedule Bulkmail Job Script

Added to: 3.19.0 development, 3.18.3 stable

This new command-line script, located in the root of the Bulkmail package, lets you queue up a Bulkmail Job to run immediately. This can be used by a Cron system outside of Matrix to schedule a time to send a Bulkmail Job. Apart from the system root, the script accepts one parameter: the asset ID of the Bulkmail Job to queue. It will only run if it is not already running (ie. status is set to "Under Construction").

Remove Metadata Schema Trigger Action

Added to: 3.19.0 development, 3.18.3 stable

This new trigger action will remove either a single metadata schema (if it exists) or all metadata schemas from the asset that fired the trigger.

Cache Manager: Browser Cache Expiry

Added to: 3.19.0 development, 3.18.3 stable, 3.16.10 stable

This option allows you to set a different period for requesting the browser cache the output of a Matrix asset, to the period that Matrix itself caches things using the Cache Manager. Specified in seconds. If omitted or zero (which is the default), these values are the same.

Prevent Cascade of Schemas and Permissions

Added to: 3.18.3 stable

Now added to 3.18.3 stable after being added to 3.19.0 development two weeks ago. See Newsletter #183 for details.

Workflow Approval and Workflow Rejection Trigger Events

Added to: 3.18.3 stable

Now added to 3.18.3 stable after being inadvertently omitted from the 3.18.x branch. See Newsletter #168 for details.

Planned Development

No new generic features are currently scheduled for development.

Upgrading

3.19.0 Development

Additional queries: No additional queries are required for upgrades.

Additional comments: No additional upgrade steps are required.

3.18.3 Stable

Additional queries:

Additional queries are required as part of the above "Prevent Cascade" development. See below.

Additional comments: 

  • Disable rollback on your system BEFORE UPDATING YOUR CODE. If you need help with this, please consult the Rollback Management Guide on the MySource Matrix web site.
  • Run the following queries on your database:
    DROP VIEW sq_vw_ast_perm;
    DROP VIEW sq_rb_vw_ast_perm;
    ALTER TABLE sq_ast_perm ADD COLUMN cascades CHAR(1) NOT NULL DEFAULT '1';
    ALTER TABLE sq_ast_mdata ADD COLUMN cascades CHAR(1) NOT NULL DEFAULT '1';
    ALTER TABLE sq_ast_wflow ADD COLUMN cascades CHAR(1) NOT NULL DEFAULT '1';
    ALTER TABLE sq_rb_ast_perm ADD COLUMN cascades CHAR(1) NOT NULL DEFAULT '1';
    ALTER TABLE sq_rb_ast_mdata ADD COLUMN cascades CHAR(1) NOT NULL DEFAULT '1';
    ALTER TABLE sq_rb_ast_wflow ADD COLUMN cascades CHAR(1) NOT NULL DEFAULT '1';
    (NB: The dropping of views is required since views cannot be modified to change the number of columns they contain, at least in PostgreSQL. They will be regenerated later.)
  • Enable rollback. Again, consult the Rollback Management Guide if you don't know how to do this.
  • Run step_02.php. This will re-create the dropped views, and also the new triggers for these tables so they reflect the new column.
  • Continue with your normal upgrade procedure.

New Bugs Added To Bug Tracker

Bug ID 3.16.x 3.18.x Dev Description
3107 N Y Y Old override values applied to assets remain in the lookup values table after URL has changed
3108 N Y Y Asset Map not loading after upgrade to 3.18.1 / 3.18.2
3112 N Y Y Asset chooser/picker display error
3113 N Y Y Asset Listing generates DB error when listing "Up the Tree" when viewed by Public User
Notes:

The following bugs have been marked Can Not Replicate this week, due to not being able to be replicated by a developer:

- Bug #3070, "Upcoming Events List does not list any events", reported by petersheppard on 10th June.

- Bug #3086, "Search Manager: Asset Tree Weight and new assets", reported by nnhubbard on 18th June.

- Bug #3097, "Asset Builder not showing", reported by nickobec on 24th June; closed due to lack of feedback.

New Feature Requests Added To Bug Tracker

Bug ID Description
3109 Data source option to connect to local matrix DB
3110 Prevent Matrix caching on sub areas of a site
3111 Asset listing page does not parse keywords if %asset_listing% is removed
3114 Account Manager Extension

Bugs Fixed In The Bug Tracker

Bug ID 3.16.x 3.18.x Dev Description
3099 Y Y Y Asset Builder required attributes
3105 Y N N Unknown issue when using script to add urls
3107 N Y Y Old override values applied to assets remain in the lookup values table after URL has changed
3108 N Y Y Asset Map not loading after upgrade to 3.18.1 / 3.18.2
Add a Comment

You must click here to log in before posting comments.

View Comments

There are currently no comments for this newsletter.