function nodequeue_view_subqueues in Nodequeue 7.2
Same name and namespace in other branches
- 5.2 nodequeue.module \nodequeue_view_subqueues()
- 6.2 includes/nodequeue.admin.inc \nodequeue_view_subqueues()
- 7.3 includes/nodequeue.admin.inc \nodequeue_view_subqueues()
Display a list of subqueues for a queue and their sizes
2 calls to nodequeue_view_subqueues()
- nodequeue_admin_view in includes/
nodequeue.admin.inc - Page callback to view a queue.
- nodequeue_arrange_subqueue in includes/
nodequeue.admin.inc - View the contents of a subqueue, with links to re-order the queue.
File
- includes/
nodequeue.admin.inc, line 339 - Admin page callbacks for the nodequeue module.
Code
function nodequeue_view_subqueues($queue) {
// Fetch all of the subqueues.
$subqueues = nodequeue_load_subqueues_by_queue($queue->qid);
$header = array(
t('Subqueue title'),
t('Term references'),
t('In queue'),
t('Operation'),
);
$rows = array();
foreach ($subqueues as $subqueue) {
if (nodequeue_api_subqueue_access($subqueue, NULL, $queue)) {
$title = nodequeue_title_substitute($queue->subqueue_title, $queue, $subqueue);
$sub_text = nodequeue_subqueue_size_text($queue->size, $subqueue->count, FALSE);
if (is_string($subqueue->reference)) {
$subqueue->reference = array(
$subqueue->reference,
);
}
$references = array();
foreach ($subqueue->reference as $tid) {
$term = taxonomy_term_load($tid);
if ($term) {
$references[] = l($term->name, 'taxonomy/term/' . $term->tid);
}
}
$rows[] = array(
array(
'class' => array(
'nodequeue-title',
),
'data' => $title,
),
array(
'class' => array(
'nodequeue-subqueues',
),
'data' => implode(',', $references),
),
array(
'class' => array(
'nodequeue-refs',
),
'data' => $sub_text,
),
array(
'class' => array(
'nodequeue-operation',
),
'data' => l(t('View'), "admin/structure/nodequeue/{$queue->qid}/view/{$subqueue->sqid}"),
),
);
}
}
if (empty($rows)) {
$rows[] = array(
array(
'data' => t('No subqueues. To create a subqueue, add an item to a queue through the links on that item.'),
'colspan' => 3,
),
);
}
$output = '<p>' . t('Max items in subqueues: @size', array(
'@size' => $queue->size ? $queue->size : t("Infinite"),
)) . '</p>';
$output .= theme('table', array(
'header' => $header,
'rows' => $rows,
));
$output .= theme('pager', array(
'tags' => NULL,
));
return $output;
}