From ef154ff5e9133b62c57b02fffefc6d509b845025 Mon Sep 17 00:00:00 2001 From: Eileen McNaughton Date: Tue, 28 Nov 2023 16:14:48 +1300 Subject: [PATCH] Set field to do-not-import if not configured --- CRM/Contact/Import/Form/MapField.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/CRM/Contact/Import/Form/MapField.php b/CRM/Contact/Import/Form/MapField.php index 06680d140f..583ad04dc0 100644 --- a/CRM/Contact/Import/Form/MapField.php +++ b/CRM/Contact/Import/Form/MapField.php @@ -275,7 +275,12 @@ class CRM_Contact_Import_Form_MapField extends CRM_Import_Form_MapField { $last_key = array_key_last($mapper[$i]); } elseif ($this->getSubmittedValue('savedMapping') && $processor->getFieldName($i)) { - $defaults["mapper[$i]"] = $processor->getSavedQuickformDefaultsForColumn($i); + $defaultField = $processor->getSavedQuickformDefaultsForColumn($i); + if (!array_key_exists($defaultField[0], $this->_mapperFields)) { + $defaultField = ['do_not_import']; + CRM_Core_Session::setStatus(ts('Data was configured to be imported to column %1 but it is not available. The field has been set to "%2"', [1 => $columnHeader, 2 => $this->_mapperFields['do_not_import']])); + } + $defaults["mapper[$i]"] = $defaultField; $last_key = array_key_last($defaults["mapper[$i]"]) ?? 0; } else { -- 2.25.1