covers versions 3.4.5 stable, 3.6.0 RC2, 3.7.0 development
Some query changes were committed this week to ensure all INSERT, UPDATE and DELETE queries are executed within transactions. This is sometimes overlooked and wasn't so much an issue with PostgreSQL as it COMMITs the transaction when the script ends regardless of if an explicit COMMIT has been executed.
Before these changes, the AUTO COMMIT option was set to "on" for Oracle, which meant that every query would automatically be committed to the database if it was successful. This is obviously a problem, especially if something goes wrong during an operation. It was found that if a link operation failed on an Oracle system, assets would be orphaned because the database changes were not rolled back even though a ROLLBACK query was executed.
The AUTO COMMIT option is now "off", which means that if you do not explicitly issue a COMMIT, the database will remain unchanged. This is now true for both for both PostgreSQL and Oracle.
To make life easier, a Snoopy test has been created that will check to make sure that all INSERT, UPDATE and DELETE queries are executed in a transaction. It's up to the function that performs the query to BEGIN and COMMIT the transaction.
Added to: 3.6.0 RC2, 3.7.0 development
A new Show If condition has been added to compare the value of a server variable (any of the $_SERVER array values). This new condition allows the design to restrict content based on browser type (like the User Agent condition), referring URL, language, IP address, protocol etc. Users can also be conditionally placed into groups based on the value in a server variable.
The following is an example of testing for language:
<MySource_AREA id_name="LangDetector" design_area="show_if">
<MySource_SET name="condition" value="server_variable"/>
<MySource_SET name="condition_server_variable" value="HTTP_ACCEPT_LANGUAGE" />
<MySource_SET name="condition_server_variable_match" value="en" />
<MySource_THEN> English </MySource_THEN>
<MySource_ELSE> Another language, translate </MySource_ELSE>
</MySource_AREA>
The following is an example for testing for a query string value:
<MySource_AREA id_name="QueryDetector" design_area="show_if">
<MySource_SET name="condition" value="server_variable"/>
<MySource_SET name="condition_server_variable" value="QUERY_STRING" />
<MySource_SET name="condition_server_variable_match" value="location=" />
<MySource_THEN> Location Specified, Print a different logo </MySource_THEN>
<MySource_ELSE> No location, revert to default </MySource_ELSE>
</MySource_AREA>
Added to: 3.7.0 development
Search Page now has the ability to define "proxy" results, where you search for one type of asset but return another. This is best described using an example.
Assume you have a series of images in an image library and they are classified using the following structure:
Traditionally, a search for "landscape" with a Search Page configured to search for images would only have returned one result (landscape_1.jpg). However, what we really want is for all images of a "landscape" to be returned. The only way this could be done is to apply a metadata schema to the images and enter the keyword "landscape" into the field.
Now you can configured the search page to search for Folder assets only. You then go to the Proxy Asset Types screen and add Folder as a new proxy. Then select Image as a child asset type to display(you could also do File and click inherit).
Now when you search, all Image assets under Folder assets that have "landscape" in their name will be returned. Note that the Folder results are substituted in place of the Folder asset, so no folders will be returned in the search results. So instead of one search result (landscape_1.jpg) you would get 4 search results (123.jpg, 234.jpg, landscape_1.jpg and ferns.jpg).
You can use the new keyword to show out how many results were returned before the children asset types were substituted in. In this case, the following message on the results screen could be used:
Your search found images in folders.
Added to: 3.7.0 development
Search fields in a search page can now look at several data sources each. For instance, you can set up a field that searches in the "name" attribute of the asset AND in its "description" metadata field. Previously, you had to define two different fields and ask the user to enter terms into both. Note that any search fields that uses multiple data sources will be displayed as a text box.
Added to: 3.7.0 development
When defining search fields, you now have the option of searching a few new data source called "standard asset fields". The standards fields allow you to define searches to look at the asset's name, short name, contents and all dates (including the new last status change date).
Added to: 3.7.0 development
The new ecommerce checkout form provides an interface where web site visitors can pay for and order the products they have added to their shopping cart. It allows for delivery and payment methods to be plugged in, allowing for non-traditional ecommerce systems to be created. Currently, no payment methods and no standard delivery methods have been created. The checkout form is currently is use for a custom ecommerce system that uses client specific delivery methods to purchase free items.
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 requir
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.
| Bug ID | Stable | Beta | Dev | Description |
| 835 | Y | Y | Y | Manually changed asset dates are not updated in search index table |
| 836 | Y | N | N | Undefined variable in form_email_edit_fns on line 942 |
| 837 | Y | Y | Y | Package manager cannot detect indirectly deferred assets |
| 838 | N | N | Y | Search and Replace tool confirmation screen shows asset content matches twice |
| 839 | N | Y | Y | user group restrictions not working correctly |
| 840 | N | N | Y | Listing engine assets do not use correct type format for assets of inherited types |
| 841 | N | Y | Y | Image variety filename not updated |
| 842 | N | Y | Y | Problem with multiple root nodes and columnisation |
| 843 | N | N | N | Files getting multiple lookup entries not confirmed |
| 844 | Y | Y | Y | Bodycopy Tables can t handle columns with different content types |
| 845 | N | Y | Y | treeid children missing treeid after being moved |
| 846 | Y | Y | Y | Client side validation printed even if question not printed |
| 848 | N | N | Y | Image assets not replacing variety keywords |
| 849 | N | Y | N | asset builder dynamic location not working |
| 850 | N | Y | Y | Trigger Condition Asset is under broken if asset is moving |
Bug #847 (Client side validation trys to validate questions that dont appear on the front end) was submitted by Danny but was marked as a duplicate of bug #846.
No new feature requests were added the the MySource Matrix bug tracker.
| Bug ID | Stable | Beta | Dev | Description |
| 829 | N | Y | Y | Paint layout never uses default type format bodycopy |
| 835 | Y | Y | Y | Manually changed asset dates are not updated in search index table |
| 836 | Y | N | N | Undefined variable in form_email_edit_fns on line 942 |
| 837 | Y | Y | Y | Package manager cannot detect indirectly deferred assets |
| 838 | N | N | Y | Search and Replace tool confirmation screen shows asset content matches twice |
| 839 | N | Y | Y | user group restrictions not working correctly |
| 840 | N | N | Y | Listing engine assets do not use correct type format for assets of inherited types |
| 841 | N | Y | Y | Image variety filename not updated |
| 842 | N | Y | Y | Problem with multiple root nodes and columnisation |
| 843 | N | Y | Y | Files getting multiple lookup entries |
| 844 | N | N | Y | Bodycopy Tables can t handle columns with different content types |
| 846 | Y | Y | Y | Client side validation printed even if question not printed |
| 848 | N | N | Y | Image assets not replacing variety keywords |
| 849 | N | Y | N | asset builder dynamic location not working |
There are currently no comments for this newsletter.