Loading documentation/release/3.2.3.md +11 −0 Changes for documentation/release/3.2.3.md: 11 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -12,6 +12,8 @@ Version 3.2.3 (XX/XX/2023) - [Fix] : ajout d'une garde pour les campagnes null sur les pages des structures (bug AMU) - Ajout de paramètre pour le filtrage des agents de la page structure/agents (temoins d'affectations et temoins de statuts) - Exploitation de la clef de config [unicaen-app][app_infos][contact][mail] - Ajout de privilege pour l'affichage de l'onglet 'Missions spécifique' de la structure - Modification des privilèges de convocation et gestion de la convocation Modification en BD --- Loading Loading @@ -54,6 +56,15 @@ WITH d(code, lib, ordre) AS ( SELECT cp.id, d.code, d.lib, d.ordre FROM d JOIN unicaen_privilege_categorie cp ON cp.CODE = 'missionspecifiqueaffectation'; INSERT INTO unicaen_privilege_privilege(CATEGORIE_ID, CODE, LIBELLE, ORDRE) WITH d(code, lib, ordre) AS ( SELECT 'entretienpro_convoquer', 'Convoquer ou modifier une convocation', 5 ) SELECT cp.id, d.code, d.lib, d.ordre FROM d JOIN unicaen_privilege_categorie cp ON cp.CODE = 'entretienpro'; delete from unicaen_privilege_privilege where code='entretienpro_ajouter'; ``` Evolution des librairies Loading module/EntretienProfessionnel/config/merged/entretien.config.php +2 −2 Changes for module/EntretienProfessionnel/config/merged/entretien.config.php: 2 added lines, 2 removed lines. Original line number Diff line number Diff line Loading @@ -34,7 +34,7 @@ return [ 'privileges' => [ EntretienproPrivileges::ENTRETIENPRO_AFFICHER, EntretienproPrivileges::ENTRETIENPRO_EXPORTER, EntretienproPrivileges::ENTRETIENPRO_AJOUTER, EntretienproPrivileges::ENTRETIENPRO_CONVOQUER, EntretienproPrivileges::ENTRETIENPRO_MODIFIER, EntretienproPrivileges::ENTRETIENPRO_HISTORISER, EntretienproPrivileges::ENTRETIENPRO_VALIDER_AGENT, Loading Loading @@ -108,7 +108,7 @@ return [ 'creer', 'modifier', ], 'privileges' => EntretienproPrivileges::ENTRETIENPRO_AJOUTER, 'privileges' => EntretienproPrivileges::ENTRETIENPRO_CONVOQUER, 'assertion' => EntretienProfessionnelAssertion::class, ], [ Loading module/EntretienProfessionnel/src/EntretienProfessionnel/Assertion/EntretienProfessionnelAssertion.php +14 −1 Changes for module/EntretienProfessionnel/src/EntretienProfessionnel/Assertion/EntretienProfessionnelAssertion.php: 14 added lines, 1 removed line. Original line number Diff line number Diff line Loading @@ -16,6 +16,8 @@ use Laminas\Permissions\Acl\Resource\ResourceInterface; use Structure\Provider\Role\RoleProvider; use Structure\Service\Structure\StructureServiceAwareTrait; use UnicaenPrivilege\Assertion\AbstractAssertion; use UnicaenPrivilege\Service\Privilege\PrivilegeCategorieServiceAwareTrait; use UnicaenPrivilege\Service\Privilege\PrivilegeServiceAwareTrait; use UnicaenUtilisateur\Entity\Db\Role; use UnicaenUtilisateur\Entity\Db\RoleInterface; use UnicaenUtilisateur\Service\User\UserServiceAwareTrait; Loading @@ -28,6 +30,8 @@ class EntretienProfessionnelAssertion extends AbstractAssertion { use EntretienProfessionnelServiceAwareTrait; use UserServiceAwareTrait; use StructureServiceAwareTrait; use PrivilegeServiceAwareTrait; use PrivilegeCategorieServiceAwareTrait; private ?Agent $lastAgent = null; private ?EntretienProfessionnel $lastEntretien = null; Loading Loading @@ -80,6 +84,15 @@ class EntretienProfessionnelAssertion extends AbstractAssertion { $user = $this->getUserService()->getConnectedUser(); $agent = $this->getAgentService()->getAgentByUser($user); //todo QUESTION : pourquoi devoir faire cela c'est pas normal !!! [$catCode, $priCode] = explode('-', $privilege); $categorie = $this->getPrivilegeCategorieService()->findByCode($catCode); $pprivilege = $this->getPrivilegeService()->findByCode($priCode, $categorie->getId()); if ($pprivilege === null) return false; $listings = $pprivilege->getRoles()->toArray(); if (!in_array($role, $listings)) return false; //todo FIN BIZARERIE ... $isAgent = ($agent === $entity->getAgent()); Loading Loading @@ -110,7 +123,7 @@ class EntretienProfessionnelAssertion extends AbstractAssertion { return false; } case EntretienproPrivileges::ENTRETIENPRO_AFFICHER : case EntretienproPrivileges::ENTRETIENPRO_AJOUTER : case EntretienproPrivileges::ENTRETIENPRO_CONVOQUER : case EntretienproPrivileges::ENTRETIENPRO_MODIFIER : switch ($role->getRoleId()) { case AppRoleProvider::ADMIN_FONC: Loading module/EntretienProfessionnel/src/EntretienProfessionnel/Assertion/EntretienProfessionnelAssertionFactory.php +10 −0 Changes for module/EntretienProfessionnel/src/EntretienProfessionnel/Assertion/EntretienProfessionnelAssertionFactory.php: 10 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -11,6 +11,8 @@ use Laminas\Mvc\Application; use Psr\Container\ContainerExceptionInterface; use Psr\Container\NotFoundExceptionInterface; use Structure\Service\Structure\StructureService; use UnicaenPrivilege\Service\Privilege\PrivilegeCategorieService; use UnicaenPrivilege\Service\Privilege\PrivilegeService; use UnicaenUtilisateur\Service\User\UserService; class EntretienProfessionnelAssertionFactory { Loading @@ -30,6 +32,8 @@ class EntretienProfessionnelAssertionFactory { * @var EntretienProfessionnelService $entretienProfessionnelService * @var StructureService $structureService * @var UserService $userService * @var PrivilegeService $privilegeService * @var PrivilegeCategorieService $categorieService */ $agentService = $container->get(AgentService::class); $agentAutoriteService = $container->get(AgentAutoriteService::class); Loading @@ -38,6 +42,9 @@ class EntretienProfessionnelAssertionFactory { $structureService = $container->get(StructureService::class); $userService = $container->get(UserService::class); $privilegeService = $container->get(PrivilegeService::class); $categorieService = $container->get(PrivilegeCategorieService::class); /** @var EntretienProfessionnelAssertion $assertion */ $assertion = new EntretienProfessionnelAssertion(); $assertion->setAgentService($agentService); Loading @@ -47,6 +54,9 @@ class EntretienProfessionnelAssertionFactory { $assertion->setStructureService($structureService); $assertion->setUserService($userService); $assertion->setPrivilegeService($privilegeService); $assertion->setPrivilegeCategorieService($categorieService); /* @var $application Application */ $application = $container->get('Application'); $mvcEvent = $application->getMvcEvent(); Loading module/EntretienProfessionnel/src/EntretienProfessionnel/Provider/Privilege/EntretienproPrivileges.php +2 −1 Changes for module/EntretienProfessionnel/src/EntretienProfessionnel/Provider/Privilege/EntretienproPrivileges.php: 2 added lines, 1 removed line. Original line number Diff line number Diff line Loading @@ -10,7 +10,8 @@ class EntretienproPrivileges extends Privileges const ENTRETIENPRO_MESENTRETIENS = 'entretienpro-entretienpro_mesentretiens'; const ENTRETIENPRO_AFFICHER = 'entretienpro-entretienpro_afficher'; const ENTRETIENPRO_EXPORTER = 'entretienpro-entretienpro_exporter'; const ENTRETIENPRO_AJOUTER = 'entretienpro-entretienpro_ajouter'; const ENTRETIENPRO_CONVOQUER = 'entretienpro-entretienpro_convoquer'; const ENTRETIENPRO_MODIFIER = 'entretienpro-entretienpro_modifier'; const ENTRETIENPRO_HISTORISER = 'entretienpro-entretienpro_historiser'; const ENTRETIENPRO_DETRUIRE = 'entretienpro-entretienpro_detruire'; Loading Loading
documentation/release/3.2.3.md +11 −0 Changes for documentation/release/3.2.3.md: 11 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -12,6 +12,8 @@ Version 3.2.3 (XX/XX/2023) - [Fix] : ajout d'une garde pour les campagnes null sur les pages des structures (bug AMU) - Ajout de paramètre pour le filtrage des agents de la page structure/agents (temoins d'affectations et temoins de statuts) - Exploitation de la clef de config [unicaen-app][app_infos][contact][mail] - Ajout de privilege pour l'affichage de l'onglet 'Missions spécifique' de la structure - Modification des privilèges de convocation et gestion de la convocation Modification en BD --- Loading Loading @@ -54,6 +56,15 @@ WITH d(code, lib, ordre) AS ( SELECT cp.id, d.code, d.lib, d.ordre FROM d JOIN unicaen_privilege_categorie cp ON cp.CODE = 'missionspecifiqueaffectation'; INSERT INTO unicaen_privilege_privilege(CATEGORIE_ID, CODE, LIBELLE, ORDRE) WITH d(code, lib, ordre) AS ( SELECT 'entretienpro_convoquer', 'Convoquer ou modifier une convocation', 5 ) SELECT cp.id, d.code, d.lib, d.ordre FROM d JOIN unicaen_privilege_categorie cp ON cp.CODE = 'entretienpro'; delete from unicaen_privilege_privilege where code='entretienpro_ajouter'; ``` Evolution des librairies Loading
module/EntretienProfessionnel/config/merged/entretien.config.php +2 −2 Changes for module/EntretienProfessionnel/config/merged/entretien.config.php: 2 added lines, 2 removed lines. Original line number Diff line number Diff line Loading @@ -34,7 +34,7 @@ return [ 'privileges' => [ EntretienproPrivileges::ENTRETIENPRO_AFFICHER, EntretienproPrivileges::ENTRETIENPRO_EXPORTER, EntretienproPrivileges::ENTRETIENPRO_AJOUTER, EntretienproPrivileges::ENTRETIENPRO_CONVOQUER, EntretienproPrivileges::ENTRETIENPRO_MODIFIER, EntretienproPrivileges::ENTRETIENPRO_HISTORISER, EntretienproPrivileges::ENTRETIENPRO_VALIDER_AGENT, Loading Loading @@ -108,7 +108,7 @@ return [ 'creer', 'modifier', ], 'privileges' => EntretienproPrivileges::ENTRETIENPRO_AJOUTER, 'privileges' => EntretienproPrivileges::ENTRETIENPRO_CONVOQUER, 'assertion' => EntretienProfessionnelAssertion::class, ], [ Loading
module/EntretienProfessionnel/src/EntretienProfessionnel/Assertion/EntretienProfessionnelAssertion.php +14 −1 Changes for module/EntretienProfessionnel/src/EntretienProfessionnel/Assertion/EntretienProfessionnelAssertion.php: 14 added lines, 1 removed line. Original line number Diff line number Diff line Loading @@ -16,6 +16,8 @@ use Laminas\Permissions\Acl\Resource\ResourceInterface; use Structure\Provider\Role\RoleProvider; use Structure\Service\Structure\StructureServiceAwareTrait; use UnicaenPrivilege\Assertion\AbstractAssertion; use UnicaenPrivilege\Service\Privilege\PrivilegeCategorieServiceAwareTrait; use UnicaenPrivilege\Service\Privilege\PrivilegeServiceAwareTrait; use UnicaenUtilisateur\Entity\Db\Role; use UnicaenUtilisateur\Entity\Db\RoleInterface; use UnicaenUtilisateur\Service\User\UserServiceAwareTrait; Loading @@ -28,6 +30,8 @@ class EntretienProfessionnelAssertion extends AbstractAssertion { use EntretienProfessionnelServiceAwareTrait; use UserServiceAwareTrait; use StructureServiceAwareTrait; use PrivilegeServiceAwareTrait; use PrivilegeCategorieServiceAwareTrait; private ?Agent $lastAgent = null; private ?EntretienProfessionnel $lastEntretien = null; Loading Loading @@ -80,6 +84,15 @@ class EntretienProfessionnelAssertion extends AbstractAssertion { $user = $this->getUserService()->getConnectedUser(); $agent = $this->getAgentService()->getAgentByUser($user); //todo QUESTION : pourquoi devoir faire cela c'est pas normal !!! [$catCode, $priCode] = explode('-', $privilege); $categorie = $this->getPrivilegeCategorieService()->findByCode($catCode); $pprivilege = $this->getPrivilegeService()->findByCode($priCode, $categorie->getId()); if ($pprivilege === null) return false; $listings = $pprivilege->getRoles()->toArray(); if (!in_array($role, $listings)) return false; //todo FIN BIZARERIE ... $isAgent = ($agent === $entity->getAgent()); Loading Loading @@ -110,7 +123,7 @@ class EntretienProfessionnelAssertion extends AbstractAssertion { return false; } case EntretienproPrivileges::ENTRETIENPRO_AFFICHER : case EntretienproPrivileges::ENTRETIENPRO_AJOUTER : case EntretienproPrivileges::ENTRETIENPRO_CONVOQUER : case EntretienproPrivileges::ENTRETIENPRO_MODIFIER : switch ($role->getRoleId()) { case AppRoleProvider::ADMIN_FONC: Loading
module/EntretienProfessionnel/src/EntretienProfessionnel/Assertion/EntretienProfessionnelAssertionFactory.php +10 −0 Changes for module/EntretienProfessionnel/src/EntretienProfessionnel/Assertion/EntretienProfessionnelAssertionFactory.php: 10 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -11,6 +11,8 @@ use Laminas\Mvc\Application; use Psr\Container\ContainerExceptionInterface; use Psr\Container\NotFoundExceptionInterface; use Structure\Service\Structure\StructureService; use UnicaenPrivilege\Service\Privilege\PrivilegeCategorieService; use UnicaenPrivilege\Service\Privilege\PrivilegeService; use UnicaenUtilisateur\Service\User\UserService; class EntretienProfessionnelAssertionFactory { Loading @@ -30,6 +32,8 @@ class EntretienProfessionnelAssertionFactory { * @var EntretienProfessionnelService $entretienProfessionnelService * @var StructureService $structureService * @var UserService $userService * @var PrivilegeService $privilegeService * @var PrivilegeCategorieService $categorieService */ $agentService = $container->get(AgentService::class); $agentAutoriteService = $container->get(AgentAutoriteService::class); Loading @@ -38,6 +42,9 @@ class EntretienProfessionnelAssertionFactory { $structureService = $container->get(StructureService::class); $userService = $container->get(UserService::class); $privilegeService = $container->get(PrivilegeService::class); $categorieService = $container->get(PrivilegeCategorieService::class); /** @var EntretienProfessionnelAssertion $assertion */ $assertion = new EntretienProfessionnelAssertion(); $assertion->setAgentService($agentService); Loading @@ -47,6 +54,9 @@ class EntretienProfessionnelAssertionFactory { $assertion->setStructureService($structureService); $assertion->setUserService($userService); $assertion->setPrivilegeService($privilegeService); $assertion->setPrivilegeCategorieService($categorieService); /* @var $application Application */ $application = $container->get('Application'); $mvcEvent = $application->getMvcEvent(); Loading
module/EntretienProfessionnel/src/EntretienProfessionnel/Provider/Privilege/EntretienproPrivileges.php +2 −1 Changes for module/EntretienProfessionnel/src/EntretienProfessionnel/Provider/Privilege/EntretienproPrivileges.php: 2 added lines, 1 removed line. Original line number Diff line number Diff line Loading @@ -10,7 +10,8 @@ class EntretienproPrivileges extends Privileges const ENTRETIENPRO_MESENTRETIENS = 'entretienpro-entretienpro_mesentretiens'; const ENTRETIENPRO_AFFICHER = 'entretienpro-entretienpro_afficher'; const ENTRETIENPRO_EXPORTER = 'entretienpro-entretienpro_exporter'; const ENTRETIENPRO_AJOUTER = 'entretienpro-entretienpro_ajouter'; const ENTRETIENPRO_CONVOQUER = 'entretienpro-entretienpro_convoquer'; const ENTRETIENPRO_MODIFIER = 'entretienpro-entretienpro_modifier'; const ENTRETIENPRO_HISTORISER = 'entretienpro-entretienpro_historiser'; const ENTRETIENPRO_DETRUIRE = 'entretienpro-entretienpro_detruire'; Loading