@@ 217-232 (lines=16) @@ | ||
214 | * @param mixed $entity |
|
215 | * @param ORM\Event\LifecycleEventArgs $eventArgs |
|
216 | */ |
|
217 | public function preUpdate($entity, Doctrine\ORM\Event\LifecycleEventArgs $eventArgs) |
|
218 | { |
|
219 | $em = $eventArgs->getEntityManager(); |
|
220 | $uow = $em->getUnitOfWork(); |
|
221 | $classMetadata = $em->getClassMetadata(get_class($entity)); |
|
222 | ||
223 | if ($config = $this->driver->getObjectConfigurations($classMetadata->getName())) { |
|
224 | if (isset($config['update'])) { |
|
225 | foreach ($config['update'] as $field) { |
|
226 | if ($classMetadata->getReflectionProperty($field)->getValue($entity) === NULL) { // let manual values |
|
227 | $this->updateField($uow, $entity, $classMetadata, $field); |
|
228 | } |
|
229 | } |
|
230 | } |
|
231 | } |
|
232 | } |
|
233 | ||
234 | /** |
|
235 | * @param mixed $entity |
|
@@ 238-253 (lines=16) @@ | ||
235 | * @param mixed $entity |
|
236 | * @param ORM\Event\LifecycleEventArgs $eventArgs |
|
237 | */ |
|
238 | public function preRemove($entity, Doctrine\ORM\Event\LifecycleEventArgs $eventArgs) |
|
239 | { |
|
240 | $em = $eventArgs->getEntityManager(); |
|
241 | $uow = $em->getUnitOfWork(); |
|
242 | $classMetadata = $em->getClassMetadata(get_class($entity)); |
|
243 | ||
244 | if ($config = $this->driver->getObjectConfigurations($classMetadata->getName())) { |
|
245 | if (isset($config['delete'])) { |
|
246 | foreach ($config['delete'] as $field) { |
|
247 | if ($classMetadata->getReflectionProperty($field)->getValue($entity) === NULL) { // let manual values |
|
248 | $this->updateField($uow, $entity, $classMetadata, $field); |
|
249 | } |
|
250 | } |
|
251 | } |
|
252 | } |
|
253 | } |
|
254 | ||
255 | /** |
|
256 | * Set a custom representation of current user |