Loading module/Formation/src/Formation/Controller/SessionController.php +27 −2 Changes for module/Formation/src/Formation/Controller/SessionController.php: 27 added lines, 2 removed lines. Original line number Diff line number Diff line Loading @@ -579,11 +579,11 @@ class SessionController extends AbstractController $qb = $this->sessionSearchService->getQueryBuilder(); $listing = $qb->getQuery()->getResult(); //export $headers = ['Module', 'Formation', 'Établissement organisateur', $headers = ['Module', 'Formation', 'Type de formation', 'Établissement organisateur', 'Responsable de la formation', 'Formateur(s)', 'État de la session', 'Structures valides pour l\'inscription', 'Modalité', 'Nombre d\'heures', 'Séance(s)', 'Effectif Liste principale', 'Effectif Liste complémentaire', 'Nombre d\'inscrits', 'Nombre d\'inscrits sur liste principale', 'Inscrits sur liste principale']; 'Nombre d\'inscrits sur liste principale', 'Effectif présents d\'après la liste d\'émargement', 'Inscrits sur liste principale']; $records = []; /** @var Session $session */ foreach ($listing as $session) { Loading Loading @@ -614,9 +614,33 @@ class SessionController extends AbstractController return $inscritPrincipale->getDoctorant()->getIndividu(); }, $inscritsPrincipale); if ($session->getEtat()->getCode() !== Etat::CODE_IMMINENT and $session->getEtat()->getCode() !== Etat::CODE_FERME and $session->getEtat()->getCode() !== Etat::CODE_CLOTURER) { $presences = "Les présences ne peuvent pas être affichées."; } else { $presences = $this->getPresenceService()->getRepository()->findPresencesBySession($session); $dictionnaire = []; foreach ($presences as $presence) { if($presence->isPresent()) $dictionnaire[$presence->getSeance()->getId()][] = $presence; } $presences = $dictionnaire; $presencesStrings = array_map(function ($seance) use ($presences, $session) { $nbPresencesParSeances = ""; $seanceDate = $seance->getDebut()->format('d/m/Y H:i'); $seanceId = $seance->getId(); if (isset($presences[$seanceId])) { $nbPresencesParSeances = count($presences[$seanceId]); } return $nbPresencesParSeances ? $seanceDate . ' : ' . $nbPresencesParSeances : null; }, $seances); $presences = $presencesStrings ? implode(' ; ', $presencesStrings) : null; } $entry = []; $entry['Module'] = $formation && $formation->getModule() ? $formation->getModule()->getLibelle() : null; $entry['Formation'] = $formation ? $formation->getLibelle() : null; $entry['Type de formation'] = $formation ? $formation->getType() : null; $entry['Établissement organisateur'] = $session->getSite() ? $session->getSite()->getStructure()->getLibelle() : null; $entry['Responsable de la formation'] = $session->getResponsable() ? $session->getResponsable() : null; $entry['Formateur(s)'] = implode("/", $formateursStrings);; Loading @@ -629,6 +653,7 @@ class SessionController extends AbstractController $entry['Effectif Liste complémentaire'] = $session->getTailleListeComplementaire(); $entry['Nombre d\'inscrits'] = $nbInscrits; $entry['Nombre d\'inscrits sur liste principale'] = $nbInscritsListePrincipale; $entry['Effectif présents d\'après la liste d\'émargement'] = $presences; $entry['Inscrits sur liste principale'] = implode(' / ', $inscritsPrincipaleStrings);; $records[] = $entry; Loading module/Formation/src/Formation/View/Helper/partial/inscription.phtml +21 −10 Changes for module/Formation/src/Formation/View/Helper/partial/inscription.phtml: 21 added lines, 10 removed lines. Original line number Diff line number Diff line Loading @@ -35,7 +35,7 @@ $these = current($doctorant->getTheses()); <?php echo $doctorant->getIndividu()->getNomComplet(); ?> <span class=" <?php if ($inscription->estHistorise()) echo "historisee"; ?> " title="<?php echo $inscription->getDescription(); ?>"> <span class=" <?php if ($inscription->estHistorise()) echo "historisee"; ?> " data-bs-toggle='tooltip' data-bs-placement="right" title="<?php echo strip_tags($inscription->getDescription()); ?>"> <?php foreach ($doctorant->getTheses() as $these) { if ($these->getEtatThese() === These::ETAT_EN_COURS and $these->estNonHistorise()) { echo "<br/>"; Loading Loading @@ -86,27 +86,36 @@ $these = current($doctorant->getTheses()); <?php if (($inscription->getListe() !== null) AND $inscription->getListe()) : ?> <a <?php /** @see \Formation\Controller\InscriptionController::retirerListeAction() */?> href="<?php echo $this->url('formation/inscription/retirer-liste', ['inscription' => $inscription->getId()], ['query' => ['retour' => $this->url('formation/session/afficher', ['session' => $session->getId()])]], true); ?>" title="Retirer des liste l'inscription de <?php echo $doctorant->getIndividu()->getNomComplet(); ?>" data-bs-toggle="tooltip" data-bs-html="true" title="Mettre <?php echo $doctorant->getIndividu()->getNomComplet(); ?> dans la liste des non-classés" data-bs-toggle="tooltip" data-bs-html="true" > <strong>∅</strong></a> <?php endif; ?> <?php if ($actionHistoriser) : ?> <?php if ($inscription->estNonHistorise()) : ?> <?php /** @see \Formation\Controller\InscriptionController::historiserAction() */ ?> <a href="<?php echo $this->url('formation/inscription/historiser', ['inscription' => $inscription->getId()], ['query' => ['retour' => $this->url('formation/session/afficher', ['session' => $session->getId()])]], true); ?>"> <span class="icon icon-historiser"></span></a> <a href="<?php echo $this->url('formation/inscription/historiser', ['inscription' => $inscription->getId()], ['query' => ['retour' => $this->url('formation/session/afficher', ['session' => $session->getId()])]], true); ?>" data-bs-toggle="tooltip" title="Historiser l'inscription de <?php echo $doctorant->getIndividu()->getNomComplet(); ?> pour cette session" > <span class="fa fa-trash"></span></a> <?php else : ?> <?php /** @see \Formation\Controller\InscriptionController::restaurerAction() */ ?> <a href="<?php echo $this->url('formation/inscription/restaurer', ['inscription' => $inscription->getId()], ['query' => ['retour' => $this->url('formation/session/afficher', ['session' => $session->getId()])]], true); ?>"> <span class="icon icon-restaurer"></span></a> <a href="<?php echo $this->url('formation/inscription/restaurer', ['inscription' => $inscription->getId()], ['query' => ['retour' => $this->url('formation/session/afficher', ['session' => $session->getId()])]], true); ?>" data-bs-toggle="tooltip" title="Restaurer l'inscription de <?php echo $doctorant->getIndividu()->getNomComplet(); ?> pour cette session" > <span class="fa fa-trash-restore"></span> </a> <?php endif; ?> <?php if ($canAccorderSursis && $inscription->getSession()->getEtat()->getCode() === Etat::CODE_CLOTURER AND $inscription->getListe() == Inscription::LISTE_PRINCIPALE) : ?> <?php /** @see \Formation\Controller\InscriptionController::accorderSursisAction() */?> <a class="btn btn-primary action ajax-modal" data-event="modification" title="Accorder un sursis à <?php echo $doctorant->getIndividu()->getNomComplet(); ?> pour la saisie de l'enquête" <a class="action ajax-modal" data-event="modification" href="<?php echo $this->url('formation/inscription/accorder-sursis', ['inscription' => $inscription->getId()], true); ?>" data-bs-toggle="tooltip" title="Accorder un sursis à <?php echo $doctorant->getIndividu()->getNomComplet(); ?> pour la saisie de l'enquête" > Accorder un sursis <span class="fa fa-clock"></span> </a> <?php endif; ?> <?php endif; ?> Loading @@ -114,8 +123,10 @@ $these = current($doctorant->getTheses()); <?php /** @see \Formation\Controller\InscriptionController::supprimerAction() */ ?> <a href="<?php echo $this->url('formation/inscription/supprimer', ['inscription' => $inscription->getId()], [], true); ?>" class="ajax-modal" data-event="modification" data-bs-toggle="tooltip" title="Supprimer l'inscription de <?php echo $doctorant->getIndividu()->getNomComplet(); ?> pour cette session" > <span class="icon icon-detruire text-danger"></span></a> <span class="fa fa-bomb text-danger"></span></a> <?php endif; ?> <?php endif; ?> </li> Loading module/Formation/view/formation/session/afficher.phtml +3 −3 Changes for module/Formation/view/formation/session/afficher.phtml: 3 added lines, 3 removed lines. Original line number Diff line number Diff line Loading @@ -314,7 +314,7 @@ echo $this->messenger()->addMessagesFromFlashMessengerWithNoNamespace(); <?php /** @see \Formation\Controller\SessionController::genererEmargementsAction() */ ?> <a href="<?php echo $this->url('formation/session/generer-emargements', ['session' => $session->getId()], [] , true); ?>" target="_blank" class="btn btn-primary action <?php if (empty($seances)) echo " disabled "; ?>"> <span class="fas fa-list"></span> <span class="icon icon-lister"></span> Générer les émargements </a> <?php endif; ?> Loading Loading @@ -379,7 +379,7 @@ echo $this->messenger()->addMessagesFromFlashMessengerWithNoNamespace(); class="ajax-modal" data-event="modification" title="Duplication de la séance" data-bs-toggle="tooltip" data-bs-html="true" > <span class="icon icon-refresh"></span> <span class="icon icon-cloner"></span> </a> <?php endif; ?> <?php if ($canEmargementSeance) : ?> Loading @@ -387,7 +387,7 @@ echo $this->messenger()->addMessagesFromFlashMessengerWithNoNamespace(); <a href="<?php echo $this->url('formation/seance/generer-emargement', ['seance' => $seance->getId()], [], true); ?>" target="_blank" title="Générer l'émargement de la séance" data-bs-toggle="tooltip" data-bs-html="true" > <span class="fas fa-list"></span> <span class="icon icon-lister"></span> </a> <?php endif; ?> Loading Loading
module/Formation/src/Formation/Controller/SessionController.php +27 −2 Changes for module/Formation/src/Formation/Controller/SessionController.php: 27 added lines, 2 removed lines. Original line number Diff line number Diff line Loading @@ -579,11 +579,11 @@ class SessionController extends AbstractController $qb = $this->sessionSearchService->getQueryBuilder(); $listing = $qb->getQuery()->getResult(); //export $headers = ['Module', 'Formation', 'Établissement organisateur', $headers = ['Module', 'Formation', 'Type de formation', 'Établissement organisateur', 'Responsable de la formation', 'Formateur(s)', 'État de la session', 'Structures valides pour l\'inscription', 'Modalité', 'Nombre d\'heures', 'Séance(s)', 'Effectif Liste principale', 'Effectif Liste complémentaire', 'Nombre d\'inscrits', 'Nombre d\'inscrits sur liste principale', 'Inscrits sur liste principale']; 'Nombre d\'inscrits sur liste principale', 'Effectif présents d\'après la liste d\'émargement', 'Inscrits sur liste principale']; $records = []; /** @var Session $session */ foreach ($listing as $session) { Loading Loading @@ -614,9 +614,33 @@ class SessionController extends AbstractController return $inscritPrincipale->getDoctorant()->getIndividu(); }, $inscritsPrincipale); if ($session->getEtat()->getCode() !== Etat::CODE_IMMINENT and $session->getEtat()->getCode() !== Etat::CODE_FERME and $session->getEtat()->getCode() !== Etat::CODE_CLOTURER) { $presences = "Les présences ne peuvent pas être affichées."; } else { $presences = $this->getPresenceService()->getRepository()->findPresencesBySession($session); $dictionnaire = []; foreach ($presences as $presence) { if($presence->isPresent()) $dictionnaire[$presence->getSeance()->getId()][] = $presence; } $presences = $dictionnaire; $presencesStrings = array_map(function ($seance) use ($presences, $session) { $nbPresencesParSeances = ""; $seanceDate = $seance->getDebut()->format('d/m/Y H:i'); $seanceId = $seance->getId(); if (isset($presences[$seanceId])) { $nbPresencesParSeances = count($presences[$seanceId]); } return $nbPresencesParSeances ? $seanceDate . ' : ' . $nbPresencesParSeances : null; }, $seances); $presences = $presencesStrings ? implode(' ; ', $presencesStrings) : null; } $entry = []; $entry['Module'] = $formation && $formation->getModule() ? $formation->getModule()->getLibelle() : null; $entry['Formation'] = $formation ? $formation->getLibelle() : null; $entry['Type de formation'] = $formation ? $formation->getType() : null; $entry['Établissement organisateur'] = $session->getSite() ? $session->getSite()->getStructure()->getLibelle() : null; $entry['Responsable de la formation'] = $session->getResponsable() ? $session->getResponsable() : null; $entry['Formateur(s)'] = implode("/", $formateursStrings);; Loading @@ -629,6 +653,7 @@ class SessionController extends AbstractController $entry['Effectif Liste complémentaire'] = $session->getTailleListeComplementaire(); $entry['Nombre d\'inscrits'] = $nbInscrits; $entry['Nombre d\'inscrits sur liste principale'] = $nbInscritsListePrincipale; $entry['Effectif présents d\'après la liste d\'émargement'] = $presences; $entry['Inscrits sur liste principale'] = implode(' / ', $inscritsPrincipaleStrings);; $records[] = $entry; Loading
module/Formation/src/Formation/View/Helper/partial/inscription.phtml +21 −10 Changes for module/Formation/src/Formation/View/Helper/partial/inscription.phtml: 21 added lines, 10 removed lines. Original line number Diff line number Diff line Loading @@ -35,7 +35,7 @@ $these = current($doctorant->getTheses()); <?php echo $doctorant->getIndividu()->getNomComplet(); ?> <span class=" <?php if ($inscription->estHistorise()) echo "historisee"; ?> " title="<?php echo $inscription->getDescription(); ?>"> <span class=" <?php if ($inscription->estHistorise()) echo "historisee"; ?> " data-bs-toggle='tooltip' data-bs-placement="right" title="<?php echo strip_tags($inscription->getDescription()); ?>"> <?php foreach ($doctorant->getTheses() as $these) { if ($these->getEtatThese() === These::ETAT_EN_COURS and $these->estNonHistorise()) { echo "<br/>"; Loading Loading @@ -86,27 +86,36 @@ $these = current($doctorant->getTheses()); <?php if (($inscription->getListe() !== null) AND $inscription->getListe()) : ?> <a <?php /** @see \Formation\Controller\InscriptionController::retirerListeAction() */?> href="<?php echo $this->url('formation/inscription/retirer-liste', ['inscription' => $inscription->getId()], ['query' => ['retour' => $this->url('formation/session/afficher', ['session' => $session->getId()])]], true); ?>" title="Retirer des liste l'inscription de <?php echo $doctorant->getIndividu()->getNomComplet(); ?>" data-bs-toggle="tooltip" data-bs-html="true" title="Mettre <?php echo $doctorant->getIndividu()->getNomComplet(); ?> dans la liste des non-classés" data-bs-toggle="tooltip" data-bs-html="true" > <strong>∅</strong></a> <?php endif; ?> <?php if ($actionHistoriser) : ?> <?php if ($inscription->estNonHistorise()) : ?> <?php /** @see \Formation\Controller\InscriptionController::historiserAction() */ ?> <a href="<?php echo $this->url('formation/inscription/historiser', ['inscription' => $inscription->getId()], ['query' => ['retour' => $this->url('formation/session/afficher', ['session' => $session->getId()])]], true); ?>"> <span class="icon icon-historiser"></span></a> <a href="<?php echo $this->url('formation/inscription/historiser', ['inscription' => $inscription->getId()], ['query' => ['retour' => $this->url('formation/session/afficher', ['session' => $session->getId()])]], true); ?>" data-bs-toggle="tooltip" title="Historiser l'inscription de <?php echo $doctorant->getIndividu()->getNomComplet(); ?> pour cette session" > <span class="fa fa-trash"></span></a> <?php else : ?> <?php /** @see \Formation\Controller\InscriptionController::restaurerAction() */ ?> <a href="<?php echo $this->url('formation/inscription/restaurer', ['inscription' => $inscription->getId()], ['query' => ['retour' => $this->url('formation/session/afficher', ['session' => $session->getId()])]], true); ?>"> <span class="icon icon-restaurer"></span></a> <a href="<?php echo $this->url('formation/inscription/restaurer', ['inscription' => $inscription->getId()], ['query' => ['retour' => $this->url('formation/session/afficher', ['session' => $session->getId()])]], true); ?>" data-bs-toggle="tooltip" title="Restaurer l'inscription de <?php echo $doctorant->getIndividu()->getNomComplet(); ?> pour cette session" > <span class="fa fa-trash-restore"></span> </a> <?php endif; ?> <?php if ($canAccorderSursis && $inscription->getSession()->getEtat()->getCode() === Etat::CODE_CLOTURER AND $inscription->getListe() == Inscription::LISTE_PRINCIPALE) : ?> <?php /** @see \Formation\Controller\InscriptionController::accorderSursisAction() */?> <a class="btn btn-primary action ajax-modal" data-event="modification" title="Accorder un sursis à <?php echo $doctorant->getIndividu()->getNomComplet(); ?> pour la saisie de l'enquête" <a class="action ajax-modal" data-event="modification" href="<?php echo $this->url('formation/inscription/accorder-sursis', ['inscription' => $inscription->getId()], true); ?>" data-bs-toggle="tooltip" title="Accorder un sursis à <?php echo $doctorant->getIndividu()->getNomComplet(); ?> pour la saisie de l'enquête" > Accorder un sursis <span class="fa fa-clock"></span> </a> <?php endif; ?> <?php endif; ?> Loading @@ -114,8 +123,10 @@ $these = current($doctorant->getTheses()); <?php /** @see \Formation\Controller\InscriptionController::supprimerAction() */ ?> <a href="<?php echo $this->url('formation/inscription/supprimer', ['inscription' => $inscription->getId()], [], true); ?>" class="ajax-modal" data-event="modification" data-bs-toggle="tooltip" title="Supprimer l'inscription de <?php echo $doctorant->getIndividu()->getNomComplet(); ?> pour cette session" > <span class="icon icon-detruire text-danger"></span></a> <span class="fa fa-bomb text-danger"></span></a> <?php endif; ?> <?php endif; ?> </li> Loading
module/Formation/view/formation/session/afficher.phtml +3 −3 Changes for module/Formation/view/formation/session/afficher.phtml: 3 added lines, 3 removed lines. Original line number Diff line number Diff line Loading @@ -314,7 +314,7 @@ echo $this->messenger()->addMessagesFromFlashMessengerWithNoNamespace(); <?php /** @see \Formation\Controller\SessionController::genererEmargementsAction() */ ?> <a href="<?php echo $this->url('formation/session/generer-emargements', ['session' => $session->getId()], [] , true); ?>" target="_blank" class="btn btn-primary action <?php if (empty($seances)) echo " disabled "; ?>"> <span class="fas fa-list"></span> <span class="icon icon-lister"></span> Générer les émargements </a> <?php endif; ?> Loading Loading @@ -379,7 +379,7 @@ echo $this->messenger()->addMessagesFromFlashMessengerWithNoNamespace(); class="ajax-modal" data-event="modification" title="Duplication de la séance" data-bs-toggle="tooltip" data-bs-html="true" > <span class="icon icon-refresh"></span> <span class="icon icon-cloner"></span> </a> <?php endif; ?> <?php if ($canEmargementSeance) : ?> Loading @@ -387,7 +387,7 @@ echo $this->messenger()->addMessagesFromFlashMessengerWithNoNamespace(); <a href="<?php echo $this->url('formation/seance/generer-emargement', ['seance' => $seance->getId()], [], true); ?>" target="_blank" title="Générer l'émargement de la séance" data-bs-toggle="tooltip" data-bs-html="true" > <span class="fas fa-list"></span> <span class="icon icon-lister"></span> </a> <?php endif; ?> Loading