Select Git revision
UserMapper.php
-
Bertrand Gauthier authored
Corrections de signatures de méthodes incompatibles avec la classe mère ou interface implémentée, dont certaines déclenchaient un E_WARNING en PHP 7.2
Bertrand Gauthier authoredCorrections de signatures de méthodes incompatibles avec la classe mère ou interface implémentée, dont certaines déclenchaient un E_WARNING en PHP 7.2
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
UserMapper.php 2.42 KiB
<?php
namespace UnicaenAuth\Service;
use Doctrine\ORM\EntityManagerInterface;
use UnicaenAuth\Entity\Db\AbstractUser;
use UnicaenAuth\Options\ModuleOptions;
use Zend\Stdlib\Hydrator\HydratorInterface;
class UserMapper extends \ZfcUser\Mapper\User
{
//========== repris du module zf-commons/zfc-user-doctrine-orm abandonné =========
/**
* @var \Doctrine\ORM\EntityManagerInterface
*/
protected $em;
/**
* @var ModuleOptions
*/
protected $options;
public function __construct(EntityManagerInterface $em, ModuleOptions $options)
{
$this->em = $em;
$this->options = $options;
}
public function findByEmail($email)
{
$er = $this->em->getRepository($this->options->getUserEntityClass());
return $er->findOneBy(array('email' => $email));
}
public function findByUsername($username)
{
$er = $this->em->getRepository($this->options->getUserEntityClass());
return $er->findOneBy(array('username' => $username));
}
public function findById($id)
{
$er = $this->em->getRepository($this->options->getUserEntityClass());
return $er->find($id);
}
/**
* {@inheritdoc}
*/
public function insert($entity, $tableName = null, HydratorInterface $hydrator = null)
{
return $this->persist($entity);
}
/**
* {@inheritdoc}
*/
public function update($entity, $where = null, $tableName = null, HydratorInterface $hydrator = null)
{
return $this->persist($entity);
}
protected function persist($entity)
{
$this->em->persist($entity);
$this->em->flush();