| Versions | |
|---|---|
| 4.7 – 5 | book_toc($exclude = 0) |
| 6 | book_toc($bid, $exclude = array(), $depth_limit) |
| 7 | book_toc($bid, $depth_limit, $exclude = array()) |
Returns an array of titles and nid entries of book pages in table of contents order.
modules/
<?php
function book_toc($exclude = 0) {
$result = db_query(db_rewrite_sql('SELECT n.nid, n.title, b.parent, b.weight FROM {node} n INNER JOIN {book} b ON n.vid = b.vid WHERE n.status = 1 ORDER BY b.weight, n.title'));
while ($node = db_fetch_object($result)) {
if (!$children[$node->parent]) {
$children[$node->parent] = array();
}
$children[$node->parent][] = $node;
}
$toc = array();
// If the user has permission to create new books, add the top-level book page to the menu;
if (user_access('create new books')) {
$toc[0] = '<' . t('top-level') . '>';
}
$toc = book_toc_recurse(0, '', $toc, $children, $exclude);
return $toc;
}
?>