Archived

Archived:Version 1.6 Developer Notes

From Joomla! Documentation

Compilation of developer notes on changes in 1.6.

Schema

  • Added ACL tables (todo - list them)
  • Removed jos_groups table
  • Removed jos_plugins table in favour of jos_extensions
  • Added update tables
    • jos_updates
    • jos_update_sites
    • jos_update_sites_extensions
    • jos_update_categories

Framework

JAuthorization

Remove JAuthorization::_mos_add_acl.

Added JAuthorization::getUserAccessLevels( $section [, $action = 'view'] ).

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.

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

Files/Features Dropped

  • Support for constants as language strings with JLanguage
  • Polls component

Templates

Mapping of positions in Milky Way 1.5 to new positions.

  • user3->position-1
  • breadcrumb->position-2
  • right->position-3,position-4
  • left->position-7
  • user1->position-9
  • user2->position-10
  • footer->position-5,position-8,position-11
  • user4->position-12
  • syndicate->position-14

TODO

Migration issues

Please use Version_1.6._Migration_Notes to track migration issues that are not schema changes.