Commit bc6499f7 authored by Jean-Philippe Metivier's avatar Jean-Philippe Metivier
Browse files

[FIX] Donnée : ajout de garde lorsque le mail fourni par les données sources est ' '

parent 3db3d99d
Loading
Loading
Loading
Loading
+1 −0
Changes for CHANGELOG.md: 1 added line, 0 removed lines.
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ Journal des modifications
- Menu Dépôt fichiers divers : remonté et affiché sans condition
- Page Dépôt fichiers divers : téléversement bloqué pour PV soutenance, Pré-rapport soutenance, Rapport soutenance
- Recherche/sélection du PPN IdRef dans les formulaires de modification de structure et d'individu
- [FIX] Donnée : ajout de garde lorsque le mail fourni par les données sources est " " 

5.2.10
------
+5 −2
Changes for module/Individu/src/Individu/Entity/Db/Individu.php: 5 added lines, 2 removed lines.
Original line number Diff line number Diff line
@@ -266,11 +266,14 @@ class Individu implements HistoriqueAwareInterface, SourceAwareInterface, Resour
    public function getEmailPro(): ?string
    {
        $complement = $this->getComplement();
        if ($complement AND !$complement->estHistorise() AND $complement->getEmailPro() !== null) {
        if ($complement AND !$complement->estHistorise()
                AND $complement->getEmailPro() !== null) {
            return $complement->getEmailPro();
        }

        return $this->email;
        $email = $this->email;
        if ($email === null or trim($this->email) === '') return null;
        return $email;
    }

    /**
+0 −1
Changes for module/Soutenance/src/Soutenance/Controller/JustificatifController.php: 0 added lines, 1 removed line.
Original line number Diff line number Diff line
@@ -90,7 +90,6 @@ class JustificatifController extends AbstractController {

            $form->setData($data);
            if ($form->isValid()) {
                var_dump("After form");
                if ($nature === null) $nature = $this->fichierTheseService->fetchNatureFichier($data['nature']);
                $version = $this->fichierTheseService->fetchVersionFichier(VersionFichier::CODE_ORIG);
                $fichiers = $this->fichierTheseService->createFichierThesesFromUpload($these, $files, $nature, $version);
+3 −1
Changes for module/Soutenance/src/Soutenance/Controller/PresoutenanceController.php: 3 added lines, 1 removed line.
Original line number Diff line number Diff line
@@ -692,7 +692,9 @@ class PresoutenanceController extends AbstractController
        /** @var Membre $membre */
        foreach ($proposition->getMembres() as $membre) {
            if ($membre->estMembre()) {
                $email = ($membre->getIndividu() and $membre->getIndividu()->getEmailPro()) ? $membre->getIndividu()->getEmailPro() : $membre->getEmail();
                $email = null;
                if ($membre->getIndividu() and $membre->getIndividu()->getEmailPro()) $email = $membre->getIndividu()->getEmailPro();
                if ($email === null or trim($email) === '') $email = $membre->getEmail();
                /** @see PresoutenanceController::convocationMembreAction() */
                $url = $this->url()->fromRoute('soutenance/presoutenance/convocation-membre', ['proposition' => $proposition->getId(), 'membre' => $membre->getId()], ['force_canonical' => true], true);
                try {
+14 −0
Changes for module/Soutenance/src/Soutenance/Service/Notification/SoutenanceNotificationFactory.php: 14 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -674,6 +674,13 @@ class SoutenanceNotificationFactory extends NotificationFactory
        $these = $proposition->getThese();
        $pdcData = $this->getTheseService()->fetchInformationsPageDeCouverture($these);

        if ($email === null or $email === '') {
            throw new RuntimeException("Aucune adresse électronique pour le doctorant [".$doctorant->getIndividu()->getNomComplet()."]");
        }
        if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
            throw new RuntimeException("L'adresse électronique est mal formée pour le doctorant [".$doctorant->getIndividu()->getNomComplet()."]");
        }

        $notif = new Notification();
        $notif
            ->setSubject("Convocation pour la soutenance de thèse de  " . $doctorant->getNomComplet())
@@ -709,6 +716,13 @@ class SoutenanceNotificationFactory extends NotificationFactory
        $these = $proposition->getThese();
        $pdcData = $this->getTheseService()->fetchInformationsPageDeCouverture($these);

        if ($email === null or $email === '') {
            throw new RuntimeException("Aucune adresse électronique pour le membre [".$membre->getDenomination()."]");
        }
        if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
            throw new RuntimeException("L'adresse électronique est mal formée pour le membre [".$membre->getDenomination()."]");
        }

        $notif = new Notification();
        $notif
            ->setSubject("Convocation pour la soutenance de thèse de  " . $doctorant->getNomComplet())