Skip to content
Snippets Groups Projects

Issue #3393434 :Reusing an existing field imports its conditional fields.

1 file
+ 9
0
Compare changes
  • Side-by-side
  • Inline
@@ -273,6 +273,9 @@ class ConditionalFieldForm extends FormBase {
@@ -273,6 +273,9 @@ class ConditionalFieldForm extends FormBase {
return;
return;
}
}
 
// Using property name of previous alpha versions as possible fallback.
 
$bundle_name = $this->bundleName ?? ($this->bundle_name ?? NULL);
 
foreach ($fields as $field_name => $label) {
foreach ($fields as $field_name => $label) {
$field = $form_display_entity->getComponent($field_name);
$field = $form_display_entity->getComponent($field_name);
if (empty($field['third_party_settings']['conditional_fields'])) {
if (empty($field['third_party_settings']['conditional_fields'])) {
@@ -280,6 +283,12 @@ class ConditionalFieldForm extends FormBase {
@@ -280,6 +283,12 @@ class ConditionalFieldForm extends FormBase {
}
}
// Create row for existing field's conditions.
// Create row for existing field's conditions.
foreach ($field['third_party_settings']['conditional_fields'] as $uuid => $condition) {
foreach ($field['third_party_settings']['conditional_fields'] as $uuid => $condition) {
 
if ($condition['bundle'] !== $bundle_name) {
 
// Bundle mismatch can happen when form display configuration
 
// derived settings by reusing an existing field.
 
continue;
 
}
 
$parameters = [
$parameters = [
'entity_type' => $condition['entity_type'],
'entity_type' => $condition['entity_type'],
'bundle' => $condition['bundle'],
'bundle' => $condition['bundle'],
Loading