Loading CHANGELOG.md +1 −0 Original line number Diff line number Diff line Loading @@ -4,6 +4,7 @@ Journal des modifications 6.0.3 ----- - [FIX] Signature de méthode setObject() modifiée en PHP8 dans Doctrine\Laminas\Hydrator\Strategy\AbstractCollectionStrategy. - Mise en place d'une zone de dépot du pv de soutrenance sur la page de présoutenance 6.0.2 ----- Loading module/Soutenance/config/others/justificatif.config.php +12 −1 Original line number Diff line number Diff line Loading @@ -11,7 +11,6 @@ use Soutenance\Form\Justificatif\JustificatifForm; use Soutenance\Form\Justificatif\JustificatifFormFactory; use Soutenance\Form\Justificatif\JustificatifHydratorFactory; use Soutenance\Provider\Privilege\JustificatifPrivileges; use Soutenance\Provider\Privilege\PresoutenancePrivileges; use Soutenance\Provider\Privilege\PropositionPrivileges; use Soutenance\Service\Justificatif\JustificatifService; use Soutenance\Service\Justificatif\JustificatifServiceFactory; Loading Loading @@ -74,6 +73,7 @@ return [ 'action' => [ 'ajouter-autorisation-soutenance', 'ajouter-rapport-soutenance', 'ajouter-proces-verbal-soutenance', ], 'privileges' => PropositionPrivileges::PROPOSITION_MODIFIER_GESTION, ], Loading Loading @@ -145,6 +145,17 @@ return [ ], ], ], 'ajouter-proces-verbal-soutenance' => [ 'type' => Segment::class, 'options' => [ 'route' => '/ajouter-proces-verbal-soutenance', 'defaults' => [ /** @see JustificatifController::ajouterProcesVerbalAction() */ 'controller' => JustificatifController::class, 'action' => 'ajouter-proces-verbal-soutenance', ], ], ], ], ], ], Loading module/Soutenance/src/Soutenance/Controller/JustificatifController.php +40 −0 Original line number Diff line number Diff line Loading @@ -204,4 +204,44 @@ class JustificatifController extends AbstractController { $vm->setTemplate('soutenance/justificatif/ajouter'); return $vm; } public function ajouterProcesVerbalSoutenanceAction() : ViewModel { $these = $this->requestedThese(); $proposition = $this->getPropositionService()->findOneForThese($these); $fichier = new Fichier(); $nature = $this->fichierTheseService->fetchNatureFichier(NatureFichier::CODE_PV_SOUTENANCE); $fichier->setNature($nature); $justificatif = new Justificatif(); $justificatif->setProposition($proposition); $form = $this->getJustificatifForm(); $form->setAttribute('action', $this->url()->fromRoute('soutenance/justificatif/ajouter-proces-verbal-soutenance', ['these' => $these->getId()], [], true)); $form->bind($justificatif); $form->init(); $request = $this->getRequest(); if ($request->isPost()) { // $data = $request->getPost(); $files = ['files' => $request->getFiles()->toArray()]; if (!empty($files)) { $version = $this->fichierTheseService->fetchVersionFichier(VersionFichier::CODE_ORIG); $fichiers = $this->fichierTheseService->createFichierThesesFromUpload($these, $files, $nature, $version); $justificatif->setFichier($fichiers[0]); $this->getJustificatifService()->create($justificatif); } exit(); } $vm = new ViewModel([ 'title' => "Téléversement du procès-verbal de soutenance", 'these' => $these, 'form' => $form, ]); $vm->setTemplate('soutenance/justificatif/ajouter'); return $vm; } } No newline at end of file module/Soutenance/src/Soutenance/Controller/PresoutenanceController.php +2 −0 Original line number Diff line number Diff line Loading @@ -109,6 +109,7 @@ class PresoutenanceController extends AbstractController $autorisation = $proposition->getJustificatif(NatureFichier::CODE_AUTORISATION_SOUTENANCE, null); $rapport = $proposition->getJustificatif(NatureFichier::CODE_RAPPORT_SOUTENANCE, null); $pv = $proposition->getJustificatif(NatureFichier::CODE_PV_SOUTENANCE, null); /** ==> clef: Membre->getActeur()->getIndividu()->getId() <== */ $engagements = $this->getEngagementImpartialiteService()->getEngagmentsImpartialiteByThese($these); Loading @@ -134,6 +135,7 @@ class PresoutenanceController extends AbstractController 'deadline' => $this->getParametreService()->getValeurForParametre(SoutenanceParametres::CATEGORIE, SoutenanceParametres::DELAI_RETOUR), 'autorisation' => $autorisation, 'pv' => $pv, 'rapport' => $rapport, ]); } Loading module/Soutenance/view/soutenance/presoutenance/partial/avis-soutenance.phtml +2 −2 Original line number Diff line number Diff line Loading @@ -53,7 +53,7 @@ $tousLesAvis = count($rapporteurs) === count($avis) ; <?php $acteur = $rapporteur->getActeur(); $avi = ($acteur !== null)?$avis[$acteur->getIndividu()->getId()]:null; $avi = ($acteur !== null && isset($avis[$acteur->getIndividu()->getId()]))?$avis[$acteur->getIndividu()->getId()]:null; ?> Loading Loading @@ -101,7 +101,7 @@ $tousLesAvis = count($rapporteurs) === count($avis) ; </td> <td> <?php if ($acteur) : ?> <?php if ($engagements[$acteur->getIndividu()->getId()] && $avis[$acteur->getIndividu()->getId()]) : ?> <?php if (isset($engagements[$acteur->getIndividu()->getId()]) && isset($avis[$acteur->getIndividu()->getId()])) : ?> <a <?php /** @see TELECHARGER FICHIER */ ?> href=" <?php echo $this->urlFichierThese->telechargerFichierThese($these, $avis[$acteur->getIndividu()->getId()]->getFichier()); ?>" > Loading Loading
CHANGELOG.md +1 −0 Original line number Diff line number Diff line Loading @@ -4,6 +4,7 @@ Journal des modifications 6.0.3 ----- - [FIX] Signature de méthode setObject() modifiée en PHP8 dans Doctrine\Laminas\Hydrator\Strategy\AbstractCollectionStrategy. - Mise en place d'une zone de dépot du pv de soutrenance sur la page de présoutenance 6.0.2 ----- Loading
module/Soutenance/config/others/justificatif.config.php +12 −1 Original line number Diff line number Diff line Loading @@ -11,7 +11,6 @@ use Soutenance\Form\Justificatif\JustificatifForm; use Soutenance\Form\Justificatif\JustificatifFormFactory; use Soutenance\Form\Justificatif\JustificatifHydratorFactory; use Soutenance\Provider\Privilege\JustificatifPrivileges; use Soutenance\Provider\Privilege\PresoutenancePrivileges; use Soutenance\Provider\Privilege\PropositionPrivileges; use Soutenance\Service\Justificatif\JustificatifService; use Soutenance\Service\Justificatif\JustificatifServiceFactory; Loading Loading @@ -74,6 +73,7 @@ return [ 'action' => [ 'ajouter-autorisation-soutenance', 'ajouter-rapport-soutenance', 'ajouter-proces-verbal-soutenance', ], 'privileges' => PropositionPrivileges::PROPOSITION_MODIFIER_GESTION, ], Loading Loading @@ -145,6 +145,17 @@ return [ ], ], ], 'ajouter-proces-verbal-soutenance' => [ 'type' => Segment::class, 'options' => [ 'route' => '/ajouter-proces-verbal-soutenance', 'defaults' => [ /** @see JustificatifController::ajouterProcesVerbalAction() */ 'controller' => JustificatifController::class, 'action' => 'ajouter-proces-verbal-soutenance', ], ], ], ], ], ], Loading
module/Soutenance/src/Soutenance/Controller/JustificatifController.php +40 −0 Original line number Diff line number Diff line Loading @@ -204,4 +204,44 @@ class JustificatifController extends AbstractController { $vm->setTemplate('soutenance/justificatif/ajouter'); return $vm; } public function ajouterProcesVerbalSoutenanceAction() : ViewModel { $these = $this->requestedThese(); $proposition = $this->getPropositionService()->findOneForThese($these); $fichier = new Fichier(); $nature = $this->fichierTheseService->fetchNatureFichier(NatureFichier::CODE_PV_SOUTENANCE); $fichier->setNature($nature); $justificatif = new Justificatif(); $justificatif->setProposition($proposition); $form = $this->getJustificatifForm(); $form->setAttribute('action', $this->url()->fromRoute('soutenance/justificatif/ajouter-proces-verbal-soutenance', ['these' => $these->getId()], [], true)); $form->bind($justificatif); $form->init(); $request = $this->getRequest(); if ($request->isPost()) { // $data = $request->getPost(); $files = ['files' => $request->getFiles()->toArray()]; if (!empty($files)) { $version = $this->fichierTheseService->fetchVersionFichier(VersionFichier::CODE_ORIG); $fichiers = $this->fichierTheseService->createFichierThesesFromUpload($these, $files, $nature, $version); $justificatif->setFichier($fichiers[0]); $this->getJustificatifService()->create($justificatif); } exit(); } $vm = new ViewModel([ 'title' => "Téléversement du procès-verbal de soutenance", 'these' => $these, 'form' => $form, ]); $vm->setTemplate('soutenance/justificatif/ajouter'); return $vm; } } No newline at end of file
module/Soutenance/src/Soutenance/Controller/PresoutenanceController.php +2 −0 Original line number Diff line number Diff line Loading @@ -109,6 +109,7 @@ class PresoutenanceController extends AbstractController $autorisation = $proposition->getJustificatif(NatureFichier::CODE_AUTORISATION_SOUTENANCE, null); $rapport = $proposition->getJustificatif(NatureFichier::CODE_RAPPORT_SOUTENANCE, null); $pv = $proposition->getJustificatif(NatureFichier::CODE_PV_SOUTENANCE, null); /** ==> clef: Membre->getActeur()->getIndividu()->getId() <== */ $engagements = $this->getEngagementImpartialiteService()->getEngagmentsImpartialiteByThese($these); Loading @@ -134,6 +135,7 @@ class PresoutenanceController extends AbstractController 'deadline' => $this->getParametreService()->getValeurForParametre(SoutenanceParametres::CATEGORIE, SoutenanceParametres::DELAI_RETOUR), 'autorisation' => $autorisation, 'pv' => $pv, 'rapport' => $rapport, ]); } Loading
module/Soutenance/view/soutenance/presoutenance/partial/avis-soutenance.phtml +2 −2 Original line number Diff line number Diff line Loading @@ -53,7 +53,7 @@ $tousLesAvis = count($rapporteurs) === count($avis) ; <?php $acteur = $rapporteur->getActeur(); $avi = ($acteur !== null)?$avis[$acteur->getIndividu()->getId()]:null; $avi = ($acteur !== null && isset($avis[$acteur->getIndividu()->getId()]))?$avis[$acteur->getIndividu()->getId()]:null; ?> Loading Loading @@ -101,7 +101,7 @@ $tousLesAvis = count($rapporteurs) === count($avis) ; </td> <td> <?php if ($acteur) : ?> <?php if ($engagements[$acteur->getIndividu()->getId()] && $avis[$acteur->getIndividu()->getId()]) : ?> <?php if (isset($engagements[$acteur->getIndividu()->getId()]) && isset($avis[$acteur->getIndividu()->getId()])) : ?> <a <?php /** @see TELECHARGER FICHIER */ ?> href=" <?php echo $this->urlFichierThese->telechargerFichierThese($these, $avis[$acteur->getIndividu()->getId()]->getFichier()); ?>" > Loading