Beispiel #1
0
 /**
  * Returns a thumbnail of the given asset with the specified dimensions.
  *
  * @param AssetInterface $asset The asset to render a thumbnail for
  * @param string $ratioMode The thumbnail's ratio mode, see ImageInterface::RATIOMODE_* constants
  * @param integer $maximumWidth The thumbnail's maximum width in pixels
  * @param integer $maximumHeight The thumbnail's maximum height in pixels
  * @param boolean $allowUpScaling Whether the resulting image should be upscaled
  * @return \TYPO3\Media\Domain\Model\Thumbnail The thumbnail or NULL
  */
 public function findOneByAssetAndDimensions(AssetInterface $asset, $ratioMode, $maximumWidth = NULL, $maximumHeight = NULL, $allowUpScaling = NULL)
 {
     /**
      * @var $query \Doctrine\ORM\Query
      */
     $query = $this->entityManager->createQuery('SELECT t FROM TYPO3\\Media\\Domain\\Model\\Thumbnail t WHERE t.originalAsset = :originalAsset AND t.ratioMode = :ratioMode');
     $query->setParameter('originalAsset', $this->persistenceManager->getIdentifierByObject($asset));
     $query->setParameter('ratioMode', $ratioMode);
     if ($maximumWidth !== NULL) {
         $query->setDQL($query->getDQL() . ' AND t.maximumWidth = :maximumWidth');
         $query->setParameter('maximumWidth', $maximumWidth);
     } else {
         $query->setDQL($query->getDQL() . ' AND t.maximumWidth IS NULL');
     }
     if ($maximumHeight !== NULL) {
         $query->setDQL($query->getDQL() . ' AND t.maximumHeight = :maximumHeight');
         $query->setParameter('maximumHeight', $maximumHeight);
     } else {
         $query->setDQL($query->getDQL() . ' AND t.maximumHeight IS NULL');
     }
     if ($allowUpScaling !== NULL) {
         $query->setDQL($query->getDQL() . ' AND t.allowUpScaling = :allowUpScaling');
         $query->setParameter('allowUpScaling', $allowUpScaling);
     } else {
         $query->setDQL($query->getDQL() . ' AND t.allowUpScaling IS NULL');
     }
     $query->setMaxResults(1);
     $result = $query->getOneOrNullResult();
     return $result;
 }
 /**
  * Transforms a string (id) to an object (cathedra).
  *
  * @param string $string
  *
  * @return Cathedra|null
  *
  * @throws TransformationFailedException if object (cathedra) is not found.
  */
 public function reverseTransform($string)
 {
     if (empty($string)) {
         return null;
     }
     $cathedra = $this->om->createQuery('SELECT c FROM LearningMainBundle:Cathedra c WHERE c.title LIKE :letter')->setParameter('letter', $string)->getOneOrNullResult();
     if (null === $cathedra) {
         throw new TransformationFailedException(sprintf('Кафедра "%s" не найдена!', $string));
     }
     return $cathedra;
 }
 /**
  * Returns a thumbnail of the given asset with the specified dimensions.
  *
  * @param AssetInterface $asset The asset to render a thumbnail for
  * @param ThumbnailConfiguration $configuration
  * @return \TYPO3\Media\Domain\Model\Thumbnail The thumbnail or NULL
  */
 public function findOneByAssetAndThumbnailConfiguration(AssetInterface $asset, ThumbnailConfiguration $configuration)
 {
     /**
      * @var $query \Doctrine\ORM\Query
      */
     $query = $this->entityManager->createQuery('SELECT t FROM TYPO3\\Media\\Domain\\Model\\Thumbnail t WHERE t.originalAsset = :originalAsset AND t.configurationHash = :configurationHash');
     $query->setParameter('originalAsset', $this->persistenceManager->getIdentifierByObject($asset));
     $query->setParameter('configurationHash', $configuration->getHash());
     $query->setMaxResults(1);
     $result = $query->getOneOrNullResult();
     return $result;
 }
 /**
  * Load data fixtures with the passed EntityManager
  *
  * @param \Doctrine\Common\Persistence\ObjectManager $manager
  */
 public function load(ObjectManager $manager)
 {
     $query = $manager->createQuery('SELECT COUNT(f) FROM \\Acme\\Bundle\\AppBundle\\Entity\\Fabric f');
     if (0 === $query->getSingleScalarResult()) {
         $stmt = $manager->getConnection()->prepare($this->getFabricsSql());
         $stmt->execute();
     }
     $query = $manager->createQuery('SELECT COUNT(c) FROM \\Acme\\Bundle\\AppBundle\\Entity\\Color c');
     if (0 === $query->getSingleScalarResult()) {
         $stmt = $manager->getConnection()->prepare($this->getColorSql());
         $stmt->execute();
     }
 }
 /**
  * Check if $value is valid. If it is not valid, needs to add an errorw
  * to Result.
  *
  * @param AssetInterface $value
  * @return void
  */
 protected function isValid($value)
 {
     $fileName = $value->getTitle() ?: $value->getResource()->getFilename();
     /** @var Query $query */
     $query = $this->entityManager->createQuery('SELECT a FROM TYPO3\\Media\\Domain\\Model\\Asset a JOIN a.resource r WHERE (a.title = :fileName OR r.filename = :fileName) AND a.Persistence_Object_Identifier != :assetIdentifier');
     $query->setParameter('fileName', $fileName);
     $query->setParameter('assetIdentifier', $this->persistenceManager->getIdentifierByObject($value));
     $result = $query->getArrayResult();
     // We need to exclude ImageVariant objects, but can not do that in the DQL query
     $result = array_filter($result, function ($value) {
         return $value['dtype'] !== 'typo3_media_imagevariant';
     });
     if (count($result) > 0) {
         $this->addError($this->translator->translateById('assetWithTitleAlreadyExists', [$fileName], null, $this->_localizationService->getConfiguration()->getCurrentLocale(), 'Main', 'Flownative.Neos.UniqueFilenames'), 1462705529);
     }
 }
 /**
  * Remove all nodes below a given path. Does not care about workspaces and dimensions.
  *
  * @param string $path Starting point path underneath all nodes are to be removed.
  * @return void
  */
 public function removeAllInPath($path)
 {
     $path = strtolower($path);
     $query = $this->entityManager->createQuery('DELETE FROM TYPO3\\TYPO3CR\\Domain\\Model\\NodeData n WHERE n.path LIKE :path');
     $query->setParameter('path', $path . '/%');
     $query->execute();
 }
    /**
     * {@inheritdoc}
     */
    public function reverseTransform($value)
    {
        if (null === $value || '' === $value) {
            return null;
        }
        if (!is_string($value)) {
            throw new UnexpectedTypeException($value, 'string');
        }
        $dql = <<<DQL
SELECT i
FROM AppBundle:Core\\Invitation i
WHERE i.code = :code
AND NOT EXISTS(SELECT 1 FROM AppBundle:Core\\User u WHERE u.invitation = i)
DQL;
        return $this->em->createQuery($dql)->setParameter('code', $value)->setMaxResults(1)->getOneOrNullResult();
    }
 /**
  * Returns the next-higher-index seen from the given reference index in the
  * level below the specified parent path. If no node with a higher than the
  * given index exists at that level, the reference index is returned.
  *
  * The result is determined workspace-agnostic.
  *
  * @param string $parentPath Path of the parent node specifying the level in the node tree
  * @param integer $referenceIndex Index of a known node
  * @return integer The currently next higher index
  */
 protected function findNextHigherIndex($parentPath, $referenceIndex)
 {
     $this->persistEntities();
     /** @var \Doctrine\ORM\Query $query */
     $query = $this->entityManager->createQuery('SELECT MIN(n.index) FROM TYPO3\\TYPO3CR\\Domain\\Model\\NodeData n WHERE n.parentPathHash = :parentPathHash AND n.index > :referenceIndex');
     $query->setParameter('parentPathHash', md5($parentPath));
     $query->setParameter('referenceIndex', $referenceIndex);
     return $query->getSingleScalarResult() ?: NULL;
 }
 /**
  * Run DQL and return the result as-is.
  *
  * @param string $dql
  * @param integer $hydrationMode
  * @param integer $firstResult
  * @param integer $maxResult
  * @return mixed
  */
 public function runDql($dql, $hydrationMode = \Doctrine\ORM\Query::HYDRATE_OBJECT, $firstResult = null, $maxResult = null)
 {
     $query = $this->entityManager->createQuery($dql);
     if ($firstResult !== null) {
         $query->setFirstResult($firstResult);
     }
     if ($maxResult !== null) {
         $query->setMaxResults($maxResult);
     }
     return $query->execute(array(), $hydrationMode);
 }
 /**
  * @param RedirectInterface $redirect
  * @return void
  */
 public function incrementHitCount(RedirectInterface $redirect)
 {
     $host = $redirect->getHost();
     /** @var Query $query */
     if ($host === null) {
         $query = $this->entityManager->createQuery('UPDATE Neos\\RedirectHandler\\DatabaseStorage\\Domain\\Model\\Redirect r SET r.hitCounter = r.hitCounter + 1, r.lastHit = CURRENT_TIMESTAMP() WHERE r.sourceUriPath = :sourceUriPath and r.host IS NULL');
     } else {
         $query = $this->entityManager->createQuery('UPDATE Neos\\RedirectHandler\\DatabaseStorage\\Domain\\Model\\Redirect r SET r.hitCounter = r.hitCounter + 1, r.lastHit = CURRENT_TIMESTAMP() WHERE r.sourceUriPath = :sourceUriPath and r.host = :host');
         $query->setParameter('host', $host);
     }
     $query->setParameter('sourceUriPath', $redirect->getSourceUriPath())->execute();
 }
Beispiel #11
0
 /**
  * {@inheritDoc}
  */
 public function load(ObjectManager $manager)
 {
     /** @var EntityManager $manager */
     /** @var EntityRepository $repository */
     $repository = $manager->getRepository('OroCRMMagentoBundle:Customer');
     $queryBuilder = $repository->createQueryBuilder('customer');
     $queryBuilder->select('customer.id, SUM(customerOrder.subtotalAmount) as lifetime')->leftJoin('customer.orders', 'customerOrder', 'WITH', $queryBuilder->expr()->neq($queryBuilder->expr()->lower('customerOrder.status'), ':status'))->groupBy('customer.id')->orderBy('customer.id')->setParameter('status', Order::STATUS_CANCELED);
     $updateQuery = 'UPDATE OroCRMMagentoBundle:Customer customer SET customer.lifetime = :lifetime WHERE customer.id = :id';
     // update lifetime for all customers
     $iterator = new BufferedQueryResultIterator($queryBuilder);
     foreach ($iterator as $row) {
         $customerId = $row['id'];
         $lifetime = $row['lifetime'] ?: 0;
         $manager->createQuery($updateQuery)->setParameter('id', $customerId)->setParameter('lifetime', $lifetime)->execute();
     }
 }
Beispiel #12
0
 public function load(ObjectManager $manager)
 {
     $query = $manager->createQuery('SELECT i FROM GeneralBundle:Game i WHERE i.category IS NULL AND i.pair1 IS NULL AND i.pair2 IS NULL AND i.group IS NULL AND i.tournament IS NULL');
     $games = $query->getResult();
     foreach ($games as $game) {
         if ($game instanceof Game) {
             $manager->remove($game);
         }
     }
     $manager->flush();
     $repository = $manager->getRepository('GeneralBundle:Game');
     $games = $repository->findAll('TournamentName1');
     foreach ($games as $game) {
         if ($game instanceof Game) {
             $manager->remove($game);
         }
     }
     $manager->flush();
     $repository = $manager->getRepository('GeneralBundle:GroupCategory');
     $groupA = $repository->findOneByName('Group A Test');
     $groupB = $repository->findOneByName('Group B Test');
     $groupC = $repository->findOneByName('Group C Test');
     $Groups = array($groupA, $groupB, $groupC);
     $repository = $manager->getRepository('GeneralBundle:Inscription');
     foreach ($Groups as $group) {
         if ($group instanceof GroupCategory) {
             $inscriptions = $repository->findByGroup($group);
             foreach ($inscriptions as $inscription) {
                 if ($inscription instanceof Inscription) {
                     $manager->remove($inscription);
                 }
             }
         }
     }
     $manager->flush();
     $Users = array(array('email' => 'emailCategoryTest'), array('email' => 'User1Pair1'), array('email' => 'User2Pair1'), array('email' => 'User1Pair2'), array('email' => 'User2Pair2'), array('email' => 'User1Pair3'), array('email' => 'User2Pair3'), array('email' => 'User1Pair4'), array('email' => 'User2Pair4'), array('email' => 'User1Pair5'), array('email' => 'User2Pair5'), array('email' => 'User1Pair6'), array('email' => 'User2Pair6'), array('email' => 'User1Pair7'), array('email' => 'User2Pair7'), array('email' => 'User1Pair8'), array('email' => 'User2Pair8'), array('email' => 'User1Pair9'), array('email' => 'User2Pair9'), array('email' => 'User1Pair10'), array('email' => 'User2Pair10'));
     $repository = $manager->getRepository('GeneralBundle:User');
     foreach ($Users as $key) {
         $entity = $repository->findOneByEmail($key['email']);
         if ($entity instanceof User) {
             $manager->remove($entity);
         }
     }
     $manager->flush();
 }
Beispiel #13
0
 private function countBy($from, $to, $location, $addWhere, $datefield, $selectAndFrom, $groupAndOrder)
 {
     $constraints = array();
     $to2 = $this->getTo($from, $to);
     $constraints[] = $datefield . '>=:from';
     $params['from'] = $from;
     $constraints[] = $datefield . '<:to';
     $params['to'] = $to2;
     if (!empty($location)) {
         $constraints[] = 'a.location=:loc';
         $params['loc'] = $location;
     }
     $constraints[] = 'a.isDummy=0';
     if ($addWhere != null) {
         $constraints[] = $addWhere;
     }
     $where = ' WHERE ' . implode(' AND ', $constraints);
     $query = $this->entityManager->createQuery('SELECT ' . $selectAndFrom . ' ' . $where . ' ' . $groupAndOrder);
     $ret = $query->execute($params);
     return $ret;
 }
 private function findJohnDoe(ObjectManager $manager)
 {
     $query = $manager->createQuery("SELECT u FROM Claroline\\CoreBundle\\Entity\\User u where u.username = '******'");
     $query->setFetchMode("MyProject\\User", "address", "EXTRA_LAZY");
     return $query->getSingleResult();
 }
Beispiel #15
0
 /**
  * Enable existant users
  *
  * @param Collection $users
  */
 private function enableExistantUsers(Collection $users)
 {
     $query = $this->manager->createQuery('UPDATE Beloop\\Component\\User\\Entity\\User u SET u.enabled=:enabled WHERE u.email IN (:emails)');
     $query->setParameter('enabled', true);
     $query->setParameter('emails', $this->extractEmails($users)->toArray());
 }
 public function createDqlQuery($dql)
 {
     return $this->entityManager->createQuery($dql);
 }
 /**
  * {@inheritdoc}
  */
 public function count()
 {
     $query = $this->objectManager->createQuery(sprintf('SELECT COUNT(o) FROM %s o', $this->objectName));
     return $query->getSingleScalarResult();
 }
Beispiel #18
0
 /**
  * {@inheritDoc}
  */
 public function load(ObjectManager $manager)
 {
     /** @var EntityManager $manager */
     $query = 'UPDATE OroCRMMagentoBundle:Customer customer ' . 'SET customer.vat = customer.vat/100.0 ' . 'WHERE customer.vat IS NOT NULL';
     $manager->createQuery($query)->execute();
 }