You are here

function _node_revision_bulk_delete_submit in Node Revision Delete 8

Custom submit handler to bulk delete revisions.

Parameters

array $form: The form element.

\Drupal\Core\Form\FormStateInterface $form_state: The form state.

1 string reference to '_node_revision_bulk_delete_submit'
node_revision_delete_form_node_revision_delete_confirm_alter in ./node_revision_delete.module
Implements hook_form_BASE_FORM_ID_alter().

File

./node_revision_delete.module, line 279
Contains node_revision_delete.module.

Code

function _node_revision_bulk_delete_submit(array &$form, FormStateInterface $form_state) {
  if ($form_state
    ->getValue('delete_prior_revisions') == 1) {

    // Get the node id from URL.
    $nid = \Drupal::routeMatch()
      ->getParameter('node');

    // Get the revision id from URL.
    $revision_id = \Drupal::routeMatch()
      ->getParameter('node_revision');

    // Get list of revisions older than current revision.
    $revisions_before = \Drupal::service('node_revision_delete')
      ->getPreviousRevisions($nid, $revision_id);

    // Add the batch.
    batch_set(\Drupal::service('node_revision_delete')
      ->getRevisionDeletionBatch($revisions_before, FALSE));
  }
}