function nodequeue_load_subqueues_by_queue in Nodequeue 5.2
Same name and namespace in other branches
- 6.2 nodequeue.module \nodequeue_load_subqueues_by_queue()
- 7.3 nodequeue.module \nodequeue_load_subqueues_by_queue()
- 7.2 nodequeue.module \nodequeue_load_subqueues_by_queue()
Load the entire set of subqueues for a queue.
This will load the entire set of subqueues for a given queue (and can respect the pager, if desired). It does NOT cache the subqueues like nodequeue_load_subqueues does, so beware of this mixed caching.
Parameters
$qids: A $qid or array of $qids
$page_size: If non-zero, use the pager_query and limit the page-size to the parameter.
7 calls to nodequeue_load_subqueues_by_queue()
- nodequeue_admin_view in ./
nodequeue.module - Page callback to view a queue.
- nodequeue_check_subqueue_sizes in ./
nodequeue.module - Guarantee that all subqueues are within the size constraints set by $queue->size.
- nodequeue_generate_form in ./
nodequeue_generate.module - nodequeue_generate_form_submit in ./
nodequeue_generate.module - nodequeue_handler_subqueuelist in ./
nodequeue.views.inc - Generate a list of queues for use in option/value fields.
File
- ./
nodequeue.module, line 1690
Code
function nodequeue_load_subqueues_by_queue($qids, $page_size = 0) {
if (is_numeric($qids)) {
$qids = array(
$qids,
);
}
if (empty($qids)) {
return array();
}
$query = "SELECT s.*, COUNT(n.position) AS count FROM {nodequeue_subqueue} s LEFT JOIN {nodequeue_nodes} n ON n.sqid = s.sqid WHERE s.qid IN (" . implode(', ', array_fill(0, count($qids), '%d')) . ") GROUP BY s.sqid";
if ($page_size) {
$result = pager_query($query, $page_size, 0, $qids);
}
else {
$result = db_query($query, $qids);
}
$subqueues = array();
while ($subqueue = db_fetch_object($result)) {
$subqueues[$subqueue->sqid] = $subqueue;
}
return $subqueues;
}