Loading CHANGELOG.md +1 −0 Changes for CHANGELOG.md: 1 added line, 0 removed lines. Original line number Diff line number Diff line Loading @@ -14,6 +14,7 @@ Journal des modifications - Module Soutenances : Affichage de l'historique des actions effectuées (horodatages) en dessous de chacune d'elles - Amélioration de la page consacrée aux profils (filtrage, explications, esthétique) et harmonisation de la page Rôles et privilèges. - Création/modif d'établissement d'inscription, d'ED/UR : obligation de fournir un logo ; harmonisation des formulaires de création/modif d'ED/UR. - Variables d'établissement : améliorations de la création/modif de variable (notamment choix du 'code' parmi une liste fermée). - [FIX] Notifications de demande d'engagement d'impartialité et d'avis de soutenance : utilisation en priorité du mail de l'acteur. - [FIX] Impossible d'accèder aux pages de consultation/modification d'ED ou d'UR. - [FIX] Coquille dans le procès verbal de soutenance (PDF). Loading doc/release-notes/9.0.0/01_divers.sql +8 −0 Changes for doc/release-notes/9.0.0/01_divers.sql: 8 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -2,6 +2,14 @@ -- 9.0.0 -- -- -- Suppression de variables abandonnées. -- delete from variable where code in ('EMAIL_BDD', 'EMAIL_BU', 'TRIBUNAL_COMPETENT'); delete from variable where code is null; -- -- Suppression vue abandonnée. -- Loading module/Application/src/Application/Entity/Db/Variable.php +7 −0 Changes for module/Application/src/Application/Entity/Db/Variable.php: 7 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -20,6 +20,13 @@ class Variable implements HistoriqueAwareInterface const CODE_ETB_LIB = 'ETB_LIB'; // Ex: "Université de Caen Normandie" const CODE_ETB_LIB_TIT_RESP = 'ETB_LIB_TIT_RESP'; // Ex: "Le Président" const CODE_ETB_LIB_NOM_RESP = 'ETB_LIB_NOM_RESP'; // Ex: "Pierre Denise" const CODES = [ self::CODE_EMAIL_ASSISTANCE, self::CODE_ETB_ART_ETB_LIB, self::CODE_ETB_LIB, self::CODE_ETB_LIB_TIT_RESP, self::CODE_ETB_LIB_NOM_RESP, ]; /** * @var string Loading module/Application/src/Application/Service/Variable/VariableService.php +19 −31 Changes for module/Application/src/Application/Service/Variable/VariableService.php: 19 added lines, 31 removed lines. Original line number Diff line number Diff line Loading @@ -6,7 +6,8 @@ use Application\Entity\Db\Repository\VariableRepository; use Application\Entity\Db\Variable; use Application\Service\BaseService; use Application\Service\Source\SourceServiceAwareTrait; use Doctrine\ORM\OptimisticLockException; use Doctrine\ORM\Exception\ORMException; use Structure\Entity\Db\Etablissement; use UnicaenApp\Exception\RuntimeException; /** Loading @@ -15,10 +16,8 @@ use UnicaenApp\Exception\RuntimeException; class VariableService extends BaseService { use SourceServiceAwareTrait; /** * @return VariableRepository */ public function getRepository() public function getRepository(): VariableRepository { /** @var VariableRepository $repo */ $repo = $this->entityManager->getRepository(Variable::class); Loading @@ -26,58 +25,47 @@ class VariableService extends BaseService return $repo; } /** * @param Variable $profil * @return Variable */ public function create($variable) public function create(Variable $variable): Variable { $this->getEntityManager()->persist($variable); try { $this->getEntityManager()->persist($variable); $this->getEntityManager()->flush($variable); } catch (OptimisticLockException $e) { throw new RuntimeException("Un problème s'est produit lors de la création d'une Variable", $e); } catch (ORMException $e) { throw new RuntimeException("Un problème s'est produit lors de la création de la Variable", $e); } return $variable; } /** * @param Variable $variable * @return Variable */ public function update($variable) public function update(Variable $variable): Variable { try { $this->getEntityManager()->flush($variable); } catch (OptimisticLockException $e) { throw new RuntimeException("Un problème s'est produit lors de la mise à jour d'une Variable", $e); } catch (ORMException $e) { throw new RuntimeException("Un problème s'est produit lors de la mise à jour de la Variable", $e); } return $variable; } /** * @param Variable $variable */ public function delete($variable) public function delete(Variable $variable): void { $this->getEntityManager()->remove($variable); try { $this->getEntityManager()->remove($variable); $this->getEntityManager()->flush(); } catch (OptimisticLockException $e) { throw new RuntimeException("Un problème s'est produit lors de la suppression d'une Variable", $e); } catch (ORMException $e) { throw new RuntimeException("Un problème s'est produit lors de la suppression de la Variable", null, $e); } } /** * @return Variable */ public function newVariable(): Variable public function newVariable(Etablissement $etablissement): Variable { $variable = new Variable(); $variable->setDateDebutValidite(date_create()); $variable->setDateFinValidite(date_create()->modify('+10 years')); $variable->setSource($this->sourceService->fetchApplicationSource()); $variable->setSourceCode($this->sourceService->genereateSourceCode()); $variable->setEtablissement($etablissement); return $variable; } Loading module/Structure/config/others/variable.config.php +3 −0 Changes for module/Structure/config/others/variable.config.php: 3 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -6,6 +6,8 @@ use Laminas\Router\Http\Segment; use Structure\Controller\Factory\VariableControllerFactory; use Structure\Controller\VariableController; use Structure\Form\Factory\VariableFormFactory; use Structure\Form\Factory\VariableHydratorFactory; use Structure\Form\Hydrator\VariableHydrator; use Structure\Form\VariableForm; use UnicaenAuth\Guard\PrivilegeController; Loading Loading @@ -66,6 +68,7 @@ return [ ], 'hydrators' => [ 'factories' => [ VariableHydrator::class => VariableHydratorFactory::class, ] ], 'service_manager' => [ Loading Loading
CHANGELOG.md +1 −0 Changes for CHANGELOG.md: 1 added line, 0 removed lines. Original line number Diff line number Diff line Loading @@ -14,6 +14,7 @@ Journal des modifications - Module Soutenances : Affichage de l'historique des actions effectuées (horodatages) en dessous de chacune d'elles - Amélioration de la page consacrée aux profils (filtrage, explications, esthétique) et harmonisation de la page Rôles et privilèges. - Création/modif d'établissement d'inscription, d'ED/UR : obligation de fournir un logo ; harmonisation des formulaires de création/modif d'ED/UR. - Variables d'établissement : améliorations de la création/modif de variable (notamment choix du 'code' parmi une liste fermée). - [FIX] Notifications de demande d'engagement d'impartialité et d'avis de soutenance : utilisation en priorité du mail de l'acteur. - [FIX] Impossible d'accèder aux pages de consultation/modification d'ED ou d'UR. - [FIX] Coquille dans le procès verbal de soutenance (PDF). Loading
doc/release-notes/9.0.0/01_divers.sql +8 −0 Changes for doc/release-notes/9.0.0/01_divers.sql: 8 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -2,6 +2,14 @@ -- 9.0.0 -- -- -- Suppression de variables abandonnées. -- delete from variable where code in ('EMAIL_BDD', 'EMAIL_BU', 'TRIBUNAL_COMPETENT'); delete from variable where code is null; -- -- Suppression vue abandonnée. -- Loading
module/Application/src/Application/Entity/Db/Variable.php +7 −0 Changes for module/Application/src/Application/Entity/Db/Variable.php: 7 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -20,6 +20,13 @@ class Variable implements HistoriqueAwareInterface const CODE_ETB_LIB = 'ETB_LIB'; // Ex: "Université de Caen Normandie" const CODE_ETB_LIB_TIT_RESP = 'ETB_LIB_TIT_RESP'; // Ex: "Le Président" const CODE_ETB_LIB_NOM_RESP = 'ETB_LIB_NOM_RESP'; // Ex: "Pierre Denise" const CODES = [ self::CODE_EMAIL_ASSISTANCE, self::CODE_ETB_ART_ETB_LIB, self::CODE_ETB_LIB, self::CODE_ETB_LIB_TIT_RESP, self::CODE_ETB_LIB_NOM_RESP, ]; /** * @var string Loading
module/Application/src/Application/Service/Variable/VariableService.php +19 −31 Changes for module/Application/src/Application/Service/Variable/VariableService.php: 19 added lines, 31 removed lines. Original line number Diff line number Diff line Loading @@ -6,7 +6,8 @@ use Application\Entity\Db\Repository\VariableRepository; use Application\Entity\Db\Variable; use Application\Service\BaseService; use Application\Service\Source\SourceServiceAwareTrait; use Doctrine\ORM\OptimisticLockException; use Doctrine\ORM\Exception\ORMException; use Structure\Entity\Db\Etablissement; use UnicaenApp\Exception\RuntimeException; /** Loading @@ -15,10 +16,8 @@ use UnicaenApp\Exception\RuntimeException; class VariableService extends BaseService { use SourceServiceAwareTrait; /** * @return VariableRepository */ public function getRepository() public function getRepository(): VariableRepository { /** @var VariableRepository $repo */ $repo = $this->entityManager->getRepository(Variable::class); Loading @@ -26,58 +25,47 @@ class VariableService extends BaseService return $repo; } /** * @param Variable $profil * @return Variable */ public function create($variable) public function create(Variable $variable): Variable { $this->getEntityManager()->persist($variable); try { $this->getEntityManager()->persist($variable); $this->getEntityManager()->flush($variable); } catch (OptimisticLockException $e) { throw new RuntimeException("Un problème s'est produit lors de la création d'une Variable", $e); } catch (ORMException $e) { throw new RuntimeException("Un problème s'est produit lors de la création de la Variable", $e); } return $variable; } /** * @param Variable $variable * @return Variable */ public function update($variable) public function update(Variable $variable): Variable { try { $this->getEntityManager()->flush($variable); } catch (OptimisticLockException $e) { throw new RuntimeException("Un problème s'est produit lors de la mise à jour d'une Variable", $e); } catch (ORMException $e) { throw new RuntimeException("Un problème s'est produit lors de la mise à jour de la Variable", $e); } return $variable; } /** * @param Variable $variable */ public function delete($variable) public function delete(Variable $variable): void { $this->getEntityManager()->remove($variable); try { $this->getEntityManager()->remove($variable); $this->getEntityManager()->flush(); } catch (OptimisticLockException $e) { throw new RuntimeException("Un problème s'est produit lors de la suppression d'une Variable", $e); } catch (ORMException $e) { throw new RuntimeException("Un problème s'est produit lors de la suppression de la Variable", null, $e); } } /** * @return Variable */ public function newVariable(): Variable public function newVariable(Etablissement $etablissement): Variable { $variable = new Variable(); $variable->setDateDebutValidite(date_create()); $variable->setDateFinValidite(date_create()->modify('+10 years')); $variable->setSource($this->sourceService->fetchApplicationSource()); $variable->setSourceCode($this->sourceService->genereateSourceCode()); $variable->setEtablissement($etablissement); return $variable; } Loading
module/Structure/config/others/variable.config.php +3 −0 Changes for module/Structure/config/others/variable.config.php: 3 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -6,6 +6,8 @@ use Laminas\Router\Http\Segment; use Structure\Controller\Factory\VariableControllerFactory; use Structure\Controller\VariableController; use Structure\Form\Factory\VariableFormFactory; use Structure\Form\Factory\VariableHydratorFactory; use Structure\Form\Hydrator\VariableHydrator; use Structure\Form\VariableForm; use UnicaenAuth\Guard\PrivilegeController; Loading Loading @@ -66,6 +68,7 @@ return [ ], 'hydrators' => [ 'factories' => [ VariableHydrator::class => VariableHydratorFactory::class, ] ], 'service_manager' => [ Loading