locale_translate_batch_build(array $files, array $options)
Build a locale batch from an array of files.
Parameters
array $files: Array of file objects to import.
array $options: An array with options that can have the following elements:
- 'langcode': The language code. Optional, defaults to NULL, which means that the language will be detected from the name of the files.
- 'overwrite_options': Overwrite options array as defined in Drupal\locale\PoDatabaseWriter. Optional, defaults to an empty array.
- 'customized': Flag indicating whether the strings imported from $file are customized translations or come from a community source. Use LOCALE_CUSTOMIZED or LOCALE_NOT_CUSTOMIZED. Optional, defaults to LOCALE_NOT_CUSTOMIZED.
- 'finish_feedback': Whether or not to give feedback to the user when the batch is finished. Optional, defaults to TRUE.
Return value
array|bool A batch structure or FALSE if $files was empty.
File
- core/modules/locale/locale.bulk.inc, line 134
- Mass import-export and batch import functionality for Gettext .po files.
Code
function locale_translate_batch_build(array $files, array $options) { $options += array( 'overwrite_options' => array(), 'customized' => LOCALE_NOT_CUSTOMIZED, 'finish_feedback' => TRUE, ); if (count($files)) { $operations = array(); foreach ($files as $file) { // We call locale_translate_batch_import for every batch operation. $operations[] = array('locale_translate_batch_import', array($file, $options)); } // Save the translation status of all files. $operations[] = array('locale_translate_batch_import_save', array()); // Add a final step to refresh JavaScript and configuration strings. $operations[] = array('locale_translate_batch_refresh', array()); $batch = array( 'operations' => $operations, 'title' => t('Importing interface translations'), 'progress_message' => '', 'error_message' => t('Error importing interface translations'), 'file' => drupal_get_path('module', 'locale') . '/locale.bulk.inc', ); if ($options['finish_feedback']) { $batch['finished'] = 'locale_translate_batch_finished'; } return $batch; } return FALSE; }
Please login to continue.