Archived

Version 1.6 Developer Notes

From Joomla! Documentation

This page has been archived - Please Do Not Edit or Create Pages placed in this namespace. The pages in the Archived namespace exist only as a historical reference, it will not be improved and its content may be incomplete.

Framework

JAuthorization

JDatabase

JDatabase::setQuery casts the sql variable to a string. This allows you to pass an object that implements the __toString magic method.

JFile

Both JFile::write and JFTP::write now use a reference for its second argument. Code like JFile::write($filename,'string'); will fail, however $data = 'string'; JFile::write($filename, $data); will work for both 1.5 and 1.6

JModel

JModel::getState will now take an optional second argument to set the default. $value = $model->getState( 'foo', 'bar' );

JModel has an addition contruction option and internal variable __state_set. This is used to lazy-load model initialisation.

New API

Added JTableTree as an abstract class for tree-based tables.

Made JObject abstract. It can no longer be directly instantiated. Use JStdClass instead.

Added JDocumentXML to allow easy generation of valid XML files.

Changes to XML-RPC support

On april the 9th. Louis Landry explained his intended changes to the way Joomla will handle XML-RPC in version 1.6. You can view his detailed explanation here [[1]]>.

Components

Join for access level

Before:

LEFT JOIN #__groups AS g ON g.id = c.access

After:

LEFT JOIN #__core_acl_axo_groups AS g ON g.value = a.access

Administrator:Users

Legacy Mode

Only available in legacy mode (to be dropped in future versions):

global $mainframe - Use $app = &JFactory::getApplication() instead.

JTemplate (patTemplate completely deprecated)

Multiple client language install packs (e.g. where site and administrator language files are in the same installation file), use packages with two language install packages