Loading SQL/004-evenementiel/00_schemas.sql +0 −20 Original line number Diff line number Diff line Loading @@ -236,29 +236,9 @@ CREATE TABLE IF NOT EXISTS public.evenementiel_inscription_place id SERIAL PRIMARY KEY, inscription_id INTEGER NOT NULL REFERENCES public.evenementiel_inscription(id) ON DELETE CASCADE, -- Données nominatives de la place nom VARCHAR(255) NOT NULL, prenom VARCHAR(255), -- email VARCHAR(255), -- telephone VARCHAR(50), -- Suivi statut VARCHAR(30) NOT NULL DEFAULT 'provisoire' -- provisoire|confirme|annule -- histo_createur_id integer default 0 not null -- constraint evenementiel_inscription_createur_fk -- references unicaen_utilisateur_user, -- histo_creation timestamp default now() not null, -- histo_modificateur_id integer -- constraint evenementiel_inscription_modificateur_fk -- references unicaen_utilisateur_user, -- histo_modification timestamp, -- histo_destructeur_id integer -- constraint evenementiel_inscription_destructeur_fk -- references unicaen_utilisateur_user, -- histo_destruction timestamp ); CREATE INDEX IF NOT EXISTS idx_eip_inscription_id Loading module/Evenementiel/config/merged/Inscription.config.php +4 −4 Original line number Diff line number Diff line Loading @@ -85,7 +85,7 @@ return [ 'controller' => InscriptionController::class, 'action' => [ 'modifier', 'pointer', 'depointer', 'pointer-msg', 'classer' ,'envoyer-liste-principale','envoyer-liste-attente' ,'envoyer-liste-principale','envoyer-liste-complementaire' ], 'privileges' => [ EvenementielinscriptionPrivileges::MODIFIER, Loading Loading @@ -230,13 +230,13 @@ return [ ], ], ], 'envoyer-liste-attente' => [ 'envoyer-liste-complementaire' => [ 'type' => Segment::class, 'options' => [ 'route' => '/envoyer-liste-attente/:entity', 'route' => '/envoyer-liste-complementaire/:entity', 'defaults' => [ /** @see InscriptionController::envoyerListePrincipaleAction() */ 'action' => 'envoyer-liste-attente', 'action' => 'envoyer-liste-complementaire', ], ], ], Loading module/Evenementiel/config/module.config.php +12 −0 Original line number Diff line number Diff line Loading @@ -13,6 +13,8 @@ use Evenementiel\Service\Notification\NotificationServiceFactory; use Evenementiel\Service\Url\UrlService; use Evenementiel\Service\Url\UrlServiceFactory; use Evenementiel\View\Helper\InscriptionButtonHelper; use Evenementiel\View\Helper\PopulateCollection; use Evenementiel\View\Helper\RenderPlacesCollection; return array( 'doctrine' => [ Loading Loading @@ -68,6 +70,16 @@ return array( 'invokables' => [ 'inscriptionButton' => InscriptionButtonHelper::class, ], 'factories' => [ PopulateCollection::class => Laminas\ServiceManager\Factory\InvokableFactory::class, RenderPlacesCollection::class => Laminas\ServiceManager\Factory\InvokableFactory::class, ], 'aliases' => [ 'populateCollection' => PopulateCollection::class, 'renderPlacesCollection' => RenderPlacesCollection::class ], ], 'view_manager' => [ Loading module/Evenementiel/src/Controller/EvenementController.php +93 −38 Original line number Diff line number Diff line Loading @@ -357,39 +357,40 @@ class EvenementController extends AbstractActionController $form->setAttribute('action', $this->url()->fromRoute('evenementiel/evenement/inscription-participant-gestionnaire', ['entity' => $evenement->getId()], [], true)); $form->setAttribute("method", "post"); $form->bind($inscription); $form->setBindOnValidate(false); // facultatif, mais évite la liaison “tardive” $form->prepare(); $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); $form->setData($data); if ($form->isValid()) { if ($inscription->getParticipant() !== null and $inscription->getEvenement() !== null) { if ($inscription->getEvenement() !== null and $inscription->getParticipant() !== null and $inscription->getParticipant()->getId() != -1) { $this->getEtatInstanceService()->setEtatActif($inscription, InscriptionEtats::INSCRIPTION_VALIDER); $this->getInscriptionService()->create($inscription); $this->getEvenementService()->classerInscription($inscription); switch ($inscription->getListe()) { case Inscription::PRINCIPALE : $this->getNotificationService()->triggerListePrincipale($inscription); $this->flashMessenger()->addSuccessMessage("Classement de l'inscription en liste principale."); break; case Inscription::COMPLEMENTAIRE : $this->getNotificationService()->triggerListeComplementaire($inscription); $this->flashMessenger()->addWarningMessage("Liste principale complète. <br/> Classement de l'inscription en liste d'attente."); break; default : $this->flashMessenger()->addErrorMessage("Échec du classement de l'inscription."); break; } } exit(); } // --- initialisation de la collection places du form $nb = max(1, (int)($inscription?->getNombrePlacesDemandees() ?? 1)); // Récupère la collection (au niveau racine ou dans un base fieldset) $collection = $form->has('places') ? $form->get('places') : ($form->getBaseFieldset() && $form->getBaseFieldset()->has('places') ? $form->getBaseFieldset()->get('places') : null); if ($collection) { // fixe le nombre désiré $collection->setCount($nb); // ⚠️ crucial sur les anciennes versions : créer N enfants “vides” if (count($collection->getElements()) === 0 && count($collection->getFieldsets()) === 0) { $collection->populateValues(array_fill(0, $nb, [])); $this->flashMessenger()->addErrorMessage("Échec de l'inscription du participant."); } } // ---- $vm = new ViewModel([ 'title' => "Inscription d'un·e Participant·e à l'évènement " . $evenement->getLibelle() . " du" . $evenement->getDateToString(), Loading Loading @@ -419,6 +420,8 @@ class EvenementController extends AbstractActionController $form->setAttribute('action', $this->url()->fromRoute('evenementiel/evenement/inscription-etudiant-gestionnaire', ['entity' => $evenement->getId()], [], true)); $form->setAttribute("method", "post"); $form->bind($inscription); $form->setBindOnValidate(false); // facultatif, mais évite la liaison “tardive” $form->prepare(); $request = $this->getRequest(); if ($request->isPost()) { Loading @@ -426,9 +429,7 @@ class EvenementController extends AbstractActionController $form->setData($data); if ($form->isValid()) { $etudiant = $inscription->getParticipant()->getEtudiant(); if ($inscription->getParticipant() !== null and $inscription->getEvenement() !== null and $etudiant->getEmail() !== null if ($inscription->getEvenement() !== null and $etudiant->getEmail() !== null ) { // Vérifier si l'étudiant existe déjà en tant que participant $participant = $this->getParticipantService()->createOrUpdateUsager($etudiant); Loading @@ -438,9 +439,26 @@ class EvenementController extends AbstractActionController $inscription->setParticipant($participant); $this->getInscriptionService()->create($inscription); $this->getEtatInstanceService()->setEtatActif($inscription, InscriptionEtats::INSCRIPTION_VALIDER); $this->getEvenementService()->classerInscription($inscription); switch ($inscription->getListe()) { case Inscription::PRINCIPALE : $this->getNotificationService()->triggerListePrincipale($inscription); $this->flashMessenger()->addSuccessMessage("Classement de l'inscription en liste principale."); break; case Inscription::COMPLEMENTAIRE : $this->getNotificationService()->triggerListeComplementaire($inscription); $this->flashMessenger()->addWarningMessage("Liste principale complète. <br/> Classement de l'inscription en liste d'attente."); break; default : $this->flashMessenger()->addErrorMessage("Échec du classement de l'inscription."); break; } } else { $this->flashMessenger()->addErrorMessage("L'étudiant·e <strong>" . $participant->getDenomination() . "</strong> est déjà inscrit·e."); } } else { $this->flashMessenger()->addErrorMessage("Échec de l'inscription de l'étudiant."); } } exit(); Loading Loading @@ -474,6 +492,8 @@ class EvenementController extends AbstractActionController $form->setAttribute('action', $this->url()->fromRoute('evenementiel/evenement/inscription-personnel-gestionnaire', ['entity' => $evenement->getId()], [], true)); $form->setAttribute("method", "post"); $form->bind($inscription); $form->setBindOnValidate(false); // facultatif, mais évite la liaison “tardive” $form->prepare(); $request = $this->getRequest(); if ($request->isPost()) { Loading @@ -481,10 +501,8 @@ class EvenementController extends AbstractActionController $form->setData($data); if ($form->isValid()) { $personnel = $inscription->getParticipant()->getPersonnel(); if ($inscription->getParticipant() !== null and $inscription->getEvenement() !== null and $personnel->getEmail() !== null ) { if ($inscription->getEvenement() !== null && $personnel->getEmail() !== null) { // Vérifier si le personnel existe déjà en tant que participant $participant = $this->getParticipantService()->createOrUpdateUsager($personnel); // verifier si l'inscription existe déjà Loading @@ -493,9 +511,27 @@ class EvenementController extends AbstractActionController $inscription->setParticipant($participant); $this->getInscriptionService()->create($inscription); $this->getEtatInstanceService()->setEtatActif($inscription, InscriptionEtats::INSCRIPTION_VALIDER); $this->getEvenementService()->classerInscription($inscription); switch ($inscription->getListe()) { case Inscription::PRINCIPALE : $this->getNotificationService()->triggerListePrincipale($inscription); $this->flashMessenger()->addSuccessMessage("Classement de l'inscription en liste principale."); break; case Inscription::COMPLEMENTAIRE : $this->getNotificationService()->triggerListeComplementaire($inscription); $this->flashMessenger()->addWarningMessage("Liste principale complète. <br/> Classement de l'inscription en liste d'attente."); break; default : $this->flashMessenger()->addErrorMessage("Échec du classement de l'inscription."); break; } } else { $this->flashMessenger()->addErrorMessage("Le personnel<strong>" . $participant->getDenomination() . "</strong> est déjà inscrit·e."); } } else { $this->flashMessenger()->addErrorMessage("Échec de l'inscription de l'étudiant."); } } exit(); Loading Loading @@ -528,15 +564,15 @@ class EvenementController extends AbstractActionController ], [], true)); $form->setAttribute("method", "post"); $form->bind($inscription); $form->setBindOnValidate(false); // facultatif, mais évite la liaison “tardive” $form->prepare(); $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); $form->setData($data); if ($form->isValid()) { if ($inscription->getParticipant() !== null && $inscription->getEvenement() !== null && $usager->getEmail() !== null if ($inscription->getEvenement() !== null && $usager->getEmail() !== null ) { $participant = $this->getParticipantService()->createOrUpdateUsager($usager); $existingInscription = $this->getInscriptionService()->inscriptionExists($participant, $evenement); Loading @@ -549,10 +585,29 @@ class EvenementController extends AbstractActionController } $this->getInscriptionService()->create($inscription); $this->getEtatInstanceService()->setEtatActif($inscription, InscriptionEtats::INSCRIPTION_DEMANDE); $this->getNotificationService()->triggerInscription($inscription); $this->getEtatInstanceService()->setEtatActif($inscription, InscriptionEtats::INSCRIPTION_VALIDER); $this->getNotificationService()->triggerValidation($inscription); $this->flashMessenger()->addSuccessMessage("Inscription faite."); // $this->getNotificationService()->triggerInscriptionDemande($inscription); // $this->getEtatInstanceService()->setEtatActif($inscription, InscriptionEtats::INSCRIPTION_VALIDER); // $this->getNotificationService()->triggerListePrincipale($inscription); // $this->flashMessenger()->addSuccessMessage("Inscription faite."); $this->getEvenementService()->classerInscription($inscription); switch ($inscription->getListe()) { case Inscription::PRINCIPALE : $this->getNotificationService()->triggerListePrincipale($inscription); $this->flashMessenger()->addSuccessMessage("Classement de l'inscription en liste principale."); break; case Inscription::COMPLEMENTAIRE : $this->getNotificationService()->triggerListeComplementaire($inscription); $this->flashMessenger()->addWarningMessage("Liste principale complète. <br/> Classement de l'inscription en liste d'attente."); break; default : $this->flashMessenger()->addErrorMessage("Échec du classement de l'inscription."); break; } } else { $this->flashMessenger()->addErrorMessage("Échec de l'inscription."); } } exit(); Loading Loading @@ -639,9 +694,9 @@ class EvenementController extends AbstractActionController } $this->getInscriptionService()->create($inscription); $this->getEtatInstanceService()->setEtatActif($inscription, InscriptionEtats::INSCRIPTION_DEMANDE); $this->getNotificationService()->triggerInscription($inscription); $this->getNotificationService()->triggerInscriptionDemande($inscription); $this->getEtatInstanceService()->setEtatActif($inscription, InscriptionEtats::INSCRIPTION_VALIDER); $this->getNotificationService()->triggerValidation($inscription); $this->getNotificationService()->triggerListePrincipale($inscription); $this->flashMessenger()->addSuccessMessage("Inscription faite."); } } Loading Loading @@ -685,7 +740,7 @@ class EvenementController extends AbstractActionController if ($form->isValid()) { $inscriptions = match ($data['liste']) { Inscription::PRINCIPALE => $evenement->getListePrincipale(), Inscription::ATTENTE => $evenement->getListeAttente(), Inscription::COMPLEMENTAIRE => $evenement->getListeComplementaire(), 'tous' => $evenement->getListeValide(), default => [], }; Loading module/Evenementiel/src/Controller/InscriptionController.php +54 −75 File changed.Preview size limit exceeded, changes collapsed. Show changes Loading
SQL/004-evenementiel/00_schemas.sql +0 −20 Original line number Diff line number Diff line Loading @@ -236,29 +236,9 @@ CREATE TABLE IF NOT EXISTS public.evenementiel_inscription_place id SERIAL PRIMARY KEY, inscription_id INTEGER NOT NULL REFERENCES public.evenementiel_inscription(id) ON DELETE CASCADE, -- Données nominatives de la place nom VARCHAR(255) NOT NULL, prenom VARCHAR(255), -- email VARCHAR(255), -- telephone VARCHAR(50), -- Suivi statut VARCHAR(30) NOT NULL DEFAULT 'provisoire' -- provisoire|confirme|annule -- histo_createur_id integer default 0 not null -- constraint evenementiel_inscription_createur_fk -- references unicaen_utilisateur_user, -- histo_creation timestamp default now() not null, -- histo_modificateur_id integer -- constraint evenementiel_inscription_modificateur_fk -- references unicaen_utilisateur_user, -- histo_modification timestamp, -- histo_destructeur_id integer -- constraint evenementiel_inscription_destructeur_fk -- references unicaen_utilisateur_user, -- histo_destruction timestamp ); CREATE INDEX IF NOT EXISTS idx_eip_inscription_id Loading
module/Evenementiel/config/merged/Inscription.config.php +4 −4 Original line number Diff line number Diff line Loading @@ -85,7 +85,7 @@ return [ 'controller' => InscriptionController::class, 'action' => [ 'modifier', 'pointer', 'depointer', 'pointer-msg', 'classer' ,'envoyer-liste-principale','envoyer-liste-attente' ,'envoyer-liste-principale','envoyer-liste-complementaire' ], 'privileges' => [ EvenementielinscriptionPrivileges::MODIFIER, Loading Loading @@ -230,13 +230,13 @@ return [ ], ], ], 'envoyer-liste-attente' => [ 'envoyer-liste-complementaire' => [ 'type' => Segment::class, 'options' => [ 'route' => '/envoyer-liste-attente/:entity', 'route' => '/envoyer-liste-complementaire/:entity', 'defaults' => [ /** @see InscriptionController::envoyerListePrincipaleAction() */ 'action' => 'envoyer-liste-attente', 'action' => 'envoyer-liste-complementaire', ], ], ], Loading
module/Evenementiel/config/module.config.php +12 −0 Original line number Diff line number Diff line Loading @@ -13,6 +13,8 @@ use Evenementiel\Service\Notification\NotificationServiceFactory; use Evenementiel\Service\Url\UrlService; use Evenementiel\Service\Url\UrlServiceFactory; use Evenementiel\View\Helper\InscriptionButtonHelper; use Evenementiel\View\Helper\PopulateCollection; use Evenementiel\View\Helper\RenderPlacesCollection; return array( 'doctrine' => [ Loading Loading @@ -68,6 +70,16 @@ return array( 'invokables' => [ 'inscriptionButton' => InscriptionButtonHelper::class, ], 'factories' => [ PopulateCollection::class => Laminas\ServiceManager\Factory\InvokableFactory::class, RenderPlacesCollection::class => Laminas\ServiceManager\Factory\InvokableFactory::class, ], 'aliases' => [ 'populateCollection' => PopulateCollection::class, 'renderPlacesCollection' => RenderPlacesCollection::class ], ], 'view_manager' => [ Loading
module/Evenementiel/src/Controller/EvenementController.php +93 −38 Original line number Diff line number Diff line Loading @@ -357,39 +357,40 @@ class EvenementController extends AbstractActionController $form->setAttribute('action', $this->url()->fromRoute('evenementiel/evenement/inscription-participant-gestionnaire', ['entity' => $evenement->getId()], [], true)); $form->setAttribute("method", "post"); $form->bind($inscription); $form->setBindOnValidate(false); // facultatif, mais évite la liaison “tardive” $form->prepare(); $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); $form->setData($data); if ($form->isValid()) { if ($inscription->getParticipant() !== null and $inscription->getEvenement() !== null) { if ($inscription->getEvenement() !== null and $inscription->getParticipant() !== null and $inscription->getParticipant()->getId() != -1) { $this->getEtatInstanceService()->setEtatActif($inscription, InscriptionEtats::INSCRIPTION_VALIDER); $this->getInscriptionService()->create($inscription); $this->getEvenementService()->classerInscription($inscription); switch ($inscription->getListe()) { case Inscription::PRINCIPALE : $this->getNotificationService()->triggerListePrincipale($inscription); $this->flashMessenger()->addSuccessMessage("Classement de l'inscription en liste principale."); break; case Inscription::COMPLEMENTAIRE : $this->getNotificationService()->triggerListeComplementaire($inscription); $this->flashMessenger()->addWarningMessage("Liste principale complète. <br/> Classement de l'inscription en liste d'attente."); break; default : $this->flashMessenger()->addErrorMessage("Échec du classement de l'inscription."); break; } } exit(); } // --- initialisation de la collection places du form $nb = max(1, (int)($inscription?->getNombrePlacesDemandees() ?? 1)); // Récupère la collection (au niveau racine ou dans un base fieldset) $collection = $form->has('places') ? $form->get('places') : ($form->getBaseFieldset() && $form->getBaseFieldset()->has('places') ? $form->getBaseFieldset()->get('places') : null); if ($collection) { // fixe le nombre désiré $collection->setCount($nb); // ⚠️ crucial sur les anciennes versions : créer N enfants “vides” if (count($collection->getElements()) === 0 && count($collection->getFieldsets()) === 0) { $collection->populateValues(array_fill(0, $nb, [])); $this->flashMessenger()->addErrorMessage("Échec de l'inscription du participant."); } } // ---- $vm = new ViewModel([ 'title' => "Inscription d'un·e Participant·e à l'évènement " . $evenement->getLibelle() . " du" . $evenement->getDateToString(), Loading Loading @@ -419,6 +420,8 @@ class EvenementController extends AbstractActionController $form->setAttribute('action', $this->url()->fromRoute('evenementiel/evenement/inscription-etudiant-gestionnaire', ['entity' => $evenement->getId()], [], true)); $form->setAttribute("method", "post"); $form->bind($inscription); $form->setBindOnValidate(false); // facultatif, mais évite la liaison “tardive” $form->prepare(); $request = $this->getRequest(); if ($request->isPost()) { Loading @@ -426,9 +429,7 @@ class EvenementController extends AbstractActionController $form->setData($data); if ($form->isValid()) { $etudiant = $inscription->getParticipant()->getEtudiant(); if ($inscription->getParticipant() !== null and $inscription->getEvenement() !== null and $etudiant->getEmail() !== null if ($inscription->getEvenement() !== null and $etudiant->getEmail() !== null ) { // Vérifier si l'étudiant existe déjà en tant que participant $participant = $this->getParticipantService()->createOrUpdateUsager($etudiant); Loading @@ -438,9 +439,26 @@ class EvenementController extends AbstractActionController $inscription->setParticipant($participant); $this->getInscriptionService()->create($inscription); $this->getEtatInstanceService()->setEtatActif($inscription, InscriptionEtats::INSCRIPTION_VALIDER); $this->getEvenementService()->classerInscription($inscription); switch ($inscription->getListe()) { case Inscription::PRINCIPALE : $this->getNotificationService()->triggerListePrincipale($inscription); $this->flashMessenger()->addSuccessMessage("Classement de l'inscription en liste principale."); break; case Inscription::COMPLEMENTAIRE : $this->getNotificationService()->triggerListeComplementaire($inscription); $this->flashMessenger()->addWarningMessage("Liste principale complète. <br/> Classement de l'inscription en liste d'attente."); break; default : $this->flashMessenger()->addErrorMessage("Échec du classement de l'inscription."); break; } } else { $this->flashMessenger()->addErrorMessage("L'étudiant·e <strong>" . $participant->getDenomination() . "</strong> est déjà inscrit·e."); } } else { $this->flashMessenger()->addErrorMessage("Échec de l'inscription de l'étudiant."); } } exit(); Loading Loading @@ -474,6 +492,8 @@ class EvenementController extends AbstractActionController $form->setAttribute('action', $this->url()->fromRoute('evenementiel/evenement/inscription-personnel-gestionnaire', ['entity' => $evenement->getId()], [], true)); $form->setAttribute("method", "post"); $form->bind($inscription); $form->setBindOnValidate(false); // facultatif, mais évite la liaison “tardive” $form->prepare(); $request = $this->getRequest(); if ($request->isPost()) { Loading @@ -481,10 +501,8 @@ class EvenementController extends AbstractActionController $form->setData($data); if ($form->isValid()) { $personnel = $inscription->getParticipant()->getPersonnel(); if ($inscription->getParticipant() !== null and $inscription->getEvenement() !== null and $personnel->getEmail() !== null ) { if ($inscription->getEvenement() !== null && $personnel->getEmail() !== null) { // Vérifier si le personnel existe déjà en tant que participant $participant = $this->getParticipantService()->createOrUpdateUsager($personnel); // verifier si l'inscription existe déjà Loading @@ -493,9 +511,27 @@ class EvenementController extends AbstractActionController $inscription->setParticipant($participant); $this->getInscriptionService()->create($inscription); $this->getEtatInstanceService()->setEtatActif($inscription, InscriptionEtats::INSCRIPTION_VALIDER); $this->getEvenementService()->classerInscription($inscription); switch ($inscription->getListe()) { case Inscription::PRINCIPALE : $this->getNotificationService()->triggerListePrincipale($inscription); $this->flashMessenger()->addSuccessMessage("Classement de l'inscription en liste principale."); break; case Inscription::COMPLEMENTAIRE : $this->getNotificationService()->triggerListeComplementaire($inscription); $this->flashMessenger()->addWarningMessage("Liste principale complète. <br/> Classement de l'inscription en liste d'attente."); break; default : $this->flashMessenger()->addErrorMessage("Échec du classement de l'inscription."); break; } } else { $this->flashMessenger()->addErrorMessage("Le personnel<strong>" . $participant->getDenomination() . "</strong> est déjà inscrit·e."); } } else { $this->flashMessenger()->addErrorMessage("Échec de l'inscription de l'étudiant."); } } exit(); Loading Loading @@ -528,15 +564,15 @@ class EvenementController extends AbstractActionController ], [], true)); $form->setAttribute("method", "post"); $form->bind($inscription); $form->setBindOnValidate(false); // facultatif, mais évite la liaison “tardive” $form->prepare(); $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); $form->setData($data); if ($form->isValid()) { if ($inscription->getParticipant() !== null && $inscription->getEvenement() !== null && $usager->getEmail() !== null if ($inscription->getEvenement() !== null && $usager->getEmail() !== null ) { $participant = $this->getParticipantService()->createOrUpdateUsager($usager); $existingInscription = $this->getInscriptionService()->inscriptionExists($participant, $evenement); Loading @@ -549,10 +585,29 @@ class EvenementController extends AbstractActionController } $this->getInscriptionService()->create($inscription); $this->getEtatInstanceService()->setEtatActif($inscription, InscriptionEtats::INSCRIPTION_DEMANDE); $this->getNotificationService()->triggerInscription($inscription); $this->getEtatInstanceService()->setEtatActif($inscription, InscriptionEtats::INSCRIPTION_VALIDER); $this->getNotificationService()->triggerValidation($inscription); $this->flashMessenger()->addSuccessMessage("Inscription faite."); // $this->getNotificationService()->triggerInscriptionDemande($inscription); // $this->getEtatInstanceService()->setEtatActif($inscription, InscriptionEtats::INSCRIPTION_VALIDER); // $this->getNotificationService()->triggerListePrincipale($inscription); // $this->flashMessenger()->addSuccessMessage("Inscription faite."); $this->getEvenementService()->classerInscription($inscription); switch ($inscription->getListe()) { case Inscription::PRINCIPALE : $this->getNotificationService()->triggerListePrincipale($inscription); $this->flashMessenger()->addSuccessMessage("Classement de l'inscription en liste principale."); break; case Inscription::COMPLEMENTAIRE : $this->getNotificationService()->triggerListeComplementaire($inscription); $this->flashMessenger()->addWarningMessage("Liste principale complète. <br/> Classement de l'inscription en liste d'attente."); break; default : $this->flashMessenger()->addErrorMessage("Échec du classement de l'inscription."); break; } } else { $this->flashMessenger()->addErrorMessage("Échec de l'inscription."); } } exit(); Loading Loading @@ -639,9 +694,9 @@ class EvenementController extends AbstractActionController } $this->getInscriptionService()->create($inscription); $this->getEtatInstanceService()->setEtatActif($inscription, InscriptionEtats::INSCRIPTION_DEMANDE); $this->getNotificationService()->triggerInscription($inscription); $this->getNotificationService()->triggerInscriptionDemande($inscription); $this->getEtatInstanceService()->setEtatActif($inscription, InscriptionEtats::INSCRIPTION_VALIDER); $this->getNotificationService()->triggerValidation($inscription); $this->getNotificationService()->triggerListePrincipale($inscription); $this->flashMessenger()->addSuccessMessage("Inscription faite."); } } Loading Loading @@ -685,7 +740,7 @@ class EvenementController extends AbstractActionController if ($form->isValid()) { $inscriptions = match ($data['liste']) { Inscription::PRINCIPALE => $evenement->getListePrincipale(), Inscription::ATTENTE => $evenement->getListeAttente(), Inscription::COMPLEMENTAIRE => $evenement->getListeComplementaire(), 'tous' => $evenement->getListeValide(), default => [], }; Loading
module/Evenementiel/src/Controller/InscriptionController.php +54 −75 File changed.Preview size limit exceeded, changes collapsed. Show changes