function _locale_batch_build

Build a locale batch from an array of files.

Parameters

$files: Array of files to import.

$finished: Optional finished callback for the batch.

$components: Optional list of component names the batch covers. Used in the installer.

Return value

A batch structure.

Related topics

2 calls to _locale_batch_build()
locale_batch_by_component in drupal/includes/locale.inc
Prepare a batch to run when installing modules or enabling themes.
locale_batch_by_language in drupal/includes/locale.inc
Prepare a batch to import translations for all enabled modules in a given language.

File

drupal/includes/locale.inc, line 2321
Administration functions for locale.module.

Code

function _locale_batch_build($files, $finished = NULL, $components = array()) {
  $t = get_t();
  if (count($files)) {
    $operations = array();
    foreach ($files as $file) {

      // We call _locale_batch_import for every batch operation.
      $operations[] = array(
        '_locale_batch_import',
        array(
          $file->uri,
        ),
      );
    }
    $batch = array(
      'operations' => $operations,
      'title' => $t('Importing interface translations'),
      'init_message' => $t('Starting import'),
      'error_message' => $t('Error importing interface translations'),
      'file' => 'includes/locale.inc',
      // This is not a batch API construct, but data passed along to the
      // installer, so we know what did we import already.
      '#components' => $components,
    );
    if (isset($finished)) {
      $batch['finished'] = $finished;
    }
    return $batch;
  }
  return FALSE;
}