class FileTranslatorUi in Translation Management Tool 8
File translator UI.
Hierarchy
- class \Drupal\Component\Plugin\PluginBase implements DerivativeInspectionInterface, PluginInspectionInterface
- class \Drupal\Core\Plugin\PluginBase uses DependencySerializationTrait, MessengerTrait, StringTranslationTrait
- class \Drupal\tmgmt\TranslatorPluginUiBase implements TranslatorPluginUiInterface
- class \Drupal\tmgmt_file\FileTranslatorUi
- class \Drupal\tmgmt\TranslatorPluginUiBase implements TranslatorPluginUiInterface
- class \Drupal\Core\Plugin\PluginBase uses DependencySerializationTrait, MessengerTrait, StringTranslationTrait
Expanded class hierarchy of FileTranslatorUi
File
- translators/
tmgmt_file/ src/ FileTranslatorUi.php, line 14
Namespace
Drupal\tmgmt_fileView source
class FileTranslatorUi extends TranslatorPluginUiBase {
/**
* {@inheritdoc}
*/
public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
$form = parent::buildConfigurationForm($form, $form_state);
/** @var \Drupal\tmgmt\TranslatorInterface $translator */
$translator = $form_state
->getFormObject()
->getEntity();
$form['export_format'] = array(
'#type' => 'radios',
'#title' => t('Export to'),
'#options' => \Drupal::service('plugin.manager.tmgmt_file.format')
->getLabels(),
'#default_value' => $translator
->getSetting('export_format'),
'#description' => t('Please select the format you want to export data.'),
);
$xliff_states = [
'#states' => [
'visible' => [
':input[name="settings[export_format]"]' => [
'value' => 'xlf',
],
],
],
];
$form['format_configuration']['target'] = [
'#type' => 'select',
'#title' => t('Target content'),
'#options' => [
'source' => t('Same as source'),
],
'#empty_option' => t('Empty'),
'#default_value' => $translator
->getSetting('format_configuration.target'),
'#description' => t('Defines what the <target> in the XLIFF file should contain, either empty or the same as the source text.'),
] + $xliff_states;
$form['xliff_cdata'] = [
'#type' => 'checkbox',
'#title' => t('XLIFF CDATA'),
'#description' => t('Check to use CDATA for import/export.'),
'#default_value' => $translator
->getSetting('xliff_cdata'),
] + $xliff_states;
$form['xliff_processing'] = [
'#type' => 'checkbox',
'#title' => t('Extended XLIFF processing'),
'#description' => t('Check to further process content semantics and mask HTML tags instead just escaping it.'),
'#default_value' => $translator
->getSetting('xliff_processing'),
] + $xliff_states;
$form['xliff_message'] = [
'#type' => 'container',
'#markup' => t('By selecting CDATA option, XLIFF processing will be ignored.'),
'#attributes' => [
'class' => [
'messages messages--warning',
],
],
] + $xliff_states;
$form['allow_override'] = array(
'#type' => 'checkbox',
'#title' => t('Allow to override the format per job'),
'#default_value' => $translator
->getSetting('allow_override'),
);
// Any visible, writeable wrapper can potentially be used for the files
// directory, including a remote file system that integrates with a CDN.
foreach (\Drupal::service('stream_wrapper_manager')
->getDescriptions(StreamWrapperInterface::WRITE_VISIBLE) as $scheme => $description) {
$options[$scheme] = Html::escape($description);
}
if (!empty($options)) {
$form['scheme'] = array(
'#type' => 'radios',
'#title' => t('Download method'),
'#default_value' => $translator
->getSetting('scheme'),
'#options' => $options,
'#description' => t('Choose the location where exported files should be stored. The usage of a protected location (e.g. private://) is recommended to prevent unauthorized access.'),
);
}
return $form;
}
/**
* {@inheritdoc}
*/
public function checkoutSettingsForm(array $form, FormStateInterface $form_state, JobInterface $job) {
if ($job
->getTranslator()
->getSetting('allow_override')) {
$form['export_format'] = array(
'#type' => 'radios',
'#title' => t('Export to'),
'#options' => \Drupal::service('plugin.manager.tmgmt_file.format')
->getLabels(),
'#default_value' => $job
->getTranslator()
->getSetting('export_format'),
'#description' => t('Please select the format you want to export data.'),
);
}
return parent::checkoutSettingsForm($form, $form_state, $job);
}
/**
* {@inheritdoc}
*/
public function checkoutInfo(JobInterface $job) {
// If the job is finished, it's not possible to import translations anymore.
if ($job
->isFinished()) {
return parent::checkoutInfo($job);
}
$form = array(
'#type' => 'fieldset',
'#title' => t('Import translated file'),
);
$supported_formats = array_keys(\Drupal::service('plugin.manager.tmgmt_file.format')
->getDefinitions());
$form['file'] = array(
'#type' => 'file',
'#title' => t('File'),
'#size' => 50,
'#description' => t('Supported formats: @formats.', array(
'@formats' => implode(', ', $supported_formats),
)),
);
$form['submit'] = array(
'#type' => 'submit',
'#value' => t('Import'),
'#submit' => array(
'tmgmt_file_import_form_submit',
),
);
return $this
->checkoutInfoWrapper($job, $form);
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
DependencySerializationTrait:: |
protected | property | An array of entity type IDs keyed by the property name of their storages. | |
DependencySerializationTrait:: |
protected | property | An array of service IDs keyed by property name used for serialization. | |
DependencySerializationTrait:: |
public | function | 1 | |
DependencySerializationTrait:: |
public | function | 2 | |
FileTranslatorUi:: |
public | function |
Form constructor. Overrides TranslatorPluginUiBase:: |
|
FileTranslatorUi:: |
public | function |
Retrieves information about a translation job. Overrides TranslatorPluginUiBase:: |
|
FileTranslatorUi:: |
public | function |
Form callback for the checkout settings form. Overrides TranslatorPluginUiBase:: |
|
MessengerTrait:: |
protected | property | The messenger. | 29 |
MessengerTrait:: |
public | function | Gets the messenger. | 29 |
MessengerTrait:: |
public | function | Sets the messenger. | |
PluginBase:: |
protected | property | Configuration information passed into the plugin. | 1 |
PluginBase:: |
protected | property | The plugin implementation definition. | 1 |
PluginBase:: |
protected | property | The plugin_id. | |
PluginBase:: |
constant | A string which is used to separate base plugin IDs from the derivative ID. | ||
PluginBase:: |
public | function |
Gets the base_plugin_id of the plugin instance. Overrides DerivativeInspectionInterface:: |
|
PluginBase:: |
public | function |
Gets the derivative_id of the plugin instance. Overrides DerivativeInspectionInterface:: |
|
PluginBase:: |
public | function |
Gets the definition of the plugin implementation. Overrides PluginInspectionInterface:: |
3 |
PluginBase:: |
public | function |
Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface:: |
|
PluginBase:: |
public | function | Determines if the plugin is configurable. | |
PluginBase:: |
public | function | Constructs a \Drupal\Component\Plugin\PluginBase object. | 92 |
StringTranslationTrait:: |
protected | property | The string translation service. | 1 |
StringTranslationTrait:: |
protected | function | Formats a string containing a count of items. | |
StringTranslationTrait:: |
protected | function | Returns the number of plurals supported by a given language. | |
StringTranslationTrait:: |
protected | function | Gets the string translation service. | |
StringTranslationTrait:: |
public | function | Sets the string translation service to use. | 2 |
StringTranslationTrait:: |
protected | function | Translates a string to the current language or to a given language. | |
TranslatorPluginUiBase:: |
public | function | Adds a "Connect" button to a form. | |
TranslatorPluginUiBase:: |
public | function | Provides a simple wrapper for the checkout info fieldset. | |
TranslatorPluginUiBase:: |
public | function |
Form callback for the data item element form. Overrides TranslatorPluginUiInterface:: |
1 |
TranslatorPluginUiBase:: |
public | function |
Form callback for the job item review form. Overrides TranslatorPluginUiInterface:: |
|
TranslatorPluginUiBase:: |
public | function |
Submit callback for the job item review form. Overrides TranslatorPluginUiInterface:: |
|
TranslatorPluginUiBase:: |
public | function |
Validation callback for the job item review form. Overrides TranslatorPluginUiInterface:: |
|
TranslatorPluginUiBase:: |
public | function |
Form submission handler. Overrides TranslatorPluginUiInterface:: |
|
TranslatorPluginUiBase:: |
public | function | Handles submit call of "Connect" button. | |
TranslatorPluginUiBase:: |
public | function |
Form validation handler. Overrides TranslatorPluginUiInterface:: |