MySource Matrix Developer

Main Content

MySource Matrix Developer Newsletter Issue 31
Friday 8th July 2005

covers versions 3.4.4 stable, 3.6.0 RC1, 3.7.0 development

News

Versions 3.6.0 RC1 and 3.4.4 Released

New versions of MySource Matrix were released on the web site this week, the first in 3 months. A big thank you to all the developers for the huge number of bugs that managed to get fixed Monday morning and to Marcus for helping with the release.

Backup and Clean Scripts Moved

The backup.sh and clean.sh scripts used to be located in the root MySource Matrix directory. The clean.sh script was particularly a problem because it would reinstall your system without warning.

In the 3.7.0 development version, the clean.sh script has now be moved into MYSOURCE_ROOT/scripts/dev and the backup.sh script has been moved into the MYSOURCE_ROOT/scripts directory.

New URL Tester in HTML Form

Developers should be aware that a new widget has been added to html_form.inc that allows you to print and process an interface for entering a URL. The url_tester() function allows you to print an interface where a user can enter a URL by selecting the protocol and entering the URL and then test that it is valid through the click of a button.

Note that you can also use the new URL asset attribute if you are creating new asset types, which itself uses the html_form.inc functions.

Static Site URL Testers Wanted

Avi would appreciate it if more people could enable the new static URL option so that it gets lots of testing in preparation for potential back-porting into Matrix v3.6.0. There are two ways to test this:

1. Install a second web server (I recommend thttpd) on an alternative port that points to your data/public location. You then configure the static URL as http://sever:port and set the document root for that web server to MATRIX_ROOT/data/public. This is my preferred option.

2. Alternatively, create a new virtual host or alias in Apache and set the static root to use that. For example, create an alias "/__static" pointing to MATRIX_ROOT/data/public and set the static URL to http://server/__static

If you are willing to do this, you'd need to make file assets live with public read to ensure they get the correct static URL (and revert back to the right Matrix URL if they drop permission/status). Could you also let Avi know if you are running with static URLs and how it works for you.

New Features

Static Site URL

Added to: 3.7.0 development

A new system configuration option has been added to MySource Matrix that allows you to define a static URL for the system. The static URL can be used to allow alternate web servers to serve static content located in the data/public directory of MySource Matrix.

The static URL is primarily used for file assets when they go live with public read access. Instead of setting the __data URL for a file MySource Matrix will use the static URL, allowing an alternate web server to serve the files and take some strain off the main Apache web server.

This is a system-wide setting (as there is only one data/public location) and the static URL needs to point to the data/public location. You still need to configure the __data alias in Apache so that the Java applet and any JavaScript code can access that location as well.

This change should allow large sites to improve their performance by offloading some of the file serving to a dedicated static content web server, leaving Apache free to serve dynamic PHP content. After some real client testing in 3.7.0, this change may be considered for back-porting to 3.6.x.

Two Step Trash

Added to: 3.6.0 RC1, 3.7.0 development

The purge trash HIPO job has been changed to improve its performance. Previously, if an asset (or tree of assets) was both within the trash and outside of it, the purge trash HIPO would still process all those assets one by one. Now, the purge trash HIPO first removes all assets that exist outside of the trash before processing the asset it needs to delete.

Replace Text WYSIWYG Tool Separated

Added to: 3.7.0 development

The Replace Text WYSIWYG button is no longer attached to the Format Text WYSIWYG plugin. Previously, removing Format Text from the list of WYSIWYG plugins did not allow you to use the Replace Text button to clean the HTML in the WYSIWYG editor. The Replace Text button now has its own plugin.

Asset Builder Enforces Permissions

Added to: 3.7.0 development

The asset builder has never checked permissions when creating assets. It has always allowed any user (even if they are not logged in) to create an asset where the asset builder has been configured to do so. There is now an option in the asset builder that allows you to disable this lowering of permissions and enforce standard asset creation and linking permissions.

The option is actually described in the administration interface as allowing permissions to be ignored, but it has been enabled by default on all asset builders to maintain backwards compatibility and expected behavior.

Auto Login with PHP Auth Vars

Added to: 3.7.0 development

There is a new configuration option that allows for the use of existing PHP authentication credentials to be used for an attempted login before displaying the MySource Matrix login box. If a user has visited another PHP application on the same domain as MySource Matrix during their session and has logged into that application using HTTP authentication initiated by the PHP script, MySource Matrix will have access to the username and password the user entered and can attempt to log them in automatically.

This option, as well as the existing ALLOW_HTTP_LOGIN option, can be configured on the System Configuration screen in the administration interface.

Show Table Borders WYSIWYG Plugin

Added to: 3.7.0 development

The WYSIWYG now has an additional plugin that allows the borders of tables to be shown even if the table does not have a border. This allows for easier editing of tables without borders.

Associated Design Files Now Correct Type

Added to: 3.7.0 development

Previously, files uploaded as associated design files were created as File assets within MySource Matrix. Designs now pick the most appropriate asset type when creating associated files. So CSS files are uploaded as MySource Matrix Text File assets and images are uploaded as Image assets.

This allows for asset specific functionality, such as inline editing of text files and image editing for images, to work on associated design files. It also allows you to embed a design image into the contents of other assets.

Planned Development

Simple Form

To be added to : 3.7.0
Estimated start date: 11th July 2005
Estimated end date : 15th July 2005

Most developers are aware of how bloated form_email is, causing problems with the custom form page because so much functionality is outside of the control of custom form. Enter simple_form! This new asset type will provide form functionality in the same way as bodycopy assets provide HTML editing. The simple_form will not be a page on its own but will rather be used by page assets (such as custom form or search page) to provide a common interface for creating forms within pages.

Ecommerce Checkout Form

To be added to : 3.7.0
Estimated start date: 11th July 2005
Estimated end date : 28th July 2005

The ecommerce functionality of MySource Matrix is quite limited at the moment. The new ecommerce checkout form will change that by allowing for quite complex ecommerce systems to be created. It will provide an interface where web site visitors can pay for and order the products they have added to their shopping cart. It will allow for delivery and payment methods to be plugged in, allowing for non-traditional ecommerce systems to be created.

Listing Engine Form Redirect

To be added to : 3.7.0
Estimated start date: already in development
Estimated end date : 15th July 2005

Listing Engine Selections

To be added to : 3.7.0
Estimated start date: already in development
Estimated end date : 15th July 2005

New Search Indexing and Weightings

To be added to : 3.7.0
Estimated start date: already in development
Estimated end date : 15th July 2005

Upgrading

3.5.0 Beta

Run step_02.php: no
Run step_03.php: no
Run compile_locale.php: yes

Additional queries: No additional queries are required for upgrades.

Additional comments: No additional upgrade steps are required.

3.7.0 Development

Run step_02.php: no
Run step_03.php: yes
Run compile_locale.php: yes

Additional queries: No additional queries are required for upgrades.

Additional comments: No additional upgrade steps are required.

New Bugs Added To Bug Tracker

Bug ID Stable Beta Dev Description
751 Y Y Y menus not printing settings class values
752 Y Y Y Problems with custom form submission viewing and exporting
753 N Y Y Cannot upload custom associated files
754 N N Y Collation order in PostgreSQL sometimes breaks when special characters are ignored in the sort order
757 Y N N Asset Listing in Random mode is being cached
758 N Y Y Padding for link tree IDs uses 0 instead of first assigned character in link tree character array
761 N N N Cloned assets slow to show in asset map not confirmed
762 N N N Auto refresh interrupts move clone etc not confirmed
764 N Y Y Freestyling permissions HIPO doesn t cascade
767 N N N Asset Map graphics slow when dragging items not confirmed
768 N N N Inconsistency in Date drop downs not confirmed
769 N


Notes:

Bug #252 (Limited number of customisations) was submitted by adamlast on the 8th November 2004 but has now been marked as Will Not Fix because this is a known limitation of the design system that would require a complete design system rewrite.

Bug #500 (WYSIWYG: White box over editor on Mac) as submitted by Chris N on the 2nd of May but was marked as Can Not Replicate as no developers are able to replicate this problem on their own systems.

Bug #593 (File upload - character case issue) was submitted by Mark W on the 21st of April but was marked as Can Not Replicate as no developers are able to replicate this problem on their own systems.

Bug #756 (WYSIWYG changes URLs) was submitted by Richard but was marked as Can Not Replicate. Richard has found a workaround for his problem as well.

Bug #765 (Asset Listing - New divs not inheriting status) was submitted by Richard but was marked as a duplicate of feature request #397 (Wrong dependent children status).

Bug #766 (Can change status without locking) was submitted by Richard but was marked as not being a bug because this is expected behavior.

New Feature Requests Added To Bug Tracker

Bug ID Description
755 Asset List Nothing found option
759 What s New Asset body copy for no assets found
760 Sites should get a static file URL to offload binary file serving
763 Purge assets log

Bugs Fixed In The Bug Tracker

Bug ID Stable Beta Dev Description
83 Y Y Y Cannot have System Root URL with capital letters
203 Y Y Y LDAP tree does not expand child branches reliably
332 Y Y Y Form cloning issues form sections not cloned along with form
361 Y Y Y Can t set an entire row as header cells
369 Y Y Y Logging in with low access sometimes logs you straight back out
494 Y Y Y design_customisation asset not found until customised
538 Y Y Y Cloning a Page Asset Listing Bodycopy Problem
611 N Y Y Error adding CSS file to design
667 Y Y Y Custom Form bodycopies not cloned with form
676 N Y Y search_page crashes during step_03
680 Y Y Y WYSIWYG embed movie plugin only allows internal URLs
704 N Y Y UTF 8 chars in asset names not displaying correctly
726 N N Y Constant Button with print no generates PHP Notice
741 Y N N Design Code length not enforced
751 Y Y Y menus not printing settings class values
752 Y Y Y Problems with custom form submission viewing and exporting
753 N Y Y Cannot upload custom associated files
757 Y N N Asset Listing in Random mode is being cached
758 N Y Y Padding for link tree IDs uses 0 instead of first assigned character in link tree character array

Add a Comment

You must click here to log in before posting comments.

View Comments

There are currently no comments for this newsletter.