Merge pull request #19057 from ixiam/dev/core#2173
[civicrm-core.git] / CRM / Contact / Import / Parser.php
index 80d10ff5865d2dd8c3a294e695f5717a8f7af5a3..e6bfd26f2a460de2982afe4aaa18a7eb66ed6f24 100644 (file)
@@ -548,6 +548,11 @@ abstract class CRM_Contact_Import_Parser extends CRM_Import_Parser {
               'website_type_id' => $this->_activeFields[$i]->_relatedContactWebsiteType,
             ];
           }
+          elseif (empty($this->_activeFields[$i]->_value) && isset($this->_activeFields[$i]->_relatedContactLocType)) {
+            if (empty($params[$this->_activeFields[$i]->_related][$this->_activeFields[$i]->_relatedContactDetails])) {
+              $params[$this->_activeFields[$i]->_related][$this->_activeFields[$i]->_relatedContactDetails] = [];
+            }
+          }
           else {
             $params[$this->_activeFields[$i]->_related][$this->_activeFields[$i]->_relatedContactDetails] = $this->_activeFields[$i]->_value;
           }
@@ -558,18 +563,6 @@ abstract class CRM_Contact_Import_Parser extends CRM_Import_Parser {
     return $params;
   }
 
-  /**
-   * @return array
-   */
-  public function getColumnPatterns() {
-    CRM_Core_Error::deprecatedFunctionWarning('no  longer used- use   CRM_Contact_Import_MetadataTrait');
-    $values = [];
-    foreach ($this->_fields as $name => $field) {
-      $values[$name] = $field->_columnPattern;
-    }
-    return $values;
-  }
-
   /**
    * @param string $name
    * @param $title
@@ -832,6 +825,7 @@ abstract class CRM_Contact_Import_Parser extends CRM_Import_Parser {
               $this->formatLocationBlock($value, $formatted);
             }
             else {
+              // @todo - this is still reachable - e.g. import with related contact info like firstname,lastname,spouse-first-name,spouse-last-name,spouse-home-phone
               CRM_Core_Error::deprecatedFunctionWarning('this is not expected to be reachable now');
               $this->formatContactParameters($value, $formatted);
             }
@@ -1046,17 +1040,7 @@ abstract class CRM_Contact_Import_Parser extends CRM_Import_Parser {
     }
 
     if (isset($values['addressee'])) {
-      if (!empty($params['addressee_id'])) {
-        $addresseeFilter = [
-          'contact_type' => $params['contact_type'] ?? NULL,
-          'greeting_type' => 'addressee',
-        ];
-        $addressee = CRM_Core_PseudoConstant::addressee($addresseeFilter);
-        $params['addressee'] = $addressee[$params['addressee_id']];
-      }
-      else {
-        $params['addressee'] = $values['addressee'];
-      }
+      $params['addressee'] = $values['addressee'];
       return TRUE;
     }
 
@@ -1107,12 +1091,6 @@ abstract class CRM_Contact_Import_Parser extends CRM_Import_Parser {
       return TRUE;
     }
 
-    // get the formatted location blocks into params - w/ 3.0 format, CRM-4605
-    if (!empty($values['location_type_id'])) {
-      CRM_Core_Error::deprecatedFunctionWarning('this is not expected to be reachable now');
-      return $this->formatLocationBlock($values, $params);
-    }
-
     if (isset($values['note'])) {
       // add a note field
       if (!isset($params['note'])) {