tru3n0 >>> blog / 73 posts / categories / 68 comments / feed / comments feed

Utilizar xajax en un módulo de drupal 5.x

Hoy he tenido que desarrollar un módulo para Drupal utilizando xajax, después de un rato investigando por fin he conseguido hacerlo funcionar, os explicó aquí cómo hacerlo y lo dejo anotado para futuros módulos.

Es bastante sencillo, primero tenemos que descargar la versión estable de xajax y descomprimirla en el directorio del plugin.

1. Incluímos la clase de xajax en el fichero .module y declaramos las funciones que vayamos a utilizar.

require_once(’xajax/xajax.inc.php’ );

function myfunction()
{
//código
}

2. Módificamos o añadimos el hook_menu(), con esta función podemos modificar el header de la página y así poder incluir la llamada al javascript:

function nombre_modulo_menu() {
// inicializamos xajax
$xajax = new xajax(’/index.php’);

// registramos las funciones
$xajax->registerFunction(”myfunction”);

// incluimos el javascript en el header drupal_set_html_head($xajax->getJavascript(’modules/nombre_modulo/xajax’));

$xajax->processRequests();
}

3. Llamamos a la función desde el contenido del módulo.

Ejemplo:

Llamada a la función desde un bloque generado por el módulo:

function nombre_modulo_block($op=’list’, $delta=0) {
if ($op == “list”) {
$block[0]["info"] = t(”Bloque xajax”);
return $block;
}
else if ($op == ‘view’) {
// contenido del bloque
$block_content = ‘<script>xajax_myfunction();</script>
// set up the block
$block['subject'] = ‘Bloque xajax’;
$block['content'] = $block_content;
return $block;
}

No comments

Leave a comment