Deborah Morehead, Director of Communications and Public Relations, IALR
Buentec came highly recommended when we were considering website designers for our redesign project. Several key partners were very enthusiastic about the results David Parrish delivered when they contracted for web site design or redesign projects, and we have been very pleased with the results....

Written by David Parrish
One of the more limiting things in Joomla! is the way that user and group access is handled. In order for a backend Joomla! user to have access to modules and components they have to be set up as either an Administrator or Super Administrator. The problem is that this gives them access to a host of capabilities that the average content owner should not mess with. By altering gacl.class.php you can alter the default Joomla! access control and specifically define the role for individual users or groups. Here is how it is done.The file:
includes/gacl.class.php
can be modified to alter user access for the built in Joomla groups. For instance, you can give Backend Managers access to the Web Links component in the following way:
around line 152 you will find
// uncomment following to allow managers to edit modules
replace the following code:
//array( 'administration', 'edit', 'users', 'manager', 'modules', 'all' );
// access to components
//$this->_mos_add_acl( 'administration', 'install', 'users', 'administrator', 'components', 'all' );
//$this->_mos_add_acl( 'administration', 'install', 'users', 'super administrator', 'components', 'all' );
//$this->_mos_add_acl( 'administration', 'edit', 'users', 'super administrator', 'components', 'all' );
//$this->_mos_add_acl( 'administration', 'edit', 'users', 'administrator', 'components', 'all' );
//$this->_mos_add_acl( 'administration', 'edit', 'users', 'manager', 'components', 'com_newsflash' );
//$this->_mos_add_acl( 'administration', 'edit', 'users', 'manager', 'components', 'com_frontpage' );
//$this->_mos_add_acl( 'administration', 'edit', 'users', 'manager', 'components', 'com_media' );
// ** add additional components for a manager as desired, or give access to all
with this code:
// Standard Access - Start
$this->_mos_add_acl( 'administration', 'install', 'users', 'administrator', 'components', 'all' );
$this->_mos_add_acl( 'administration', 'install', 'users', 'super administrator', 'components', 'all' );
$this->_mos_add_acl( 'administration', 'edit', 'users', 'super administrator', 'components', 'all' );
$this->_mos_add_acl( 'administration', 'edit', 'users', 'administrator', 'components', 'all' );
// Standard Access - End
// Custom Access - Start
// added for managers' access
//necessary to give managers access to components menu
$this->_mos_add_acl( 'administration', 'install', 'users', 'manager', 'components', 'all' );
$this->_mos_add_acl( 'administration', 'edit', 'users', 'manager', 'components', 'com_massmail' );
$this->_mos_add_acl( 'administration', 'manage', 'users', 'manager', 'components', 'com_massmail' );
$this->_mos_add_acl( 'administration', 'manage', 'users', 'manager', 'components', 'com_trash' );
$this->_mos_add_acl( 'administration', 'edit', 'users', 'manager', 'components', 'com_banners' );
//grant access to the web links componenet
$this->_mos_add_acl( 'administration', 'edit', 'users', 'manager', 'components', 'com_weblinks' );
// Custom Access - End
The info above was extracted and modified ever so slightly from a thread in the Joomla! Forums:
http://forum.joomla.org/index.php/topic,69154.0.html 