https://issues.civicrm.org/jira/browse/CRM-15556
// Recursively set defaults for nested fields
if (isset($contact[$name]) && is_array($contact[$name]) && ($name == 'onbehalf' || $name == 'honor')) {
foreach ($contact[$name] as $fieldName => $fieldValue) {
- $defaults["{$name}[{$fieldName}]"] = $fieldValue;
+ if (is_array($fieldValue)) {
+ foreach ($fieldValue as $key => $value) {
+ $defaults["{$name}[{$fieldName}][{$key}]"] = $value;
+ }
+ }
+ else {
+ $defaults["{$name}[{$fieldName}]"] = $fieldValue;
+ }
}
}
elseif (isset($contact[$name])) {