You are here

function nodequeue_view_random_node in Nodequeue 7.2

Same name and namespace in other branches
  1. 6.2 nodequeue.module \nodequeue_view_random_node()
  2. 7.3 nodequeue.module \nodequeue_view_random_node()

View a random node from a queue.

1 call to nodequeue_view_random_node()
NodequeueExternalFetchingUnitTest::testNodequeueViewRandom in tests/nodequeue.test

File

./nodequeue.module, line 2041
Maintains queues of nodes in arbitrary order.

Code

function nodequeue_view_random_node($sqid, $teaser = TRUE, $links = TRUE) {
  $query = db_select('node', 'n')
    ->fields('n', array(
    'nid',
  ));
  $query
    ->join('nodequeue_nodes', 'nn', 'n.nid = nn.nid');
  $count = $query
    ->addTag('node_access')
    ->condition('nn.sqid', $sqid)
    ->condition('n.status', 1)
    ->countQuery()
    ->execute()
    ->fetchField();
  return nodequeue_view_nodes($sqid, FALSE, $teaser, $links, rand(0, $count - 1), 1);
}