123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- <?php
- /**
- * @file
- * Provides the file translator plugin controller.
- */
- /**
- * File translator plugin controller.
- */
- class TMGMTFileTranslatorPluginController extends TMGMTDefaultTranslatorPluginController {
- /**
- * {@inheritdoc}
- */
- public function canTranslate(TMGMTTranslator $translator, TMGMTJob $job) {
- // Anything can be exported.
- return TRUE;
- }
- /**
- * {@inheritdoc}
- */
- public function requestTranslation(TMGMTJob $job) {
- $name = "JobID" . $job->tjid . '_' . $job->source_language . '_' . $job->target_language;
- $export = tmgmt_file_format_controller($job->getSetting('export_format'));
- $path = $job->getSetting('scheme') . '://tmgmt_file/' . $name . '.' . $job->getSetting('export_format');
- $dirname = dirname($path);
- if (file_prepare_directory($dirname, FILE_CREATE_DIRECTORY)) {
- $file = file_save_data($export->export($job), $path);
- file_usage_add($file, 'tmgmt_file', 'tmgmt_job', $job->tjid);
- $job->submitted('Exported file can be downloaded <a href="!link">here</a>.', array('!link' => file_create_url($file->uri)));
- }
- }
- /**
- * {@inheritdoc}
- */
- public function hasCheckoutSettings(TMGMTJob $job) {
- return $job->getTranslator()->getSetting('allow_override');
- }
- /**
- * {@inheritdoc}
- */
- public function defaultSettings() {
- return array(
- 'export_format' => 'xlf',
- 'allow_override' => TRUE,
- 'scheme' => 'public',
- // Making this setting TRUE by default is more appropriate, however we
- // need to make it FALSE due to backwards compatibility.
- 'xliff_processing' => FALSE,
- 'xliff_cdata' => FALSE,
- );
- }
- }
|