Desarrollo de un módulo en drupal, parte seis, empezamos a picar código

Bueno, antes hemos visto como crear el campanya.info . Seguimos ahora con el archivo campanya.modulo en el cual vamos a introducir el código php y javascript/jquery para todas las funcionalidades que queremos darle al módulo.

Actualización, el código del hook_menu estaba mal, ahora va la corrección :)
Se han correguido varios errores en el hook_menu, ya funciona correctamente. :)

<?php

//$Id$ modulo de campanyas, idea de Oskar Calvo calvo.oskar@gmail.com

/**
*@file
*Este módulo permite que los jugadores registren el resultado de sus partidas,
*se verifique dichas partidas, y se muestre de forma visual su resultado
*
*Se introducen los datos mediante un formulario.
*Un segundo formulario permite a los jugadores validar los resultados de las partidas.
*una tercera función imprime el resultado de las partidas en la campanya.
*/
?>

En estas primeras líneas de código lo que hacemos es informar de los datos del módulo, quien lo ha creado y para que se ha creado.

<?php
/**
* Implementation hook_help
*/
function campanya_help($section) {
  switch (
$section) {
    case
'admin/help#campanya':
     
$output = t('<p>Este es un módulo pensado para poder gestionar campañas de juegos de mesa con figuras/soldados de como son los juegos de G.W., Privateer Press, etc....</p>');
      break;
  }
return
$output;
}
?>

Uno de los primeros hooks que se tiene que utilizar en la creación de los módulos en Drupal es el hook_help. Con este hook lo que creamos es la información de la sección de ayuda del módulo dentro del área de administración. Bueno, lo que intento crear es eso, aun tengo que probarlo

<?php
/**
* Implementación del enlace para que se muestre el formulario de alta.
* Implementation hook_menu
*/

function campanya_menu($may_cache) {
$items = array();
if (
$may_cache) {
  
$items[] = array(
    
'path' => 'alta_partida',
    
'title' => t('Alta de partidas'),   
    
'description' => t('Informar de los resultados de partidas'),
    
'callback' => 'drupal_get_form',
    
'callback arguments' => array('alta_partida'),
    
'access' => user_access ('administer site configuration'),
    
'type' => MENU_NORMAL_ITEM
   
);
  }
return
$items;
}
?>

El Hook_menu lo que nos permite es crear los elementos de menú en el "menú de navegación". No se están utilizando todas las opciones que tiene el hook, pero vamos a explicar las que se han utilizado.

  • Path: es la ruta que se genera y a la cual se llega cuando pinchamos en el enlace.
  • Title: este es el nombre que aparecerá en el menú de navegación.
  • Description: es la descripción que aparece al pasar el ratón por encima de
  • Callback: este elemento recupera datos o una función dependiendo del caso, en el ejemplo lo que invoca es una función de formulario.
  • callback arguments: argumentos que se pasan al callback, en este caso, callback es drupal_get_form (para formularios) asi que le pasamos el nombre de nuestro formulario, sugerencia realizada por Eleazan.
  • queda por añadir el elemento access, y el elemento peso, pero eso para más adelante.

Por favor, si veis algún error no dudéis en indicármelo, ya que entre todo esperamos poder mejorar esto.

Un saludo

Oskar

pd: desde aquí quiero dar las gracias a Iñaki López que me esta ayudando para que sea capaz de entender los módulos, y por orden alfabético a Eleazan, Ipwa, Manuee, Pcambra, Toletum y demás miembros de la comunidad que siempre están dispuestos a ayudar.
Sois la leche.

Trackback URL for this post:

http://www.documentados.com/trackback/154

Comentarios

Duda

Buenas,

una vez q tienes el .info y el .module definido con los hook correspondientes como puedes mostrar el html q genera una función del fichero .module?

Gracias y saludos

Enviar un comentario nuevo

El contenido de este campo se mantiene como privado y no se muestra públicamente.
CAPTCHA
Esto es para evitar spam, y ver que eres humano :)
2 + 2 =
Solve this simple math problem and enter the result. E.g. for 1+3, enter 4.

Back to top