Archived

Version 1.6 Developer Notes

From Joomla! Documentation

Revision as of 08:08, 23 October 2008 by Pasamio (talk | contribs)

This page has been archived. This page contains information for an unsupported Joomla! version or is no longer relevant. It exists only as a historical reference, it will not be improved and its content may be incomplete and/or contain broken links.

Quill icon.png
Content is Incomplete

This article or section is incomplete, which means it may be lacking information. You are welcome to assist in its completion by editing it as well. If this article or section has not been edited in several days, please consider helping complete the content.
This article was last edited by Pasamio (talk| contribs) 15 years ago. (Purge)

Compilation of developer notes on changes in 1.6.

Schema[edit]

  • 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
  • Added backup tables
    • jos_backups ?? @TODO
  • Added tasks tables
    • jos_tasks
    • jos_taak_sets

Framework[edit]

JAuthorization[edit]

Remove JAuthorization::_mos_add_acl.

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

JDatabase[edit]

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

JFile[edit]

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[edit]

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[edit]

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

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

Components[edit]

Join for access level[edit]

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[edit]

Legacy Mode[edit]

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

  • global $mainframe - Use $app = &JFactory::getApplication() instead.
  • JTemplate (patTemplate completely deprecated)


Files/Features Dropped[edit]

TODO[edit]

Don't forget to do this:

  • Access Level links in backend lists need to be refactored to support the new levels available in the jos_core_acl_axo_groups table.