|
|
@@ -1406,14 +1406,16 @@ class DboSource extends DataSource {
|
|
|
}
|
|
|
} else {
|
|
|
foreach ($merge as $i => $row) {
|
|
|
+ $insert = array();
|
|
|
if (count($row) === 1) {
|
|
|
- if (empty($data[$association]) || (isset($data[$association]) && !in_array($row[$association], $data[$association]))) {
|
|
|
- $data[$association][] = $row[$association];
|
|
|
- }
|
|
|
- } elseif (!empty($row)) {
|
|
|
- $tmp = array_merge($row[$association], $row);
|
|
|
- unset($tmp[$association]);
|
|
|
- $data[$association][] = $tmp;
|
|
|
+ $insert = $row[$association];
|
|
|
+ } elseif (isset($row[$association])) {
|
|
|
+ $insert = array_merge($row[$association], $row);
|
|
|
+ unset($insert[$association]);
|
|
|
+ }
|
|
|
+
|
|
|
+ if (empty($data[$association]) || (isset($data[$association]) && !in_array($insert, $data[$association], true))) {
|
|
|
+ $data[$association][] = $insert;
|
|
|
}
|
|
|
}
|
|
|
}
|