You are here

public static function ViewsBulkOperationsActionCompletedTrait::finished in Views Bulk Operations (VBO) 8.3

Same name and namespace in other branches
  1. 4.0.x src/Action/ViewsBulkOperationsActionCompletedTrait.php \Drupal\views_bulk_operations\Action\ViewsBulkOperationsActionCompletedTrait::finished()

Batch finished callback.

Parameters

bool $success: Was the process successful?

array $results: Batch process results array.

array $operations: Performed operations array.

1 method overrides ViewsBulkOperationsActionCompletedTrait::finished()
ViewsBulkOperationsAdvancedTestAction::finished in tests/views_bulk_operations_test/src/Plugin/Action/ViewsBulkOperationsAdvancedTestAction.php
Batch finished callback.

File

src/Action/ViewsBulkOperationsActionCompletedTrait.php, line 40

Class

ViewsBulkOperationsActionCompletedTrait
Defines action completion logic.

Namespace

Drupal\views_bulk_operations\Action

Code

public static function finished($success, array $results, array $operations) : ?RedirectResponse {
  if ($success) {
    $operations = array_count_values($results['operations']);
    $details = [];
    foreach ($operations as $op => $count) {
      $details[] = $op . ' (' . $count . ')';
    }
    $message = static::translate('Action processing results: @operations.', [
      '@operations' => implode(', ', $details),
    ]);
    static::message($message);
    if (isset($results['redirect_url'])) {
      @trigger_error('Passing the redirect_url value to results is deprecated in views_bulk_operations:8.x-3.14 and will be removed before views_bulk_operations:4.0. To redirect when processing is finished, override this method in your VBO action plugin class.', E_USER_DEPRECATED);
      return new RedirectResponse($results['redirect_url']
        ->setAbsolute()
        ->toString());
    }
  }
  else {
    $message = static::translate('Finished with an error.');
    static::message($message, 'error');
  }
  return NULL;
}