function nodequeue_get_subqueues_by_node in Nodequeue 6.2
Same name and namespace in other branches
- 5.2 nodequeue.module \nodequeue_get_subqueues_by_node()
- 7.3 nodequeue.module \nodequeue_get_subqueues_by_node()
- 7.2 nodequeue.module \nodequeue_get_subqueues_by_node()
Get a list of valid subqueues for a node, along with the position of the node.
Parameters
$queues: An array of fully loaded queue objects.
$node: A fully loaded node object.
5 calls to nodequeue_get_subqueues_by_node()
- nodequeue_add_action in ./
nodequeue.module - Action to add a node to a queue.
- nodequeue_apachesolr_update_index in ./
nodequeue.module - Implementation of hook_apachesolr_update_index().
- nodequeue_link in ./
nodequeue.module - Implementation of hook_link().
- nodequeue_node_tab in includes/
nodequeue.admin.inc - Display the queue controls for a node.
- nodequeue_node_tab_access in ./
nodequeue.module
File
- ./
nodequeue.module, line 1265 - Maintains queues of nodes in arbitrary order.
Code
function nodequeue_get_subqueues_by_node($queues, $node) {
// Determine which subqueues are valid for each queue.
$references = array();
static $last_nid = 0;
foreach ($queues as $queue) {
if ($result = nodequeue_api_subqueues($queue, $node)) {
$references[$queue->qid] = is_array($result) ? $result : array(
$result,
);
}
}
if (empty($references)) {
return array();
}
// only allow the static cache to be used if the nid is the same as the last
$subqueues = nodequeue_load_subqueues_by_reference($references, $last_nid != $node->nid);
$last_nid = $node->nid;
return $subqueues;
}