From 753f8d648320e3ef568b18c4ee9181d9c6a8d65b Mon Sep 17 00:00:00 2001 From: mckmonster Date: Sun, 1 Sep 2024 10:30:33 +0200 Subject: [PATCH] fix Absence --- actions/AbsencesAction.php | 20 ++++++++++++++++---- config.yaml | 8 ++++---- libs/eleves/eleve.lib.php | 3 +-- 3 files changed, 21 insertions(+), 10 deletions(-) diff --git a/actions/AbsencesAction.php b/actions/AbsencesAction.php index 0727e7d..70a39bf 100644 --- a/actions/AbsencesAction.php +++ b/actions/AbsencesAction.php @@ -3,6 +3,7 @@ use YesWiki\Core\YesWikiAction; use YesWiki\Bazar\Service\EntryManager; use YesWiki\Core\Service\UserManager; +use YesWiki\Meeo\Service\EleveManager; class AbsencesAction extends YesWikiAction { @@ -20,16 +21,19 @@ class AbsencesAction extends YesWikiAction $entryManager = $this->getService(EntryManager::class); $userManager = $this->getService(UserManager::class); + $elevemanager = $this->getService(EleveManager::class); if ( $userManager->isInGroup($groupeEE, admincheck: false) ) { $entries = $entryManager->search(['formsIds' => $formId]); $grouped_entries = []; foreach ($entries as $entry) { + // echo "

".var_dump($entry)."

"; $identifier = $entry[$eleveIdentifier]; - $eleve = $entryManager->getOne($identifier); - echo "

".var_dump($eleve)."

"; - $nom = $eleve['bf_nom']; + //echo "

".var_dump($identifier)."

"; + $eleve = $elevemanager->getEleve($identifier); + // echo "

".var_dump($eleve)."

"; + $nom = $eleve->getNom(); if (!isset($grouped_entries[$identifier])) { $grouped_entries[$identifier] = [ 'nom' => $nom, @@ -44,7 +48,15 @@ class AbsencesAction extends YesWikiAction ]); } else { $username = $userManager->getLoggedUsername(); - $entries = $entryManager->search(['formsIds' => $formId, 'queries' => [ $eleveIdentifier => $username."2"]]); + $eleves = $elevemanager->getAll(); + foreach ($eleves as $eleve) { + if ($eleve->getNom() == $username) { + $selectedEleve = $eleve; + } + } + $identifier = $selectedEleve->getId(); + // echo "

".var_dump($selectedEleve)."

"; + $entries = $entryManager->search(['formsIds' => $formId, 'queries' => [ $eleveIdentifier => $identifier]]); return $this->render('@meeo/eleve_absences.twig', [ "entries" => $entries, diff --git a/config.yaml b/config.yaml index f1b0252..57e282d 100644 --- a/config.yaml +++ b/config.yaml @@ -1,9 +1,9 @@ parameters: meeo: - elevesFormId: 6 - absencesFormId: 7 - notesFormId: 8 - yunohostFormId: 5 + elevesFormId: 7 + absencesFormId: 8 + notesFormId: 9 + yunohostFormId: 6 groupeEE: 'equipeeducative' redirect: eleveUpdate: '?Eleves' diff --git a/libs/eleves/eleve.lib.php b/libs/eleves/eleve.lib.php index e3afe92..de1f3ae 100644 --- a/libs/eleves/eleve.lib.php +++ b/libs/eleves/eleve.lib.php @@ -11,8 +11,7 @@ class Eleve { public function __construct(EntryManager $entryManager, $yunoshostFormId, $data) { $this->data = $data; // echo "

".var_dump($data)."

"; - $userId = $data['listefiche'.$yunoshostFormId.'Listebf_nom']; - + $userId = $data['listefiche'.$yunoshostFormId.'bf_nom']; $this->user = $entryManager->getOne($userId); // echo "

".var_dump($this)."

"; }