Foros del Web » Creando para Internet » Sistemas de gestión de contenidos » Drupal »

Actualización de Módulo

Estas en el tema de Actualización de Módulo en el foro de Drupal en Foros del Web. Hola amigos, estoy actualizando un módulo de D6 a D7 y no me queda claro el cambio de nodeapi. En la versión D6 tengo esta ...
  #1 (permalink)  
Antiguo 14/03/2012, 13:57
 
Fecha de Ingreso: febrero-2011
Mensajes: 99
Antigüedad: 13 años, 10 meses
Puntos: 6
Actualización de Módulo

Hola amigos,

estoy actualizando un módulo de D6 a D7 y no me queda claro el cambio de nodeapi.

En la versión D6 tengo esta función:
Código PHP:
function updatemodule_nodeapi(&$node$op$teaser) {


  if (
variable_get("updatemodule_status_$node->type"false)
      || (isset (
$_GET['shr']) && $op == 'view' ) )
  {
    switch (
$op) {

      case 
"validate":
        
updatemodule_validate_updatemodule($node);
      break;
     
      case 
"insert":
        
updatemodule_save_updatemodule($node);
      break;
      
      case 
"update":
        
updatemodule_save_updatemodule($node);
      break;
      
      case 
"load":
        
$node->updatemodule updatemodule_load_updatemodule($node->nid);
      break;
      
      case 
"view":
        
updatemodule_view_node($node$teaser);
      break;    
    }
  }

Si lo conservo así me da un error (lógico):

Notice: Undefined variable: op in updatemodule_node_view()

me salta una alerta por cada "case".

He probado separar las funciones pero me sigue dando errores

Código PHP:
function updatemodule_node_validate($node$view_mode 'full') {
    
updatemodule_validate_updatemodule($node);
}
function 
updatemodule_node_insert($node$view_mode 'full') {
    
updatemodule_save_updatemodule($node);
}
function 
updatemodule_node_update($node$view_mode 'full') {
    
updatemodule_save_updatemodule($node);
}
function 
updatemodule_node_load($node$view_mode 'full') {
    
    
$node->updatemodule updatemodule_load_updatemodule($node->nid);
}
function 
updatemodule_node_view($node$view_mode 'full') {
    
updatemodule_view_node($node);

Me da un error del tipo "intentando ... en un non object." Con la penúltima función, donde está $node->nid.

¿Alguna sugerencia?

Gracias

Etiquetas: node, tipo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:34.