/** * @param EventArgs $args * @return mixed|void */ public function preUpdate(EventArgs $args) { $entity = $args->getEntity(); $em = $args->getEntityManager(); $uow = $em->getUnitOfWork(); if ($entity instanceof ContentRoute) { $template = $this->templates[$entity->getTemplateName()]; $changeset = $uow->getEntityChangeSet($entity); if (isset($changeset['templateName']) && $args->hasChangedField('templateName')) { $entity->setTemplate($template['template']); $entity->setController($template['controller']); $uow->recomputeSingleEntityChangeSet($em->getClassMetadata("NetworkingInitCmsBundle:ContentRoute"), $entity); } } }
public function previusFieldDataIfChanged($fieldName, EventArgs $args) { return $args->hasChangedField($fieldName) ? $args->getOldValue($fieldName) : null; }