tmgmt_smartling.api.php 2.03 KB
Newer Older
1
2
3
4
5
6
7
<?php

/**
 * @file
 * Hooks provided by the TMGMT Smartling module.
 */

8
use Drupal\tmgmt\JobInterface;
9
10
11
12
13
14
15
16
17
18
19
20
use Drupal\tmgmt\JobItemInterface;

/**
 * Alter entity context url.
 *
 * @param string $url
 * @param \Drupal\tmgmt\JobItemInterface $job_item
 */
function hook_tmgmt_smartling_context_url_alter(&$url, JobItemInterface $job_item) {
  // Set NULL to avoid creating context for a content from $job_item.
  $url = NULL;
}
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35

/**
 * Alter translation file name.
 *
 * @param string $name
 * @param JobInterface $job
 */
function hook_tmgmt_smartling_filename_alter(&$name, JobInterface $job) {
  // Example: filename = job's label. If you have only one job item in a job
  // then file name will look like "[node_title]_job_id_[id]". If there are more
  // than 1 job item inside a job then filename will look like
  // "[node_title]_and_[n]_more_job_id_[id]". If you enter your own job label
  // then filename will look like "[your_own_label]_job_id_[id]"
  $name = preg_replace('/[^a-zA-Z0-9_\-\:]/i', '_', $job->label()) . '_job_id_' . $job->id();
}
Loparev's avatar
Loparev committed
36
37
38
39
40
41

/**
 * Alter daily bucket job name.
 *
 * @param string $name
 */
42
function hook_tmgmt_smartling_bucket_job_name_alter(&$name) {
Loparev's avatar
Loparev committed
43
44
  $name = 'My daily bucket job';
}
45
46
47
48
49
50
51
52
53

/**
 * Alter directives for the file being uploaded.
 *
 * @param array $directives
 */
function hook_tmgmt_smartling_directives_alter(array &$directives) {
  $directives['smartling.force_inline_for_tags'] = 'icon';
}
Loparev's avatar
Loparev committed
54
55
56
57
58
59
60
61
62
63

/**
 * Alter list of base form ids of entities which are enabled for lock fields
 * mechanism.
 *
 * @param array $forms_to_enable_locked_fields
 */
function hook_tmgmt_smartling_locked_fields_base_form_id_list_alter(array &$forms_to_enable_locked_fields) {
  $forms_to_enable_locked_fields[] = 'my_custom_entity_base_form';
}
64
65
66
67
68
69

/**
 * Alter data to be exported into an XML file.
 *
 * @param array $data
 */
Loparev's avatar
Loparev committed
70
function hook_tmgmt_smartling_xml_file_export_data_alter(array &$data) {}
71
72
73
74
75
76

/**
 * Alter data to be imported from an XML file.
 *
 * @param array $data
 */
Loparev's avatar
Loparev committed
77
function hook_tmgmt_smartling_xml_file_import_data_alter(array &$data) {}