Select Git revision
UpdateDataCommand.php
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
RoleProvider.php 6.14 KiB
<?php
namespace Application\Provider\Role;
use Application\Entity\Db\Affectation;
use Application\Entity\Db\Structure as StructureEntity;
use BjyAuthorize\Provider\Role\ProviderInterface;
use UnicaenApp\Exception\LogicException;
use UnicaenApp\Service\EntityManagerAwareInterface;
use UnicaenApp\Service\EntityManagerAwareTrait;
use Zend\Permissions\Acl\Role\RoleInterface;
use Application\Acl\Role;
use Application\Acl\IntervenantRole;
/**
* Fournisseur des rôles utilisateurs de l'application :
* - ceux définis dans la configuration du fournisseur
*
* * @author Bertrand GAUTHIER <bertrand.gauthier at unicaen.fr>
*/
class RoleProvider implements ProviderInterface, EntityManagerAwareInterface
{
use EntityManagerAwareTrait;
use \Zend\ServiceManager\ServiceLocatorAwareTrait;
/**
* @var array
*/
protected $config = [];
/**
* @var array
*/
protected $roles;
/**
* @var StructureEntity
*/
protected $structureSelectionnee;
/**
* Constructeur.
* @param array $config
*/
public function __construct( $config = [] )
{
$this->config = $config;
}
public function init()
{
$this->getEntityManager()->getFilters()->enable('historique');
}
/**
* @return RoleInterface[]
*/
public function getRoles()
{
if (null === $this->roles) {
$this->roles = $this->makeRoles();
}
return $this->roles;
}
protected function makeRoles()
{
$roles = [];