You are here

function webform_form_locale_translate_edit_form_alter in Webform 6.x

Same name and namespace in other branches
  1. 8.5 includes/webform.translation.inc \webform_form_locale_translate_edit_form_alter()

Implements hook_form_FORM_ID_alter() for locale translate edit form.

File

includes/webform.translation.inc, line 33
Webform module translation hooks.

Code

function webform_form_locale_translate_edit_form_alter(&$form, FormStateInterface $form_state) {

  // Don't allow YAML to be validated using locale string translation.
  foreach (Element::children($form['strings']) as $key) {
    $element =& $form['strings'][$key];
    if ($element['original'] && !empty($element['original']['#plain_text']) && preg_match("/'#[^']+':/", $element['original']['#plain_text']) && WebformYaml::isValid($element['original']['#plain_text'])) {
      $element['original'] = [
        '#theme' => 'webform_codemirror',
        '#code' => $element['original']['#plain_text'],
        '#type' => 'yaml',
      ];
      $element['translations'] = [
        '#type' => 'webform_message',
        '#message_type' => 'warning',
        '#message_message' => t("Webforms can only be translated via the Webform's (Configuration) Translate tab."),
      ];
    }
  }
}