From e2a83cd841d72f07de726d437ce488ab01639b9e Mon Sep 17 00:00:00 2001 From: mckmonster Date: Mon, 5 Aug 2024 19:02:45 +0200 Subject: [PATCH] prepare to display eleve --- libs/eleves/eleve.lib.php | 4 ++++ services/EleveManager.php | 8 ++++++-- services/NoteManager.php | 31 ++++++++++++++++++++----------- 3 files changed, 30 insertions(+), 13 deletions(-) diff --git a/libs/eleves/eleve.lib.php b/libs/eleves/eleve.lib.php index 6ca6c1d..e3afe92 100644 --- a/libs/eleves/eleve.lib.php +++ b/libs/eleves/eleve.lib.php @@ -21,6 +21,10 @@ class Eleve { return $this->data['id_fiche']; } + public function getUserId() { + return $this->user['bf_titre']; + } + public function getNom() { if (empty($this->user['bf_nom'])) { return $this->user['bf_titre']; diff --git a/services/EleveManager.php b/services/EleveManager.php index aa73c9b..5dc4032 100644 --- a/services/EleveManager.php +++ b/services/EleveManager.php @@ -44,7 +44,6 @@ class EleveManager { $eleves = []; foreach ($this->entryManager->search(['formsIds' => $this->formId]) as $data) { - $eleve = new Eleve($this->entryManager, $this->yunoshostFormId, $data); // echo "

".var_dump($eleve)."

"; $eleves[] = $eleve; @@ -57,7 +56,12 @@ class EleveManager { } public function getCurrentEleve(string $username) { - return $this->entryManager->getOne(str_replace(".","", $username)); + $all = $this->getAll(); + foreach ($all as $eleve) { + echo "

".var_dump($eleve)."

"; + if ($eleve->getUserId() == $username) + return $eleve; + } } public function view() { diff --git a/services/NoteManager.php b/services/NoteManager.php index b03b535..f390823 100644 --- a/services/NoteManager.php +++ b/services/NoteManager.php @@ -5,6 +5,7 @@ use Symfony\Component\DependencyInjection\ParameterBag\ParameterBagInterface; use YesWiki\Bazar\Service\EntryManager; use YesWiki\Bazar\Service\ListManager; use YesWiki\Core\Controller\AuthController; +use YesWiki\Core\Service\UserManager; use YesWiki\Wiki; use YesWiki\Meeo\Bulletin\Bulletin; use YesWiki\Meeo\Service\EleveManager; @@ -16,31 +17,35 @@ class NoteManager { protected $listManager; protected $formId; protected $eleveFormId; + protected $eeGroup; protected $authController; + protected $userManager; - public function __construct( Wiki $wiki, ParameterBagInterface $params, EntryManager $entryManager, ListManager $listManager, AuthController $authController) + public function __construct( Wiki $wiki, ParameterBagInterface $params, EntryManager $entryManager, ListManager $listManager, AuthController $authController, UserManager $userManager) { $this->wiki = $wiki; $this->params = $params; $this->entryManager = $entryManager; $this->listManager = $listManager; $this->authController = $authController; + $this->userManager = $userManager; $meeo_config = $this->params->get('meeo'); $this->formId = $meeo_config['notesFormId']; $this->eleveFormId = $meeo_config['elevesFormId']; + $this->eeGroup = $meeo_config['groupeEE']; } public function viewBulletins() { $eleveManager = $this->wiki->services->get(EleveManager::class); - $username = $this->authController->getLoggedUserName(); + // echo "

".$username."

"; include 'tools/meeo/libs/bulletin/Bulletin.lib.php'; - $currentEleve = $eleveManager->getCurrentEleve($username); - // echo "

".var_dump($currentEleve)."

"; - // if ($currentEleve == null) { + $loggedUser = $this->authController->getLoggedUser(); + echo "

".var_dump($loggedUser)."

"; + if ($this->userManager->isInGroup($this->eeGroup, $loggedUser['name'], false)) { $eleves = $eleveManager->getAll(); $bulletins = []; @@ -53,12 +58,16 @@ class NoteManager { return $this->wiki->render('@meeo/edu_notes.twig', [ "bulletins" => $bulletins, ]); - // } else { - // $bulletin = new Bulletin($this->wiki, $currentEleve); - // return $this->wiki->render('@meeo/eleve_notes.twig', [ - // "bulletin" => $bulletin, - // ]); - // } + } else { + echo "Eleve"; + $currentEleve = $eleveManager->getCurrentEleve($loggedUser['name']); + if ($currentEleve != null) { + $bulletin = new Bulletin($this->wiki, $currentEleve); + return $this->wiki->render('@meeo/eleve_notes.twig', [ + "bulletin" => $bulletin, + ]); + } + } } public function viewControle() {