diff -u b/src/DiffEntityComparison.php b/src/DiffEntityComparison.php --- b/src/DiffEntityComparison.php +++ b/src/DiffEntityComparison.php @@ -151,8 +151,8 @@ for ($delta = 0; $delta < $max; $delta++) { if (isset($left_values[$delta])) { $value = $left_values[$delta]; - if (isset($value['thumbnail'])) { - $result['#left_thumbnail'] = $value['thumbnail']; + if (isset($value['#thumbnail'])) { + $result['#left_thumbnail'][] = $value['#thumbnail']; } else { $result['#left'][] = is_array($value) ? implode("\n", $value) : $value; @@ -160,8 +160,8 @@ } if (isset($right_values[$delta])) { $value = $right_values[$delta]; - if (isset($value['thumbnail'])) { - $result['#right_thumbnail'] = $value['thumbnail']; + if (isset($value['#thumbnail'])) { + $result['#right_thumbnail'][] = $value['#thumbnail']; } else { $result['#right'][] = is_array($value) ? implode("\n", $value) : $value; diff -u b/src/Plugin/diff/Field/ImageFieldBuilder.php b/src/Plugin/diff/Field/ImageFieldBuilder.php --- b/src/Plugin/diff/Field/ImageFieldBuilder.php +++ b/src/Plugin/diff/Field/ImageFieldBuilder.php @@ -58,17 +58,19 @@ $separator = $this->configuration['property_separator'] == 'nl' ? "\n" : $this->configuration['property_separator']; $result[$field_key] = implode($separator, $result[$field_key]); - if (isset($values['target_id'])) { - $image = $fileManager->load($values['target_id']); - $image_style[$field_key]['thumbnail'] = array( - '#theme' => 'image_style', - '#uri' => $image->getFileUri(), - '#width' => 300, - '#height' => 300, - '#style_name' => 'thumbnail', - '#alt' => 'alt', - ); - $result = array_merge($result, $image_style); + if ($this->configuration['compare_alt_field']) { + if (isset($values['target_id'])) { + $image = $fileManager->load($values['target_id']); + $image_style[$field_key]['#thumbnail'] = array( + '#theme' => 'image_style', + '#uri' => $image->getFileUri(), + '#width' => 300, + '#height' => 300, + '#style_name' => 'thumbnail', + '#alt' => 'alt', + ); + $result = array_merge($result, $image_style); + } } } } @@ -109,6 +111,12 @@ 'nl' => $this->t('New line'), ), ); + $form['show_thumbnail'] = [ + '#type' => 'checkbox', + '#title' => $this->t('Show image thumbnail'), + '#default_value' => $this->configuration['show_thumbnail'], + '#description' => $this->t('Displays the image field as thumbnail.'), + ]; return parent::buildConfigurationForm($form, $form_state); } @@ -121,6 +129,7 @@ $this->configuration['compare_alt_field'] = $form_state->getValue('compare_alt_field'); $this->configuration['compare_title_field'] = $form_state->getValue('compare_title_field'); $this->configuration['property_separator'] = $form_state->getValue('property_separator'); + $this->configuration['show_thumbnail'] = $form_state->getValue('show_thumbnail'); parent::submitConfigurationForm($form, $form_state); } @@ -134,6 +143,7 @@ 'compare_alt_field' => 1, 'compare_title_field' => 1, 'property_separator' => 'nl', + 'show_thumbnail' => 1, ); $default_configuration += parent::defaultConfiguration(); diff -u b/src/Plugin/diff/Layout/SplitFieldsDiffLayout.php b/src/Plugin/diff/Layout/SplitFieldsDiffLayout.php --- b/src/Plugin/diff/Layout/SplitFieldsDiffLayout.php +++ b/src/Plugin/diff/Layout/SplitFieldsDiffLayout.php @@ -148,13 +148,13 @@ ); if (isset($field['#data']['#left_thumbnail'])) { - $field_diff_rows['thumbnail'][1] = [ + $field_diff_rows['#thumbnail'][1] = [ 'data' => $field['#data']['#left_thumbnail'], 'class' => '', ]; } if (isset($field['#data']['#right_thumbnail'])) { - $field_diff_rows['thumbnail'][3] = [ + $field_diff_rows['#thumbnail'][3] = [ 'data' => $field['#data']['#right_thumbnail'], 'class' => '', ];