Habilitar botón de opciones y acceso a permisos en un componente Joomla como Widgetkit
Me he encontrado con la necesidad de dar acceso a un componente de Joomla, en concreto al componente Widgetkit de Yootheme, a un grupo de usuarios de joomla que no es administrador (en este caso a un grupo de usuarios creado a partir de los privilegios de Manager). Por defecto el componente Widgetkit solo es accesible desde usuarios administradores, aunque esto es relativo, ya que si copiamos la URL del componente (http://www.midominio.tld/administrator/index.php?option=com_widgetkit) entrando como administrador o super-admin y la pegamos en el navegador entrando con un tipo de usuario de nivel inferior, nos muestra la gestión del componente. Sin embargo no podemos añadirlo al menu principal o generar un icono en la página de inicio del panel de control (por ejemplo con KC Admin QuickIcons)
Para poder dar acceso a este componente que no dispone del típico boton de configuración u opciones donde solemos encontrar la clásica configuración de permisos para el componente, tenemos que habilitar la aparición de esta opción en el JToolBarHelper y así poder asignar permisos al mismo según el rol de usuario (group) que nos interese.
Para ello crearemos un fichero "config.xml" en el directorio del componente "/administrator/components/com_widgetkit/" con el siguiente código, o lo editamos si existe para habilitar las opciones de permisos:

Solo añadir una cosa más, y es que una vez se guardan los cambios, estos son efectivos pero si volvemos a editar las opciones veremos los parámetros por defecto y no los que hayamos modificado. Seguiré investigando para que los cambios se visualicen.
Para poder dar acceso a este componente que no dispone del típico boton de configuración u opciones donde solemos encontrar la clásica configuración de permisos para el componente, tenemos que habilitar la aparición de esta opción en el JToolBarHelper y así poder asignar permisos al mismo según el rol de usuario (group) que nos interese.
Para ello crearemos un fichero "config.xml" en el directorio del componente "/administrator/components/com_widgetkit/" con el siguiente código, o lo editamos si existe para habilitar las opciones de permisos:
<?xml version="1.0" encoding="utf-8"?>Después añadiremos un botón JToolbar al que acceder para mostrar las preferencias del componente, añadiendo la siguiente línea de código en el componente o en las vistas del mismo:
<config>
<fieldset name="permissions"
description="JCONFIG_PERMISSIONS_DESC"
label="JCONFIG_PERMISSIONS_LABEL">
<field name="rules" type="rules"
component="com_weblinks"
filter="rules"
validate="rules"
label="JCONFIG_PERMISSIONS_LABEL"
section="component" />
</fieldset>
</config>
JToolBarHelper::preferences('com_widgetkit');En el caso de widgetkit lo he agregado en /administrator/components/com_widgetkit/layouts/dashboard.php, justo debajo de la línea que carga el título del componente, quedando así:
<?phpAhora ya se ve el botón y se tiene acceso a la configuración de los permisos de este componente.
JToolBarHelper::title('Widgetkit', 'widgetkit');
JToolBarHelper::preferences('com_widgetkit');?>

Solo añadir una cosa más, y es que una vez se guardan los cambios, estos son efectivos pero si volvemos a editar las opciones veremos los parámetros por defecto y no los que hayamos modificado. Seguiré investigando para que los cambios se visualicen.
| Joomla