@@ 174-183 (lines=10) @@ | ||
171 | $changeset = $model->getChangeSet(); |
|
172 | ||
173 | $update = []; |
|
174 | foreach ($changeset['attributes'] as $key => $values) { |
|
175 | if (null === $values['new']) { |
|
176 | $op = '$unset'; |
|
177 | $value = 1; |
|
178 | } else { |
|
179 | $op = '$set'; |
|
180 | $value = $this->getFormatter()->getAttributeDbValue($metadata->getAttribute($key), $values['new']); |
|
181 | } |
|
182 | $update[$op][$key] = $value; |
|
183 | } |
|
184 | ||
185 | // @todo Must prevent inverse relationships from persisting |
|
186 | foreach ($changeset['hasOne'] as $key => $values) { |
|
@@ 186-195 (lines=10) @@ | ||
183 | } |
|
184 | ||
185 | // @todo Must prevent inverse relationships from persisting |
|
186 | foreach ($changeset['hasOne'] as $key => $values) { |
|
187 | if (null === $values['new']) { |
|
188 | $op = '$unset'; |
|
189 | $value = 1; |
|
190 | } else { |
|
191 | $op = '$set'; |
|
192 | $value = $this->getFormatter()->getHasOneDbValue($metadata->getRelationship($key), $values['new']); |
|
193 | } |
|
194 | $update[$op][$key] = $value; |
|
195 | } |
|
196 | ||
197 | foreach ($changeset['hasMany'] as $key => $values) { |
|
198 | if (null === $values['new']) { |
|
@@ 197-206 (lines=10) @@ | ||
194 | $update[$op][$key] = $value; |
|
195 | } |
|
196 | ||
197 | foreach ($changeset['hasMany'] as $key => $values) { |
|
198 | if (null === $values['new']) { |
|
199 | $op = '$unset'; |
|
200 | $value = 1; |
|
201 | } else { |
|
202 | $op = '$set'; |
|
203 | $value = $this->getFormatter()->getHasManyDbValue($metadata->getRelationship($key), $values['new']); |
|
204 | } |
|
205 | $update[$op][$key] = $value; |
|
206 | } |
|
207 | ||
208 | if (empty($update)) { |
|
209 | return $model; |