mirror of
https://github.com/alchemy-fr/Phraseanet.git
synced 2025-10-13 04:53:26 +00:00
Add FtpExport repositories
This commit is contained in:
64
lib/Doctrine/Repositories/FtpExportRepository.php
Normal file
64
lib/Doctrine/Repositories/FtpExportRepository.php
Normal file
@@ -0,0 +1,64 @@
|
||||
<?php
|
||||
|
||||
namespace Repositories;
|
||||
|
||||
use Doctrine\ORM\EntityRepository;
|
||||
|
||||
/**
|
||||
* FtpExportRepository
|
||||
*
|
||||
* This class was generated by the Doctrine ORM. Add your own custom
|
||||
* repository methods below.
|
||||
*/
|
||||
class FtpExportRepository extends EntityRepository
|
||||
{
|
||||
/**
|
||||
* Returns exports that crashed. If a date is provided, only exports created
|
||||
* before this date are returned.
|
||||
*
|
||||
* @param \DateTime $before An optional date to search
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function findCrashedExports(\DateTime $before = null)
|
||||
{
|
||||
$qb = $this->createQueryBuilder('e');
|
||||
$qb->where($qb->expr()->gte('e.crash', 'e.nbretry'));
|
||||
|
||||
if (null !== $before) {
|
||||
$qb->where($qb->expr()->lte('e.created', ':created'));
|
||||
$qb->setParameter(':created', $before);
|
||||
}
|
||||
|
||||
return $qb->getQuery()->getResult();
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a list of exports that can be achieved.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function findDoableExports()
|
||||
{
|
||||
$dql = 'SELECT f
|
||||
FROM Entities\FtpExport f
|
||||
INNER JOIN f.elements e
|
||||
WHERE e.done = false';
|
||||
|
||||
$query = $this->_em->createQuery($dql);
|
||||
|
||||
return $query->getResult();
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the exports initiated by a given user.
|
||||
*
|
||||
* @param \User_Adapter $user
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function findByUser(\User_Adapter $user)
|
||||
{
|
||||
return $this->findBy(array('usrId' => $user->get_id()));
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user