8.3.x book.module book_form_node_confirm_form_alter(&$form, FormStateInterface $form_state)
8.0.x book.module book_form_node_confirm_form_alter(&$form, FormStateInterface $form_state)
8.1.x book.module book_form_node_confirm_form_alter(&$form, FormStateInterface $form_state)
8.2.x book.module book_form_node_confirm_form_alter(&$form, FormStateInterface $form_state)
8.4.x book.module book_form_node_confirm_form_alter(&$form, FormStateInterface $form_state)

Implements hook_form_BASE_FORM_ID_alter() for \Drupal\node\Form\NodeDeleteForm.

Alters the confirm form for a single node deletion.

File

core/modules/book/book.module, line 330
Allows users to create and organize related content in an outline.

Code

function book_form_node_confirm_form_alter(&$form, FormStateInterface $form_state) {
  // Only need to alter the delete operation form.
  if ($form_state->getFormObject()->getOperation() !== 'delete') {
    return;
  }

  /** @var \Drupal\node\NodeInterface $node */
  $node = $form_state->getFormObject()->getEntity();
  if (!book_type_is_allowed($node->getType())) {
    // Not a book node.
    return;
  }

  if (isset($node->book) && $node->book['has_children']) {
    $form['book_warning'] = array(
      '#markup' => '<p>' . t('%title is part of a book outline, and has associated child pages. If you proceed with deletion, the child pages will be relocated automatically.', array('%title' => $node->label())) . '</p>',
      '#weight' => -10,
    );
  }
}