diff -u b/src/Form/JobItemForm.php b/src/Form/JobItemForm.php --- b/src/Form/JobItemForm.php +++ b/src/Form/JobItemForm.php @@ -483,13 +483,10 @@ $translation_text = isset($data_item['#translation']['#text']) ? $data_item['#translation']['#text'] : ''; $contexts = [$data_item, $this->entity]; \Drupal::moduleHandler()->alter('tmgmt_data_item_text_output', $source_text, $translation_text, $contexts); - $data_item['#text'] = $source_text; - $data_item['#translation']['#text'] = $translation_text; - // Build source and translation areas. - $item_element = $this->buildSource($item_element, $data_item, $rows, $form_state); - $item_element = $this->buildTranslation($item_element, $data_item, $rows, $form_state, $is_preliminary); + $item_element = $this->buildSource($item_element, $source_text, $data_item, $rows, $form_state); + $item_element = $this->buildTranslation($item_element, $translation_text, $data_item, $rows, $form_state, $is_preliminary); $item_element = $this->buildChangedSource($item_element, $form_state, $field_name, $key, $ajax_id); @@ -961,6 +958,8 @@ * * @param array $item_element * The form element for the data item. + * @param string $translation_text + * The translation's text to display in the item element. * @param array $data_item * The data item. * @param int $rows @@ -973,11 +972,11 @@ * @return array * The form element for the data item. */ - protected function buildTranslation($item_element, $data_item, $rows, FormStateInterface $form_state, $is_preliminary) { + protected function buildTranslation($item_element, $translation_text, $data_item, $rows, FormStateInterface $form_state, $is_preliminary) { if (!empty($data_item['#format']) && $this->config('tmgmt.settings')->get('respect_text_format') && !$form_state->has('accept_item')) { $item_element['translation'] = array( '#type' => 'text_format', - '#default_value' => isset($data_item['#translation']['#text']) ? $data_item['#translation']['#text'] : NULL, + '#default_value' => $translation_text, '#title' => t('Translation'), '#disabled' => $this->entity->isAccepted() || $is_preliminary, '#rows' => $rows, @@ -996,7 +995,7 @@ else { $item_element['translation'] = array( '#type' => 'textarea', - '#default_value' => isset($data_item['#translation']['#text']) ? $data_item['#translation']['#text'] : NULL, + '#default_value' => $translation_text, '#title' => t('Translation'), '#disabled' => $this->entity->isAccepted() || $is_preliminary, '#rows' => $rows, @@ -1037,6 +1036,8 @@ * * @param array $item_element * The form element for the data item. + * @param string $source_text + * The source's text to display in the item element. * @param array $data_item * The data item. * @param int $rows @@ -1047,11 +1048,11 @@ * @return array * The form element for the data item. */ - protected function buildSource($item_element, $data_item, $rows, FormStateInterface $form_state) { + protected function buildSource($item_element, $source_text, $data_item, $rows, FormStateInterface $form_state) { if (!empty($data_item['#format']) && $this->config('tmgmt.settings')->get('respect_text_format') && !$form_state->has('accept_item')) { $item_element['source'] = array( '#type' => 'text_format', - '#default_value' => $data_item['#text'], + '#default_value' => $source_text, '#title' => t('Source'), '#disabled' => TRUE, '#rows' => $rows, @@ -1070,7 +1071,7 @@ else { $item_element['source'] = array( '#type' => 'textarea', - '#default_value' => $data_item['#text'], + '#default_value' => $source_text, '#title' => t('Source'), '#disabled' => TRUE, '#rows' => $rows,