public static function DownloadByJobItemsTmgmtActionApproveForm::processBatch in TMGMT Translator Smartling 8.4
File
- src/
Form/ DownloadByJobItemsTmgmtActionApproveForm.php, line 105
Class
- DownloadByJobItemsTmgmtActionApproveForm
- Provides a confirmation form for sending multiple content entities.
Namespace
Drupal\tmgmt_smartling\FormCode
public static function processBatch(array $data, array &$context) {
if (!isset($context['results']['errors'])) {
$context['results']['errors'] = [];
$context['results']['count'] = 0;
}
$job = Job::load($data["tjid"]);
$job_item = JobItem::load($data["tjiid"]);
if (!$job) {
$context['results']['errors'][] = t('TMGMT Job @id not found', [
'@id' => $data["tjid"],
]);
}
if (!$job_item) {
$context['results']['errors'][] = t('TMGMT Job Item @id not found', [
'@id' => $data["tjiid"],
]);
}
if ($translator = $job
->getTranslator()) {
$plugin = $translator
->getPlugin();
if ($plugin instanceof ExtendedTranslatorPluginInterface && $plugin
->downloadTranslation($job, $job_item)) {
$context['results']['count']++;
}
else {
$context['results']['errors'][] = new FormattableMarkup('Error downloading %name', [
'%name' => $job
->label(),
]);
return;
}
$context['message'] = new FormattableMarkup('Processed %name.', [
'%name' => $job
->label(),
]);
}
else {
$context['message'] = new FormattableMarkup('Skipped %name.', [
'%name' => $job
->label(),
]);
}
}