function ctools_argument_rid_context

Discover if this argument gives us the node we crave.

1 string reference to 'ctools_argument_rid_context'
rid.inc in plugins/arguments/rid.inc
Plugin to provide an argument handler for a node revision id.

File

plugins/arguments/rid.inc, line 26

Code

function ctools_argument_rid_context($arg = NULL, $conf = NULL, $empty = FALSE) {
    // If unset it wants a generic, unfilled context.
    if ($empty) {
        return ctools_context_create_empty('node');
    }
    // We can accept either a node object or a pure nid.
    if (is_object($arg)) {
        return ctools_context_create('node', $arg);
    }
    if (!is_numeric($arg)) {
        return FALSE;
    }
    $nid = db_query('SELECT nid FROM {node_revision} WHERE vid = :vid', array(
        ':vid' => $arg,
    ))->fetchField();
    $node = node_load($nid, $arg);
    if (!$node) {
        return FALSE;
    }
    return ctools_context_create('node', $node);
}