Quería hacer una aportación, pues no encontré nada concreto respecto a la personalización o customización del backend o administración de Joomla en la versión 1.5.
La única manera que encontré fue modificando el código de administración.
Tenemos dos posibilidades de personalización, por un lado los enlaces directos que nos aparecen en el home (llamado cpanel) y los menús con los accesos a las distintas opciones y sus perfiles (es decir, posibilidad de sólo edición, creación, etc., en caso de tenerlos).
Personalización del cpanel
Fichero a modificar: \administrator\modules\mod_quickicon\mod_quickicon .php
A partir de la línea 39 encontraréis los correspondientes enlaces ($link) y su botón (quickiconButton(...) ).
Existen dos opciones: 1. quiero que no aparezca un botón concreto para todos los usuarios: comentaremos las dos líneas, la que lleva el $link y la de la función quickiconButton que es la encargada de "escribir" el icono;
2. quiero que un botón únicamente le aparezca a un grupo de usuarios, por ej. los Administradores: utilizaremos el IF (por ej. la línea 62) indicando el valor condicionante correspondiente, en este ejemplo sería el valor 24. Este valor lo tienes que consultar en la tabla jos_core_acl_aro_groups.
Personalización de los menús y sus niveles de acceso
Fichero a modificar:
\libraries\joomla\user\authorization.php
La función JAuthorization de la clase del mismo nombre, es la que es especifica para cada módulo si tiene acceso un grupo de usuarios y con qué nivel de acceso.
De este modo, si queremos que únicamente tengan acceso a banners, frontpage, instalador, etc., los "Super Administrator", tendrás que comentar las líneas
Código HTML:
$this->addACL( 'com_banners', 'manage', 'users', 'administrator' ); $this->addACL( 'com_banners', 'manage', 'users', 'manager' ); $this->addACL( 'com_installer', 'installer', 'users', 'administrator' );
Si queréis que un "manager" únicamente pueda Publicar, localizaréis este código:
Código HTML:
$this->addACL( 'com_content', 'add', 'users', 'manager', 'content', 'all' ); $this->addACL( 'com_content', 'edit', 'users', 'manager', 'content', 'all' ); $this->addACL( 'com_content', 'publish', 'users', 'manager', 'content', 'all' );
Código HTML:
//$this->addACL( 'com_content', 'add', 'users', 'manager', 'content', 'all' ); //$this->addACL( 'com_content', 'edit', 'users', 'manager', 'content', 'all' ); $this->addACL( 'com_content', 'publish', 'users', 'manager', 'content', 'all' );