You are here

function _trigger_normalize_user_context in Drupal 6

Same name and namespace in other branches
  1. 7 modules/trigger/trigger.module \_trigger_normalize_user_context()

When an action is called in a context that does not match its type, the object that the action expects must be retrieved. For example, when an action that works on nodes is called during the user hook, the node object is not available since the user hook doesn't pass it. So here we load the object the action expects.

Parameters

$type: The type of action that is about to be called.

$account: The account object that was passed via the user hook.

Return value

The object expected by the action that is about to be called.

1 call to _trigger_normalize_user_context()
trigger_user in modules/trigger/trigger.module
Implementation of hook_user().

File

modules/trigger/trigger.module, line 340
Enables functions to be stored and executed at a later time when triggered by other modules or by one of Drupal's core API hooks.

Code

function _trigger_normalize_user_context($type, $account) {
  switch ($type) {

    // If an action that works on comments is being called in a user context,
    // the action is expecting a comment object. But we have no way of
    // determining the appropriate comment object to pass. So comment
    // actions in a user context are not supported.
    // An action that works with nodes is being called in a user context.
    // If a single node is being viewed, return the node.
    case 'node':

      // If we are viewing an individual node, return the node.
      if (arg(0) == 'node' && is_numeric(arg(1)) && arg(2) == NULL) {
        return node_load(array(
          'nid' => arg(1),
        ));
      }
  }
}