Como integrar Ajax o Javascript en los tabs del core de Joomla

joomla-js

Más que integrar AJAX lo que vamos a hacer es introducir una llamada a una función Javascript dentro de un Tab de Joomla! (JPaneTabs) sin hacer un hack al core!

Cómo? Pues de una manera un poco extraña pero muy limpia (una chapuza con estilo!) En la API de Joomla! 1.5 se puede observar como se puede añadir facilmente un javascript al iniciar panel completo de tabs. Pero por el contrario no hay ninguna manera de pasarle una variable para que cada Tabs ejecute un javascript u otro. Es decir un cuando pulses en este tab «onclick=».

Así que ya me estaba resignando a ver que no era posible cuando… «Mmm! Le pasas dos strings… el texto y el id…. Voilà! Y si lo meto concatendo a uno de estos strings!». El string del texto luego lo mete dentro de un span y no era posible evidentemente pero en el id, EJEMPLO!

echo $pane->startPanel( JText::_( nombre_panel' ), 'id_panel" onclick="javascript:recargar(\'pagina\')" ');

No hemos modificado ningún fichero de Joomla!, es más ni se entera de lo que ha pasado y ya podemos ejecutar el Javascript que queramos! Perfecto si tienes listados brutales en cada tab como era mi caso