Loading src/UnicaenPrivilege/Assertion/Perimetre/AbstractPerimetreAssertion.php +6 −6 Original line number Diff line number Diff line Loading @@ -2,15 +2,15 @@ namespace UnicaenPrivilege\Assertion\Perimetre; use Laminas\Permissions\Acl\Exception\InvalidArgumentException; use Laminas\Permissions\Acl\Resource\ResourceInterface; use Laminas\Router\RouteMatch; use UnicaenApp\Service\EntityManagerAwareTrait; use UnicaenPrivilege\Assertion\AbstractAssertion; use UnicaenPrivilege\Entity\Db\PerimetreInterface; use UnicaenPrivilege\Entity\Db\PerimetreUserRoleInterface; use UnicaenPrivilege\Provider\Perimetre\PerimetreProviderAwareTrait; use UnicaenUtilisateur\Entity\Db\UserInterface; use UnicaenUtilisateur\Entity\Db\UserRolePerimetreInterface; use Laminas\Permissions\Acl\Exception\InvalidArgumentException; use Laminas\Permissions\Acl\Resource\ResourceInterface; use Laminas\Router\RouteMatch; abstract class AbstractPerimetreAssertion extends AbstractAssertion { Loading Loading @@ -85,11 +85,11 @@ abstract class AbstractPerimetreAssertion extends AbstractAssertion foreach ($this->perimetres as $perimetre) { // récupération des droits de l'utilisateur pour le rôle et le périmètre $userRights = $fullRole->getPerimetres()->filter(function ($p) use ($perimetre) { /** @var UserRolePerimetreInterface $p */ /** @var PerimetreUserRoleInterface $p */ return $p->getPerimetre()->getCategorie()->getCode() == $perimetre; }); /** @var UserRolePerimetreInterface $right */ /** @var PerimetreUserRoleInterface $right */ foreach($userRights as $right) { // vérification de la règle switch($type) { Loading src/UnicaenPrivilege/Entity/Db/AbstractPerimetre.php +4 −5 Original line number Diff line number Diff line Loading @@ -4,7 +4,6 @@ namespace UnicaenPrivilege\Entity\Db; use Doctrine\Common\Collections\ArrayCollection; use Doctrine\Common\Collections\Collection; use UnicaenUtilisateur\Entity\Db\UserRolePerimetreInterface; abstract class AbstractPerimetre implements PerimetreInterface { Loading Loading @@ -198,10 +197,10 @@ abstract class AbstractPerimetre implements PerimetreInterface /** * Add roleUser. * * @param UserRolePerimetreInterface $roleUser * @param PerimetreUserRoleInterface $roleUser * @return PerimetreInterface */ public function addRoleUser(UserRolePerimetreInterface $roleUser) public function addRoleUser(PerimetreUserRoleInterface $roleUser) { $this->roleUsers->add($perimetre); Loading @@ -211,10 +210,10 @@ abstract class AbstractPerimetre implements PerimetreInterface /** * Remove roleUser. * * @param UserRolePerimetreInterface $roleUser * @param PerimetreUserRoleInterface $roleUser * @return PerimetreInterface */ public function removeRoleUser(UserRolePerimetreInterface $roleUser) public function removeRoleUser(PerimetreUserRoleInterface $roleUser) { $this->roleUsers->removeElement($roleUser); Loading src/UnicaenPrivilege/Entity/Db/AbstractPerimetreUserRole.php 0 → 100644 +80 −0 Original line number Diff line number Diff line <?php namespace UnicaenPrivilege\Entity\Db; use UnicaenUtilisateur\Entity\Db\UserRoleInterface; abstract class AbstractPerimetreUserRole implements PerimetreUserRoleInterface { /** * @var int */ protected $id; /** * @var UserRoleInterface */ protected $userRole; /** * @var PerimetreInterface */ protected $perimetre; /** * Get id. * * @return int */ public function getId() { return $this->id; } /** * Set userRole. * * @param UserRoleInterface $userRole * @return PerimetreUserRoleInterface */ public function setUserRole(UserRoleInterface $userRole) { $this->userRole = $userRole; return $this; } /** * Get userRole. * * @return UserRoleInterface */ public function getUserRole() { return $this->userRole; } /** * Set perimetre. * * @param PerimetreInterface $perimetre * @return PerimetreUserRoleInterface */ public function setPerimetre(PerimetreInterface $perimetre) { $this->perimetre = $perimetre; return $this; } /** * Get perimetre. * * @return PerimetreInterface */ public function getPerimetre() { return $this->perimetre; } } src/UnicaenPrivilege/Entity/Db/Mapping/UnicaenPrivilege.Entity.Db.Perimetre.dcm.xml +1 −1 Original line number Diff line number Diff line Loading @@ -22,7 +22,7 @@ <field name="description" type="string" column="DESCRIPTION" length="1024" nullable="true"/> <field name="ordre" type="integer" column="ORDRE" nullable="false"/> <one-to-many field="roleUsers" target-entity="UnicaenUtilisateur\Entity\Db\UserRolePerimetre" mapped-by="perimetre"> <one-to-many field="roleUsers" target-entity="UnicaenPrivilege\Entity\Db\PerimetreUserRole" mapped-by="perimetre"> <cascade> <cascade-persist/> <cascade-remove/> Loading src/UnicaenPrivilege/Entity/Db/Mapping/UnicaenPrivilege.Entity.Db.PerimetreUserRole.dcm.xml 0 → 100644 +35 −0 Original line number Diff line number Diff line <?xml version="1.0" encoding="utf-8"?> <doctrine-mapping xmlns="http://doctrine-project.org/schemas/orm/doctrine-mapping" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://doctrine-project.org/schemas/orm/doctrine-mapping http://doctrine-project.org/schemas/orm/doctrine-mapping.xsd"> <entity name="UnicaenPrivilege\Entity\Db\PerimetreUserRole" table="UNICAEN_PRIVILEGE_PERIMETRE_USER_ROLE_LINKER"> <indexes> <index name="ix_privilege_perimetre_user_role_linker_perimetre" columns="PERIMETRE_ID"/> <index name="ix_privilege_perimetre_user_role_linker_user_role" columns="USER_ROLE_ID"/> </indexes> <unique-constraints> <unique-constraint name="un_privilege_perimetre_user_role_linker" columns="PERIMETRE_ID,USER_ROLE_ID"/> </unique-constraints> <id name="id" type="integer" column="ID"> <generator strategy="AUTO"/> <sequence-generator sequence-name="UNICAEN_PRIVILEGE_PERIMETRE_USER_ROLE_LINKER_ID_seq" allocation-size="1" initial-value="1"/> </id> <many-to-one field="perimetre" target-entity="UnicaenPrivilege\Entity\Db\Perimetre" inversed-by="roleUsers"> <join-columns> <join-column name="PERIMETRE_ID" referenced-column-name="ID"/> </join-columns> </many-to-one> <many-to-one field="userRole" target-entity="UnicaenUtilisateur\Entity\Db\UserRole" inversed-by="perimetres"> <join-columns> <join-column name="USER_ROLE_ID" referenced-column-name="ID"/> </join-columns> </many-to-one> </entity> </doctrine-mapping> Loading
src/UnicaenPrivilege/Assertion/Perimetre/AbstractPerimetreAssertion.php +6 −6 Original line number Diff line number Diff line Loading @@ -2,15 +2,15 @@ namespace UnicaenPrivilege\Assertion\Perimetre; use Laminas\Permissions\Acl\Exception\InvalidArgumentException; use Laminas\Permissions\Acl\Resource\ResourceInterface; use Laminas\Router\RouteMatch; use UnicaenApp\Service\EntityManagerAwareTrait; use UnicaenPrivilege\Assertion\AbstractAssertion; use UnicaenPrivilege\Entity\Db\PerimetreInterface; use UnicaenPrivilege\Entity\Db\PerimetreUserRoleInterface; use UnicaenPrivilege\Provider\Perimetre\PerimetreProviderAwareTrait; use UnicaenUtilisateur\Entity\Db\UserInterface; use UnicaenUtilisateur\Entity\Db\UserRolePerimetreInterface; use Laminas\Permissions\Acl\Exception\InvalidArgumentException; use Laminas\Permissions\Acl\Resource\ResourceInterface; use Laminas\Router\RouteMatch; abstract class AbstractPerimetreAssertion extends AbstractAssertion { Loading Loading @@ -85,11 +85,11 @@ abstract class AbstractPerimetreAssertion extends AbstractAssertion foreach ($this->perimetres as $perimetre) { // récupération des droits de l'utilisateur pour le rôle et le périmètre $userRights = $fullRole->getPerimetres()->filter(function ($p) use ($perimetre) { /** @var UserRolePerimetreInterface $p */ /** @var PerimetreUserRoleInterface $p */ return $p->getPerimetre()->getCategorie()->getCode() == $perimetre; }); /** @var UserRolePerimetreInterface $right */ /** @var PerimetreUserRoleInterface $right */ foreach($userRights as $right) { // vérification de la règle switch($type) { Loading
src/UnicaenPrivilege/Entity/Db/AbstractPerimetre.php +4 −5 Original line number Diff line number Diff line Loading @@ -4,7 +4,6 @@ namespace UnicaenPrivilege\Entity\Db; use Doctrine\Common\Collections\ArrayCollection; use Doctrine\Common\Collections\Collection; use UnicaenUtilisateur\Entity\Db\UserRolePerimetreInterface; abstract class AbstractPerimetre implements PerimetreInterface { Loading Loading @@ -198,10 +197,10 @@ abstract class AbstractPerimetre implements PerimetreInterface /** * Add roleUser. * * @param UserRolePerimetreInterface $roleUser * @param PerimetreUserRoleInterface $roleUser * @return PerimetreInterface */ public function addRoleUser(UserRolePerimetreInterface $roleUser) public function addRoleUser(PerimetreUserRoleInterface $roleUser) { $this->roleUsers->add($perimetre); Loading @@ -211,10 +210,10 @@ abstract class AbstractPerimetre implements PerimetreInterface /** * Remove roleUser. * * @param UserRolePerimetreInterface $roleUser * @param PerimetreUserRoleInterface $roleUser * @return PerimetreInterface */ public function removeRoleUser(UserRolePerimetreInterface $roleUser) public function removeRoleUser(PerimetreUserRoleInterface $roleUser) { $this->roleUsers->removeElement($roleUser); Loading
src/UnicaenPrivilege/Entity/Db/AbstractPerimetreUserRole.php 0 → 100644 +80 −0 Original line number Diff line number Diff line <?php namespace UnicaenPrivilege\Entity\Db; use UnicaenUtilisateur\Entity\Db\UserRoleInterface; abstract class AbstractPerimetreUserRole implements PerimetreUserRoleInterface { /** * @var int */ protected $id; /** * @var UserRoleInterface */ protected $userRole; /** * @var PerimetreInterface */ protected $perimetre; /** * Get id. * * @return int */ public function getId() { return $this->id; } /** * Set userRole. * * @param UserRoleInterface $userRole * @return PerimetreUserRoleInterface */ public function setUserRole(UserRoleInterface $userRole) { $this->userRole = $userRole; return $this; } /** * Get userRole. * * @return UserRoleInterface */ public function getUserRole() { return $this->userRole; } /** * Set perimetre. * * @param PerimetreInterface $perimetre * @return PerimetreUserRoleInterface */ public function setPerimetre(PerimetreInterface $perimetre) { $this->perimetre = $perimetre; return $this; } /** * Get perimetre. * * @return PerimetreInterface */ public function getPerimetre() { return $this->perimetre; } }
src/UnicaenPrivilege/Entity/Db/Mapping/UnicaenPrivilege.Entity.Db.Perimetre.dcm.xml +1 −1 Original line number Diff line number Diff line Loading @@ -22,7 +22,7 @@ <field name="description" type="string" column="DESCRIPTION" length="1024" nullable="true"/> <field name="ordre" type="integer" column="ORDRE" nullable="false"/> <one-to-many field="roleUsers" target-entity="UnicaenUtilisateur\Entity\Db\UserRolePerimetre" mapped-by="perimetre"> <one-to-many field="roleUsers" target-entity="UnicaenPrivilege\Entity\Db\PerimetreUserRole" mapped-by="perimetre"> <cascade> <cascade-persist/> <cascade-remove/> Loading
src/UnicaenPrivilege/Entity/Db/Mapping/UnicaenPrivilege.Entity.Db.PerimetreUserRole.dcm.xml 0 → 100644 +35 −0 Original line number Diff line number Diff line <?xml version="1.0" encoding="utf-8"?> <doctrine-mapping xmlns="http://doctrine-project.org/schemas/orm/doctrine-mapping" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://doctrine-project.org/schemas/orm/doctrine-mapping http://doctrine-project.org/schemas/orm/doctrine-mapping.xsd"> <entity name="UnicaenPrivilege\Entity\Db\PerimetreUserRole" table="UNICAEN_PRIVILEGE_PERIMETRE_USER_ROLE_LINKER"> <indexes> <index name="ix_privilege_perimetre_user_role_linker_perimetre" columns="PERIMETRE_ID"/> <index name="ix_privilege_perimetre_user_role_linker_user_role" columns="USER_ROLE_ID"/> </indexes> <unique-constraints> <unique-constraint name="un_privilege_perimetre_user_role_linker" columns="PERIMETRE_ID,USER_ROLE_ID"/> </unique-constraints> <id name="id" type="integer" column="ID"> <generator strategy="AUTO"/> <sequence-generator sequence-name="UNICAEN_PRIVILEGE_PERIMETRE_USER_ROLE_LINKER_ID_seq" allocation-size="1" initial-value="1"/> </id> <many-to-one field="perimetre" target-entity="UnicaenPrivilege\Entity\Db\Perimetre" inversed-by="roleUsers"> <join-columns> <join-column name="PERIMETRE_ID" referenced-column-name="ID"/> </join-columns> </many-to-one> <many-to-one field="userRole" target-entity="UnicaenUtilisateur\Entity\Db\UserRole" inversed-by="perimetres"> <join-columns> <join-column name="USER_ROLE_ID" referenced-column-name="ID"/> </join-columns> </many-to-one> </entity> </doctrine-mapping>