useful link: http://wenku.baidu.com/view/4d6420aad1f34693daef3e8f.html
standard form field types:
https://docs.joomla.org/Standard_form_field_types
database structure :
https://docs.joomla.org/J1.5:Database_structure
most useful link!
http://www.torkiljohnsen.com/wp-content/uploads/2006/04/joomla_15_database_schema.png
Joomla source code:
https://github.com/joomla/joomla-cms
other useful information for understanding:
http://dba.stackexchange.com/questions/1732/database-model-with-users-roles-and-rights
http://www.sitepoint.com/forums/showthread.php?88026-User-group-and-permissions-table-Need-a-little-help
user & access control summary:
Joomla user control comes from phpGACL user control.
Some ideas for phpGACL user control: http://wiki.sahanafoundation.org/phase2/doku.php/dev:acldesign
jos_users, jos_session, jos_groups, jos_core_acl_aco_groups
, jos_core_acl_groups_aro_map, jos_core_acl_aro, jos_core_acl_aro_sections
are tables for user & access control
The jos_users table storage information for all users.
jos_session, jos_groups are tables for temporary guest invited by users, and i don't think we need this.
jos_core_acl_aco_groups, jos_core_acl_groups_aro_map, jos_core_acl_aro, jos_core_acl_aro_sections are tables for access control.
jos_core_acl_aro, jos_core_acl_aro_sections storage the information for privilege.
jos_core_acl_aco_groups makes multiple users in a group.
jos_core_acl_groups_aro_map make the connection between groups and their privileges.
Simply, multiple users can belong to a group and the group can have certain privilege.
The groups are storage in a tree structure. The root group may only have very limit privilege but the parent group may have more.
message between users:
jos_messages record the message from users.
Not sure what the function for jos_messages_cfg
content management:
jos_content storages the content for a user.
jos_content_frontpage makes a front page.
jos_categories, jos_sections, jos_newsfeedsm, jos_contact_details add functions or details to content.
menu and poll:
jos_menu storages different menu and present certain menu to certain users.
jos_modules, jos_plugins, jos_components, jos_template_positions, jos_templates_menu add functions or detail to menu table.
jos_poll_menu makes the poll also become a menu.
jos_polls, jos_poll_date, jos_poll_data storage information for polls.
(not important)
banner:
jos_banner, jos_bannerclient, jos_bannerfinish help to show the advertisement on the webpages.