From 24919e6ba5e71280e9a39657c36f48b31dcb5e5e Mon Sep 17 00:00:00 2001 From: palevrault Date: Thu, 7 Dec 2023 15:31:49 +0100 Subject: [PATCH] La recherche de users fonctionne --- .../src/app/controller/AthleteController.php | 39 +++++++++++-------- .../src/data/model/manager/UserManager.php | 1 + .../data/stub/repository/UserRepository.php | 1 + 3 files changed, 25 insertions(+), 16 deletions(-) diff --git a/Sources/src/app/controller/AthleteController.php b/Sources/src/app/controller/AthleteController.php index b79c76de..782e26a2 100644 --- a/Sources/src/app/controller/AthleteController.php +++ b/Sources/src/app/controller/AthleteController.php @@ -3,6 +3,7 @@ namespace App\Controller; namespace App\Controller; +use Shared\Validation; use App\Container; use App\Router\Request\IRequest; use App\Router\Response\Response; @@ -10,12 +11,13 @@ use Shared\Attributes\Route; use Twig\Environment; use Data\Core\Preferences; use Shared\Log; +use Manager\UserManager; class AthleteController extends BaseController { private Environment $twig; - private Preferences $preference; + protected Preferences $preference; public function __construct() { @@ -41,31 +43,36 @@ class AthleteController extends BaseController 'username' => 'alicesmith', ], ]; - if(!Validation::val_string($username)){ - print("Nom invalide."); - } - try { - $listUser=$this->container->get(UserManager::class)->searchItemsByName($username); - $currentUser=$this->container->get(UserManager::class)->getCurrentUser(); - return $this->render('./page/addfriend.html.twig',[ - 'css' => $this->preference->getCookie(), + //if(!Validation::val_string($username)){ + // print("Nom invalide."); + //} + //try { + $listSearch=$this->container->get(UserManager::class)->searchUsersByName($username); + $i=0; + foreach ($listSearch as $user){ + $listUsers[$i++]=['nom' => $user->getNom(), 'prenom'=>$user->getPrenom(), 'img'=>'john_doe', 'username'=>$user->getUsername()]; + } + //$currentUser=$this->container->get(UserManager::class)->getCurrentUser(); + //$currentUser=$_SESSION['user']; + $response = $this->render('./page/addfriend.html.twig',[ + 'css' => $_COOKIE['preferences'], 'pp' => "test2", - 'user' => $currentUser->getUsername(), - 'role' => $currentUser->getRole(), + 'user' => 'johndoe',//$currentUser->getUsername(), + 'role' => 'Athlete',//$currentUser->getRole(), 'friendship' => [], 'analyzes' => [], 'mails' => [], - 'users' => $listUser, + 'users' => $listUsers, 'infoUser' => [], 'exos' => [], - 'member' => [], - 'responce' => "Notification d'ajout envoyée à $username" + 'member' => [] ]); - } catch (\Throwable $th) { + //} catch (\Throwable $th) { //throw $th; // return $this->render("addfriend.html.twig", ['tabError' => $taberror ]); - } + //} // } + return $response; } diff --git a/Sources/src/data/model/manager/UserManager.php b/Sources/src/data/model/manager/UserManager.php index c6e71e82..8520316d 100644 --- a/Sources/src/data/model/manager/UserManager.php +++ b/Sources/src/data/model/manager/UserManager.php @@ -39,6 +39,7 @@ class UserManager $this->relationshipService = $relationshipService; } + public function getCurrentUser(): ?User { return $this->currentUser; diff --git a/Sources/src/data/stub/repository/UserRepository.php b/Sources/src/data/stub/repository/UserRepository.php index 73344b65..dd0b47f7 100644 --- a/Sources/src/data/stub/repository/UserRepository.php +++ b/Sources/src/data/stub/repository/UserRepository.php @@ -32,6 +32,7 @@ class UserRepository implements IUserRepository { $this->users[] = new User(3, "Martin", "Paul","Martin", "paul.martin@example.com", "super789", 'M', 1.75, 68, new \DateTime("1988-08-20"), new CoachAthlete()); $this->users[] = new User(4, "Brown", "Anna","Brown", "anna.brown@example.com", "test000", 'F', 1.70, 58, new \DateTime("1992-11-25"), new Athlete()); $this->users[] = new User(5, "Lee", "Bruce","Lee", "bruce.lee@example.com", "hello321", 'M', 1.72, 70, new \DateTime("1970-02-05"), new Athlete()); + $this->users[] = new User(5, "Truc", "Bruce","Truc", "bruce.lee@example.com", "hello321", 'M', 1.72, 70, new \DateTime("1970-02-05"), new Athlete()); } /**