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