Example #1
0
 public function preUpdate(PreUpdateEventArgs $eventArgs)
 {
     $entity = $eventArgs->getEntity();
     if ($entity instanceof StampEntityInterface) {
         $entity->setModified(new \DateTime());
     }
 }
 /**
  * Before an update we check that the product categories are right.
  *
  * @param PreUpdateEventArgs $event The pre update event.
  */
 public function preUpdate(PreUpdateEventArgs $event)
 {
     $entity = $event->getEntity();
     if ($entity instanceof CategorizableInterface) {
         $this->categoryIntegrityFixer->fixCategoriesIntegrity($entity);
     }
 }
Example #3
0
 public function preUpdate(User $user, PreUpdateEventArgs $event)
 {
     if ($event->hasChangedField('email')) {
         $token = $this->tokenGenerator->generateEmailConfirmationToken($user);
         $this->emailDispatcher->sendEmailVerifyEmail($user, $token);
     }
 }
Example #4
0
 private function getChangesets(PreUpdateEventArgs $args)
 {
     $oldValues = array();
     $newValues = array();
     $fields = array('avatar' => 'Фото', 'firstName' => 'Имя', 'lastName' => 'Фамилия', 'surName' => 'Отчество', 'birthdate' => 'Дата рождения', 'hideBirthdate' => 'Скрывать дату рождения', 'city' => 'Город', 'address' => 'Адрес', 'university' => 'ВУЗ', 'graduateYear' => 'Год окончания ВУЗа', 'primarySpecialty' => 'Основная специальность', 'secondarySpecialty' => 'Второстепенная специальность', 'specialization' => 'Специализация', 'academicTitle' => 'Звание', 'jobType' => 'Место работы', 'job' => 'Название организации', 'jobAlignment' => 'Место организации', 'phone' => 'Телефон', 'position' => 'Должность', 'diploma' => 'Диплом ВУЗа', 'achievements' => 'О себе', 'academicDegree' => 'Ученая степень', 'dissertation' => 'Тема диссертации', 'diplomaScientic' => 'Диплом ученой степени', 'digestSubscribed' => 'Подписка на дайджест', 'commentSubscribed' => 'Подписка ответов на комментарии');
     foreach ($fields as $field => $label) {
         if ($args->hasChangedField($field)) {
             $old = $args->getOldValue($field);
             $new = $args->getNewValue($field);
             if ($old == $new || is_array($old) && empty($new)) {
                 continue;
             }
             if ($new instanceof UploadedFile) {
                 $this->imgFields[$field] = $label;
                 $oldValues[] = "<b>{$label}:</b> ~";
             } else {
                 $oldValues[] = "<b>{$label}:</b> " . ($old instanceof \DateTime ? $old->format('d.m.Y') : $old);
                 $newValues[] = "<b>{$label}:</b> " . ($new instanceof \DateTime ? $new->format('d.m.Y') : $new);
             }
         }
     }
     if (count($oldValues)) {
         $oldValues = implode('<br/>', $oldValues);
         $newValues = implode('<br/>', $newValues);
         return array($oldValues, $newValues);
     }
     return array(null, null);
 }
 /**
  * @param PreUpdateEventArgs $args
  */
 public function preUpdate(PreUpdateEventArgs $args)
 {
     if (!$args->getEntity() instanceof User || !$args->hasChangedField('email')) {
         return;
     }
     $args->getEntity()->setGoogleId(null);
 }
Example #6
0
 /**
  * @ORM\PreUpdate
  */
 public function preUpdate(PreUpdateEventArgs $eventArgs)
 {
     if (!$this->isEdited) {
         $this->isEdited = true;
         $this->backupTime = $eventArgs->getOldValue('time');
     }
 }
 /**
  * @ORM\PreUpdate
  */
 public function preUpdate($item, PreUpdateEventArgs $event)
 {
     if ($item->getLevel() > 0) {
         $item->setRootSequence(NULL);
     } elseif ($event->hasChangedField('parent') && is_null($event->getNewValue('parent')) && !is_null($event->getOldValue('parent'))) {
         $this->setMaxRootSequence($item, $event);
     } else {
         if (!$event->hasChangedField('rootSequence')) {
             return;
         }
         $oldSequence = $event->getOldValue('rootSequence');
         $newSequence = $event->getNewValue('rootSequence');
         if ($oldSequence === $newSequence) {
             return;
         }
         $em = $event->getEntityManager();
         $qb = $em->createQueryBuilder();
         $qb->update(get_class($item), 'i')->where('i.rootSequence = ' . $newSequence);
         if ($newSequence > $oldSequence) {
             $qb->set('i.rootSequence', 'i.rootSequence - 1');
         } elseif ($newSequence < $oldSequence) {
             $qb->set('i.rootSequence', 'i.rootSequence + 1');
         }
         $qb->getQuery()->execute();
     }
 }
 /**
  * Before an update we check that the product categories are right.
  *
  * @param PreUpdateEventArgs $event The pre update event.
  */
 public function preUpdate(PreUpdateEventArgs $event)
 {
     $entity = $event->getEntity();
     if ($entity instanceof ProductInterface) {
         $this->categoryIntegrityFixer->fixProduct($entity);
     }
 }
Example #9
0
 public function preUpdate(PreUpdateEventArgs $args)
 {
     $entity = $args->getEntity();
     if ($entity instanceof ContainerAwareInterface) {
         $entity->setContainer($this->container);
     }
 }
 /**
  * sets the modification date
  */
 public function preUpdate(Domains $domain, PreUpdateEventArgs $event)
 {
     $domain->setModified(new \DateTime());
     if ($event->hasChangedField('name')) {
         $domain->setNeedsSoaUpdate(true);
     }
     return true;
 }
 public function preUpdate(PreUpdateEventArgs $event)
 {
     $file = $event->getEntity();
     if (!$file instanceof File) {
         return;
     }
     $this->updateFile($file);
 }
 /**
  * Pre update event listener.
  *
  * @param PreUpdateEventArgs $eventArgs The pre update event args.
  *
  * @return $this Self object
  */
 public function preUpdate(PreUpdateEventArgs $eventArgs)
 {
     $entity = $eventArgs->getEntity();
     if ($entity instanceof CategoryInterface) {
         $this->removeParentCategoryForRootCategory($entity);
     }
     return $this;
 }
 public function preUpdate(PreUpdateEventArgs $eventArgs)
 {
     $entity = $eventArgs->getEntity();
     if (!$entity instanceof User) {
         return;
     }
     $this->encodePassword($entity);
 }
Example #14
0
 /**
  * @param PreUpdateEventArgs $event
  */
 public function preUpdate(PreUpdateEventArgs $event)
 {
     $entity = $event->getEntity();
     // if subtotal or status has been changed
     if ($this->isOrderValid($entity) && array_intersect(['subtotalAmount', 'discountAmount', 'status'], array_keys($event->getEntityChangeSet()))) {
         $this->ordersForUpdate[$entity->getId()] = true;
     }
 }
 /**
  * Cleans the facebbok username.
  *
  * @param PreUpdateEventArgs $args
  */
 public function preUpdate(PreUpdateEventArgs $args)
 {
     $entity = $args->getEntity();
     if ($entity instanceof Plugin && $entity->getNamespace() == 'Elcodi\\Plugin\\TwitterBundle\\ElcodiTwitterBundle') {
         $twitterAccount = $entity->getConfiguration()->getFieldValue('twitter_account');
         $entity->getConfiguration()->setFieldValue('twitter_account', $this->twitterUsernameCleaner->clean($twitterAccount));
     }
 }
Example #16
0
 /**
  * @param PreUpdateEventArgs $event
  */
 public function preUpdate(PreUpdateEventArgs $event)
 {
     $user = $event->getEntity();
     if (!$user instanceof User) {
         return;
     }
     $this->updateUser($user);
 }
 public function preUpdate(PreUpdateEventArgs $args)
 {
     //return;
     $em = $args->getEntityManager();
     $entity = $args->getEntity();
     if ($entity instanceof Invoice && $entity->needsNumber()) {
         $entity->setNumber($em->getRepository('SiwappInvoiceBundle:Invoice')->getNextNumber($entity->getSerie()));
     }
 }
 public function preUpdate(PreUpdateEventArgs $args)
 {
     $entity = $args->getEntity();
     if ($entity instanceof Issue) {
         if ($args->hasChangedField('assignee')) {
             $entity->addCollaborator($entity->getAssignee());
         }
     }
 }
Example #19
0
 public function preUpdate(PreUpdateEventArgs $args)
 {
     $entity = $args->getEntity();
     if ($entity instanceof $this->orderClass) {
         $entity->setUpdatedAt(new \DateTime());
         $this->updatePrices($entity);
         $this->updateFields($entity);
     }
 }
Example #20
0
 /**
  * Delete old avatar image from disk if it has been changed
  *
  * @param User $user
  * @param PreUpdateEventArgs $event
  */
 public function preUpdate(User $user, PreUpdateEventArgs $event)
 {
     if ($event->hasChangedField('avatarImage')) {
         $oldAvatarImage = $event->getOldValue('avatarImage');
         if (!empty($oldAvatarImage)) {
             $this->userService->deleteAvatar($oldAvatarImage);
         }
     }
 }
 public function preUpdate(PreUpdateEventArgs $eventArgs)
 {
     if ($eventArgs->getEntity() instanceof Tenue) {
         if ($eventArgs->hasChangedField('nombre_rendu')) {
             $date = new \DateTime('now');
             $eventArgs->getEntity()->setDateRendu($date);
         }
     }
 }
Example #22
0
 /**
  * @param PreUpdateEventArgs $args
  */
 public function preUpdate(PreUpdateEventArgs $args)
 {
     $entity = $args->getEntity();
     if (!$this->isContactEntity($entity)) {
         return;
     }
     /** @var Contact $entity */
     $this->setUpdatedProperties($entity, $args->getEntityManager(), true);
 }
Example #23
0
 /**
  * Close the match
  *
  * @param PreUpdateEventArgs $event
  */
 public function preUpdate(PreUpdateEventArgs $event)
 {
     /** @var EloVersusInterface $resource */
     $resource = $event->getEntity();
     if (!$this->isValid($resource)) {
         return;
     }
     $resource->setEndedAt(new \DateTime());
 }
 public function preUpdate(PreUpdateEventArgs $eventArgs)
 {
     if ($eventArgs->getEntity() instanceof Badge) {
         if ($eventArgs->hasChangedField('remis') && $eventArgs->getNewValue('remis') == false) {
             $date = new \DateTime('now');
             $eventArgs->getEntity()->setDateRendu($date);
         }
     }
 }
Example #25
0
 /** @ORM\PreUpdate */
 public function preUpdate(Company $company, PreUpdateEventArgs $event)
 {
     $entity = $event->getEntity();
     $entityManager = $event->getEntityManager();
     if ($event->hasChangedField('identification')) {
         $status = $entityManager->getRepository('MainCommonBundle:Status\\PhotographerStatus')->findOneById(1);
         //To verify
         $company->setStatus($status);
     }
 }
Example #26
0
 /**
  * Prepares all Files linked to an Entity before updating the Files and
  * persisting the changes to the database
  * Once prepared Doctrine UnitOfWork is checked for changes
  * to make sure the changes here are saved when it is flushed.
  * 
  * Called on the preUpdate doctrine event.
  *
  * @param \Doctrine\ORM\Event\PreUpdateEventArgs $args
  * 
  * @return void
  */
 public function preUpdate(PreUpdateEventArgs $args)
 {
     if (!($entity = $args->getEntity()) instanceof FileUpload) {
         return;
     }
     // Prepare multiple Files
     $this->prePersistFilePreparation($entity);
     // Recompute the change set for the Entity and Files. Makes sure the changes are saved properly
     $this->recomputeChangeSetForEntity($entity, $args->getEntityManager());
 }
 public function preUpdate(PreUpdateEventArgs $eventArgs)
 {
     if ($eventArgs->getEntity() instanceof Role && $eventArgs->hasChangedField('role')) {
         $oldRoleName = $eventArgs->getOldValue('role');
         $newRoleName = $eventArgs->getNewValue('role');
         /** @var $aclSidManager AclSidManager */
         $aclSidManager = $this->aclSidManagerLink->getService();
         $aclSidManager->updateSid($aclSidManager->getSid($newRoleName), $oldRoleName);
     }
 }
 public function preUpdate(PreUpdateEventArgs $eventArgs)
 {
     $this->object = $eventArgs->getObject();
     $class = str_replace("Proxies\\__CG__\\", "", get_class($this->object));
     if (!array_key_exists($class, $this->actions)) {
         return;
     }
     $this->logger->debug("[NormalizeListener] Entering NormalizeListener for « preUpdate » event");
     $this->normalizeFields();
 }
 /**
  * Pre update event process
  *
  * @param LifecycleEventArgs $args
  * @return $this
  */
 public function preUpdate(PreUpdateEventArgs $args)
 {
     $entityClass = ClassUtils::getClass($args->getEntity());
     if (array_key_exists($entityClass, $this->notificationRules)) {
         $rules = $this->notificationRules[$entityClass];
         $event = new PreUpdateNotificationEvent($args->getEntity(), $args->getEntityChangeSet(), array('em' => $args->getEntityManager(), 'rules' => $rules));
         $this->eventDispatcher->dispatch('numerique1.notification.event.entity_pre_update', $event);
     }
     return $this;
 }
 private function hasChanged(PreUpdateEventArgs $event)
 {
     $hasChanged = FALSE;
     foreach ($this->propertyInfos as $property => $value) {
         if ($event->hasChangedField($property) && !empty($event->getOldValue($property)) && \trim($event->getOldValue($property)) !== \trim($event->getNewValue($property))) {
             $hasChanged = TRUE;
         }
     }
     return $hasChanged;
 }