Beispiel #1
0
 /**
  * @param \Carrooi\Doctrine\Entities\BaseEntity $entity
  * @return \Carrooi\Doctrine\Entities\BaseEntity
  */
 public function save(BaseEntity $entity)
 {
     try {
         $this->dao->add($entity);
         $this->dao->getEntityManager()->flush();
     } catch (UniqueConstraintViolationException $e) {
         $e = DuplicateEntryException::createFromDuplicateEntryException($e, $this->getDao(), $entity);
         $this->processDuplicateEntryException($e);
     }
     return $entity;
 }
Beispiel #2
0
 /**
  * @param Nette\Utils\ArrayHash $vals
  *
  * @Secure\Create(allow="admin")
  * @Secure\Update(allow="admin")
  */
 public function save(Nette\Utils\ArrayHash $vals)
 {
     foreach ($vals as $key => $value) {
         if ($entity = $this->findOneBy(['key' => $key])) {
             if ($entity->value != $value) {
                 $entity->value = $value;
                 $this->dao->add($entity);
             }
         } else {
             $entity = new Entity\Setting();
             $entity->key = $key;
             $entity->value = $value;
             $this->dao->add($entity);
         }
     }
     $em = $this->dao->getEntityManager();
     $em->flush();
 }
Beispiel #3
0
 /**
  * Persists given entities, but does not flush.
  *
  * @param object|array|\Traversable $entity
  * @param object|array|\Traversable $relations
  * @throws InvalidArgumentException
  * @return array
  */
 public function add($entity, $relations = NULL)
 {
     return $this->dao->add($entity, $relations);
 }