You are here

function bootstrap_optimizer_batch_process_item in Bootstrap optimizer 7

Processes every batch item.

Parameters

$items:

$function:

$context:

1 string reference to 'bootstrap_optimizer_batch_process_item'
bootstrap_optimizer_set_batch in ./bootstrap_optimizer.module
Sets batch operation.

File

./bootstrap_optimizer.batch.inc, line 15

Code

function bootstrap_optimizer_batch_process_item($items, $function, &$context) {
  $limit = 1;
  if (empty($context['sandbox']['progress'])) {
    $context['sandbox']['progress'] = 0;
    $context['sandbox']['max'] = count($items);
  }
  if (empty($context['sandbox']['items'])) {
    $context['sandbox']['items'] = $items;
  }
  $counter = 0;
  if (!empty($context['sandbox']['items'])) {
    if ($context['sandbox']['progress'] != 0) {
      array_splice($context['sandbox']['items'], 0, $limit);
    }
    foreach ($context['sandbox']['items'] as $item) {
      if ($counter != $limit) {
        $counter++;
        $function($item, $context);
        $context['message'] = t('Checking %filename file.', array(
          '%filename' => $item,
        ));
        $context['sandbox']['progress']++;
        $context['results']['processed'] = $context['sandbox']['progress'];
      }
    }
  }
  if ($context['sandbox']['progress'] != $context['sandbox']['max']) {
    $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
  }
}