function _book_admin_table

Builds the table portion of the form for the book administration page.

Parameters

Drupal\node\Node $node: The node of the top-level page in the book.

$form: The form that is being modified.

See also

book_admin_edit()

1 call to _book_admin_table()
book_admin_edit in drupal/core/modules/book/book.admin.inc
Form constructor for administering a single book's hierarchy.

File

drupal/core/modules/book/book.admin.inc, line 187
Admin page callbacks for the book module.

Code

function _book_admin_table(Node $node, &$form) {
  $form['table'] = array(
    '#theme' => 'book_admin_table',
    '#tree' => TRUE,
  );
  $tree = book_menu_subtree_data($node->book);
  $tree = array_shift($tree);

  // Do not include the book item itself.
  if ($tree['below']) {
    $hash = drupal_hash_base64(serialize($tree['below']));

    // Store the hash value as a hidden form element so that we can detect
    // if another user changed the book hierarchy.
    $form['tree_hash'] = array(
      '#type' => 'hidden',
      '#default_value' => $hash,
    );
    $form['tree_current_hash'] = array(
      '#type' => 'value',
      '#value' => $hash,
    );
    _book_admin_table_tree($tree['below'], $form['table']);
  }
}