MySource Matrix Developer

Main Content

MySource Matrix Developer Newsletter Issue 6
Friday 14th January 2005

covers versions 3.2.1 stable, 3.3.1 beta, 3.5.0 development

News

Changed Return Value Of Get Parents

The return value of the getParents() method in asset_manager.inc has been changed to use the same format as the getChildren() method. All developers should be aware that the getParents() method no longer returns an array of assetids, but now returns an array of assetids with type codes.

Example return value of OLD system Array('1', '23', '45')

Example return value of NEW system Array('1' => 'root_folder', '23' => 'site', '45' => 'page_standard')

The getParents() method has also been changed to accept a sort flag and a permission level, as already allowed by the getChildren() method.

MySource Matrix GD Requirement

The image resize functions of MySource Matrix have been modified to use the inbuilt PHP functions. PHP uses GD (assuming you have GD installed and compiled into PHP) to manipulate the images. The development version of MySource Matrix, therefore, now requires GD 2.0.1 or higher.

New Features

Show If Design Condition For User Agent

Added to: 3.3.1 beta, 3.5.0 development

There is a new condition for Show_If design areas called User_Agent. The user agent condition allow you to conditionally display content based on the type of browser or operating system that a site visitor is viewing the site with. The condition makes use of the user agent string provided by the web browser. Note that the user agent string can be modified on some browsers and so is not guaranteed to always accurately reflect the browser or operating system the site visitor is using.

One use of this new condition is to set the design for a site based on the browser type. The following example uses the new condition to set a low bandwidth design for Blackberry PDA users. It redirects Blackberry users, setting the design for the duration of their session.

<MySource_AREA id_name="test_blackberry" design_area="show_if"> 
    <MySource_SET name="condition" value="user_agent" />    
    <MySource_SET name="condition_user_agent" value="blackberry" />
    <MySource_THEN>
        <script language="Javascript">
            document.location = "<MySource_PRINT id_name="__global__" var="asset_link" start_query_string="true" append_query_string="true" />SQ_DESIGN_NAME=low_bandwidth&SQ_ACTION=set_design_name";      
        </script>
    </MySource_THEN>
</MySource_AREA>
Permission Screen Minor Interface Change

Added to: 3.5.0 development

There has been a small interface change to the permission screen that may require new screen shots for the MySource Matrix manuals. Previously, the read/write/admin permission sections were displayed as empty sections if no permissions had been set for the level of access they listed. Now, these three sections print a message letting the user know that no permissions have been set.

This has only been added to the development version, so current manuals and those for the next stable release will not be affected.

Directional Asset Listing

Added to: 3.5.0 development

The Asset Listing can now list assets above the selected root node as well as below. A new attribute called Lookup Direction is available on the details screen. By default, the asset listing is still configured to list down the tree, but this setting can be changed to make it look up the tree.

OpenLdap Protocol Version 3

Added to: 3.5.0 development

There are two versions of the LDAP protocol that PHP uses to connect to LDAP directories. MySource Matrix had some problems connecting to protocol v3 openLDAP systems in some conditions. There is now a new system type available on the LDAP Bridge details screen that allows you to explicitly set the protocol version to v3. Try this system type if you are trying to connect to an openLDAP system but you are getting a protocol error, or if your authentication details are not working but you are able to log in through another LDAP application.

User Groups Available On Frontend

Added to: 3.5.0 development

Previously, User Group assets did not have a web paths screen and were not web accessible. They could appear in a design menu if required, but did not print any content. User Groups now have a web paths screen (like pages) so you can control the URLs used to access the frontend of the group. When a user group is created, a default web path is added based on the name of the group. A frontend has also been added that lists users in the group and well as any sub groups.

The style of this listing is configurable using CSS classes. To put the default classes into your design, you will need to include the HEAD design area in the HEAD tags of your parse file, above the inclusion of your normal stylesheets. An example parse file would be:

<html>
    <head>
        <MySource_AREA id_name="head" design_area="head" />
        <link rel="stylesheet" src="myNormalCss.css" />
    </head>
    <body>
        Body content goes here
    </body>
</html>

The following CSS classes will then be inserted at the location of the HEAD design area, and can be overridden in the myNormalCss.css file:

  • sq_user_group - class for each group table
  • sq_user_group_display_name - class for the column headings (Name, Email, Username)
  • sq_user_group_user_name - class for the Name column
  • sq_user_group_email - class for the Email column
  • sq_user_group_user_data - class for the Username column
Ldap User Groups Available On Frontend

Added to: 3.5.0 development

With the addition of the frontend for User Group assets, LDAP User Group assets have also been given frontend content so they can be displayed in a site. LDAP user groups list in the same way as normal user groups, except that the data listed is configurable on the LDAP User Setup screen of the LDAP Bridge asset. The user fields selected here will be displayed in the group list. If the Common Name or Email attributes of a user (as defined on the Attribute Setup screen of the LDAP Bridge) are listed, they will use special CSS class names.

The LDAP Bridge and LDAP User Groups assets now have a Web Paths screen to enable you to set the URLs used to access them from the frontend. Unlike User Groups assets, LDAP User Groups do not automatically generate web paths because they are not real assets within the MySource Matrix system.

Again, the HEAD design area is required to insert default styles. The following CSS classes will be inserted at the location of the HEAD design area, and can be overridden in a CSS file attached to the design:

  • sq_user_group - class for each group table
  • sq_user_group_display_name - class for the column headings (as set on the LDAP User Setup screen)
  • sq_user_group_user_name - class for a column that matches the Common Name bridge attribute
  • sq_user_group_email - class for a column that matches the Email Address bridge attribute
  • sq_user_group_user_data - class for all other columns of data

New Bugs Added To Bug Tracker

Bug ID Stable Beta Dev Description
421 Y Y Y Assets with Specifically Denying Public Access problems
432 N N N Disappearing thumbnails on divs (unconfirmed)
433 Y Y Y Asset builder doesnt check link permissions
Notes:

Bug #423 (Right click selecting an item in the asset map does not refresh the right frame) was submitted by JP but was found to be a problem caused by the add-blocking feature of Norton Security Centre. Avi added that a number of products block Java and Javascript communication (including Norton Internet Security and various firewalls) and so users should always exclude MySource Matrix systems from these products.

Bug #425 (CSS Styles Don't Show In WYSIWYG) was submitted by Chris N by was marked as not being a bug. The problem Chris had was that when changing styles in the WYSIWYG editor, the changes were not reflected in the WYSIWYG editor. Chris solved the problem by changing the WYSIWYG editing style from DIV to IFRAME.

Bug #427 (MSM hangs when locking Settings screen on Under Construction assets) was submitted by MargieW and was marked as a duplicate of bug #220 (Acquiring lock on settings screen for a Backend user crashes browser).

Bug #428 (Firefox with 'Adblock' plugin crashes when logging into the backend) by Robert and was found to be a problem with the Adblock plugin available for the Firefox web browser. Uninstalling this plugin fixes the problems with the asset map and is the only know workaround.

New Feature Requests Added To Bug Tracker

Bug ID Description
422 Asset map does not issue warning if Java version is incorrect
424 Account Manager should not go into _edit mode
426 Add Image should pull ALT text from image asset
429 Email fields need some warnings
430 News Item should allow you to chose which attributes are displayed
431 LDAP users unable to delete messages

Bugs Fixed In The Bug Tracker

Bug ID Stable Beta Dev Description
415 N Y Y Recurring Event Cancellation\\Modification does not work
421 Y Y Y Assets with Specifically Denying Public Access problems
Add a Comment

You must click here to log in before posting comments.

View Comments

There are currently no comments for this newsletter.