You are here

function datereminder_nodeapi in Date Reminder 6.2

Same name and namespace in other branches
  1. 6 datereminder.module \datereminder_nodeapi()
  2. 7 datereminder.module \datereminder_nodeapi()

Implements hook_nodeapi().

Note that this is essentially a D6 to D7 adapter. It implements the D6 api, but calls D7 api equivalents to do the actual work.

Parameters

node &$node: The node in question

string $op: What are we doing to the node?

boolean $teaser: Set if we're working with teaser.

boolean $page: Set if we're working with page.

File

./datereminder.module, line 45
Support for reminders for nodes with dates.

Code

function datereminder_nodeapi(&$node, $op, $teaser = NULL, $page = NULL) {
  module_load_include('inc', 'datereminder', 'includes/node');
  switch ($op) {
    case 'delete':

      // Clean up anything for this node, even if we don't think the node type
      // or node has any reminders.
      datereminder_node_delete($node);
      break;
    case 'load':

      // Node is being loaded.
      datereminder_node_load(array(
        $node->nid => $node,
      ), array(
        $node->type,
      ));
      return array();
    case 'view':

      // Node is about to be viewed.
      // Question - Should we show reminders in the teaser?
      $view_mode = $page ? 'full' : ($teaser ? 'teaser' : '??');
      datereminder_node_view($node, $view_mode, NULL);
      break;
    case 'insert':

      // Node was just inserted into the database.
      datereminder_node_insert($node);
      break;
    case 'update':

      // Node has been edited. Writing back now.
      datereminder_node_update($node);
      break;
  }
}