1 book.admin.inc | theme_book_admin_table($variables) |
Returns HTML for a book administration form.
Parameters
$variables: An associative array containing:
- form: A render element representing the form.
See also
book_admin_table()
Related topics
File
- core/
modules/ book/ book.admin.inc, line 319 - Admin page callbacks for the Book module.
Code
function theme_book_admin_table($variables) {
$form = $variables['form'];
backdrop_add_tabledrag('book-outline', 'match', 'parent', 'book-plid', 'book-plid', 'book-mlid', TRUE, MENU_MAX_DEPTH - 2);
backdrop_add_tabledrag('book-outline', 'order', 'sibling', 'book-weight');
$header = array(t('Title'), t('Weight'), t('Parent'), t('Operations'));
$rows = array();
$destination = backdrop_get_destination();
$access = user_access('administer nodes');
foreach (element_children($form) as $key) {
$nid = $form[$key]['nid']['#value'];
$href = $form[$key]['href']['#value'];
// Add special classes to be used with tabledrag.js.
$form[$key]['plid']['#attributes']['class'] = array('book-plid');
$form[$key]['mlid']['#attributes']['class'] = array('book-mlid');
$form[$key]['weight']['#attributes']['class'] = array('book-weight');
$data = array(
theme('indentation', array('size' => $form[$key]['depth']['#value'] - 2)) . backdrop_render($form[$key]['title']),
backdrop_render($form[$key]['weight']),
backdrop_render($form[$key]['plid']) . backdrop_render($form[$key]['mlid']),
);
$links = array();
$links['view'] = array(
'title' => t('view'),
'href' => $href,
);
if ($access) {
$links['edit'] = array(
'title' => t('Edit'),
'href' => "node/$nid/edit",
'query' => $destination,
);
$links['delete'] = array(
'title' => t('Delete'),
'href' => "node/$nid/delete",
'query' => $destination,
);
$links['remove'] = array(
'title' => t('Remove'),
'href' => "node/$nid/outline-remove",
'query' => $destination,
);
}
$data[] = array(
'data' => array(
'#type' => 'operations',
'#links' => $links,
),
);
$row = array('data' => $data);
if (isset($form[$key]['#attributes'])) {
$row = array_merge($row, $form[$key]['#attributes']);
}
$row['class'][] = 'draggable';
$rows[] = $row;
}
return theme('table', array('header' => $header, 'rows' => $rows, 'attributes' => array('id' => 'book-outline'), 'empty' => t('No book content available.')));
}