Loading CHANGELOG.md +1 −0 Changes for CHANGELOG.md: 1 added line, 0 removed lines. Original line number Diff line number Diff line Loading @@ -4,6 +4,7 @@ Journal des modifications 8.6.1 ----- - Module Formation : Affichage pour le doctorant de l'objectif et du programme d'une formation (sur la fiche d'une session de formation) - Module Soutenances : Affichage de l'historique des actions effectuées (horodatages) en dessous de chacune d'elles - [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 module/Horodatage/config/others/horodatage.config.php +4 −0 Changes for module/Horodatage/config/others/horodatage.config.php: 4 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -6,6 +6,8 @@ use Horodatage\Service\Horodatage\HorodatageService; use Horodatage\Service\Horodatage\HorodatageServiceFactory; use Horodatage\View\Helper\DernierHorodatageViewHelper; use Horodatage\View\Helper\DerniersHorodatagesViewHelper; use Horodatage\View\Helper\HorodatagesParTypesViewHelper; use Horodatage\View\Helper\HorodatagesParTypeViewHelper; use Horodatage\View\Helper\HorodatageViewHelper; use UnicaenAuth\Guard\PrivilegeController; Loading Loading @@ -44,6 +46,8 @@ return [ 'horodatage' => HorodatageViewHelper::class, 'dernierHorodatage' => DernierHorodatageViewHelper::class, 'derniersHorodatages' => DerniersHorodatagesViewHelper::class, 'horodatagesParType' => HorodatagesParTypeViewHelper::class, 'horodatagesParTypes' => HorodatagesParTypesViewHelper::class, ], ], Loading module/Horodatage/src/Horodatage/View/Helper/HorodatagesParTypeViewHelper.php 0 → 100644 +21 −0 Changes for module/Horodatage/src/Horodatage/View/Helper/HorodatagesParTypeViewHelper.php: 21 added lines, 0 removed lines. Original line number Diff line number Diff line <?php namespace Horodatage\View\Helper; use Application\View\Renderer\PhpRenderer; use Horodatage\Entity\Interfaces\HasHorodatagesInterface; use Laminas\View\Helper\AbstractHelper; use Laminas\View\Resolver\TemplatePathStack; class HorodatagesParTypeViewHelper extends AbstractHelper { public function __invoke(HasHorodatagesInterface $element, string $type, ?string $complement = null, array $options = []) : string { /** @var PhpRenderer $view */ $view = $this->getView(); $view->resolver()->attach(new TemplatePathStack(['script_paths' => [__DIR__ . "/partial"]])); $horodatages = $element->getHorodatages($type, $complement); return $view->partial('horodatages-par-type', ['element' => $element,'horodatages' => $horodatages, 'options' => $options]); } } No newline at end of file module/Horodatage/src/Horodatage/View/Helper/HorodatagesParTypesViewHelper.php 0 → 100644 +39 −0 Changes for module/Horodatage/src/Horodatage/View/Helper/HorodatagesParTypesViewHelper.php: 39 added lines, 0 removed lines. Original line number Diff line number Diff line <?php namespace Horodatage\View\Helper; use Application\View\Renderer\PhpRenderer; use Horodatage\Entity\Interfaces\HasHorodatagesInterface; use Laminas\View\Helper\AbstractHelper; use Laminas\View\Resolver\TemplatePathStack; class HorodatagesParTypesViewHelper extends AbstractHelper { public function __invoke(HasHorodatagesInterface $element, array $types, array $options = []) : string { /** @var PhpRenderer $view */ $view = $this->getView(); $view->resolver()->attach(new TemplatePathStack(['script_paths' => [__DIR__ . "/partial"]])); $horodatages = []; $hasMultipleEvenements = false; foreach ($types as $couple) { [$type, $complement] = $couple; $allHorodatages = $element->getHorodatages($type, $complement); if (!empty($allHorodatages)) { // Le dernier horodatage $lastHorodatage = $element->getLastHoradatage($type, $complement); $horodatages[$complement] = [ 'last' => $lastHorodatage, 'others' => $allHorodatages, // Les autres horodatages (le reste du tableau) ]; if (count($horodatages[$complement]['others']) > 1) { $hasMultipleEvenements = true; } } } return $view->partial('horodatages-par-types', ['horodatages' => $horodatages, 'options' => $options, 'hasMultipleEvenements' => $hasMultipleEvenements]); } } No newline at end of file module/Horodatage/src/Horodatage/View/Helper/partial/horodatage.phtml +2 −0 Changes for module/Horodatage/src/Horodatage/View/Helper/partial/horodatage.phtml: 2 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -11,10 +11,12 @@ use Horodatage\Entity\Db\Horodatage; ?> <div class="horodatage"> <b> <?php echo $horodatage->getType(); ?> <?php if ($horodatage->getComplement()) : ?> : <?php echo $horodatage->getComplement(); ?> <?php endif; ?> </b> — fait par <?php echo $horodatage->getUtilisateur()->getDisplayName(); ?> le <?php echo $horodatage->getDate()->format('d/m/Y'); ?> 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 @@ -4,6 +4,7 @@ Journal des modifications 8.6.1 ----- - Module Formation : Affichage pour le doctorant de l'objectif et du programme d'une formation (sur la fiche d'une session de formation) - Module Soutenances : Affichage de l'historique des actions effectuées (horodatages) en dessous de chacune d'elles - [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
module/Horodatage/config/others/horodatage.config.php +4 −0 Changes for module/Horodatage/config/others/horodatage.config.php: 4 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -6,6 +6,8 @@ use Horodatage\Service\Horodatage\HorodatageService; use Horodatage\Service\Horodatage\HorodatageServiceFactory; use Horodatage\View\Helper\DernierHorodatageViewHelper; use Horodatage\View\Helper\DerniersHorodatagesViewHelper; use Horodatage\View\Helper\HorodatagesParTypesViewHelper; use Horodatage\View\Helper\HorodatagesParTypeViewHelper; use Horodatage\View\Helper\HorodatageViewHelper; use UnicaenAuth\Guard\PrivilegeController; Loading Loading @@ -44,6 +46,8 @@ return [ 'horodatage' => HorodatageViewHelper::class, 'dernierHorodatage' => DernierHorodatageViewHelper::class, 'derniersHorodatages' => DerniersHorodatagesViewHelper::class, 'horodatagesParType' => HorodatagesParTypeViewHelper::class, 'horodatagesParTypes' => HorodatagesParTypesViewHelper::class, ], ], Loading
module/Horodatage/src/Horodatage/View/Helper/HorodatagesParTypeViewHelper.php 0 → 100644 +21 −0 Changes for module/Horodatage/src/Horodatage/View/Helper/HorodatagesParTypeViewHelper.php: 21 added lines, 0 removed lines. Original line number Diff line number Diff line <?php namespace Horodatage\View\Helper; use Application\View\Renderer\PhpRenderer; use Horodatage\Entity\Interfaces\HasHorodatagesInterface; use Laminas\View\Helper\AbstractHelper; use Laminas\View\Resolver\TemplatePathStack; class HorodatagesParTypeViewHelper extends AbstractHelper { public function __invoke(HasHorodatagesInterface $element, string $type, ?string $complement = null, array $options = []) : string { /** @var PhpRenderer $view */ $view = $this->getView(); $view->resolver()->attach(new TemplatePathStack(['script_paths' => [__DIR__ . "/partial"]])); $horodatages = $element->getHorodatages($type, $complement); return $view->partial('horodatages-par-type', ['element' => $element,'horodatages' => $horodatages, 'options' => $options]); } } No newline at end of file
module/Horodatage/src/Horodatage/View/Helper/HorodatagesParTypesViewHelper.php 0 → 100644 +39 −0 Changes for module/Horodatage/src/Horodatage/View/Helper/HorodatagesParTypesViewHelper.php: 39 added lines, 0 removed lines. Original line number Diff line number Diff line <?php namespace Horodatage\View\Helper; use Application\View\Renderer\PhpRenderer; use Horodatage\Entity\Interfaces\HasHorodatagesInterface; use Laminas\View\Helper\AbstractHelper; use Laminas\View\Resolver\TemplatePathStack; class HorodatagesParTypesViewHelper extends AbstractHelper { public function __invoke(HasHorodatagesInterface $element, array $types, array $options = []) : string { /** @var PhpRenderer $view */ $view = $this->getView(); $view->resolver()->attach(new TemplatePathStack(['script_paths' => [__DIR__ . "/partial"]])); $horodatages = []; $hasMultipleEvenements = false; foreach ($types as $couple) { [$type, $complement] = $couple; $allHorodatages = $element->getHorodatages($type, $complement); if (!empty($allHorodatages)) { // Le dernier horodatage $lastHorodatage = $element->getLastHoradatage($type, $complement); $horodatages[$complement] = [ 'last' => $lastHorodatage, 'others' => $allHorodatages, // Les autres horodatages (le reste du tableau) ]; if (count($horodatages[$complement]['others']) > 1) { $hasMultipleEvenements = true; } } } return $view->partial('horodatages-par-types', ['horodatages' => $horodatages, 'options' => $options, 'hasMultipleEvenements' => $hasMultipleEvenements]); } } No newline at end of file
module/Horodatage/src/Horodatage/View/Helper/partial/horodatage.phtml +2 −0 Changes for module/Horodatage/src/Horodatage/View/Helper/partial/horodatage.phtml: 2 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -11,10 +11,12 @@ use Horodatage\Entity\Db\Horodatage; ?> <div class="horodatage"> <b> <?php echo $horodatage->getType(); ?> <?php if ($horodatage->getComplement()) : ?> : <?php echo $horodatage->getComplement(); ?> <?php endif; ?> </b> — fait par <?php echo $horodatage->getUtilisateur()->getDisplayName(); ?> le <?php echo $horodatage->getDate()->format('d/m/Y'); ?> Loading