danielebarchiesi@0: t("Node: ID"), danielebarchiesi@0: 'keyword' => 'node', danielebarchiesi@0: 'description' => t('Creates a node context from a node ID argument.'), danielebarchiesi@0: 'context' => 'ctools_argument_nid_context', danielebarchiesi@0: 'placeholder form' => array( danielebarchiesi@0: '#type' => 'textfield', danielebarchiesi@0: '#description' => t('Enter the node ID of a node for this argument'), danielebarchiesi@0: ), danielebarchiesi@0: 'no ui' => TRUE, danielebarchiesi@0: ); danielebarchiesi@0: danielebarchiesi@0: /** danielebarchiesi@0: * Discover if this argument gives us the node we crave. danielebarchiesi@0: */ danielebarchiesi@0: function ctools_argument_nid_context($arg = NULL, $conf = NULL, $empty = FALSE) { danielebarchiesi@0: // If unset it wants a generic, unfilled context. danielebarchiesi@0: if ($empty) { danielebarchiesi@0: return ctools_context_create_empty('node'); danielebarchiesi@0: } danielebarchiesi@0: danielebarchiesi@0: // We can accept either a node object or a pure nid. danielebarchiesi@0: if (is_object($arg)) { danielebarchiesi@0: return ctools_context_create('node', $arg); danielebarchiesi@0: } danielebarchiesi@0: danielebarchiesi@0: if (!is_numeric($arg)) { danielebarchiesi@0: return FALSE; danielebarchiesi@0: } danielebarchiesi@0: danielebarchiesi@0: $node = node_load($arg); danielebarchiesi@0: if (!$node) { danielebarchiesi@0: return FALSE; danielebarchiesi@0: } danielebarchiesi@0: danielebarchiesi@0: return ctools_context_create('node', $node); danielebarchiesi@0: } danielebarchiesi@0: