From e518f24104be26bb4941dde23d04f4a17e480dec Mon Sep 17 00:00:00 2001 From: "nicolas.franco" Date: Wed, 14 Dec 2022 15:18:46 +0100 Subject: [PATCH] erreur dans la fonction find pour loadPublicList --- business/ListTask.php | 2 +- controller/VisitorCtrl.php | 12 +++++-- dal/TaskGateway.php | 67 ++++++++++++++++++++++++++------------ model/TaskModel.php | 9 +++-- tests/test.php | 6 ++-- 5 files changed, 66 insertions(+), 30 deletions(-) diff --git a/business/ListTask.php b/business/ListTask.php index 5a2ce29..5d0c002 100644 --- a/business/ListTask.php +++ b/business/ListTask.php @@ -3,7 +3,7 @@ private int $id; private string $nom; private array $taches; - private string $owner; + private $owner; private int $dc; // done counter function __construct($id, $nom, $owner="", $dc=0) { diff --git a/controller/VisitorCtrl.php b/controller/VisitorCtrl.php index 88561ad..d366498 100644 --- a/controller/VisitorCtrl.php +++ b/controller/VisitorCtrl.php @@ -1,9 +1,11 @@ taskModel.loadPublicList(); } function go_connection(){ @@ -94,7 +100,7 @@ class VisitCtrl } function eraseTask(){ - + } } diff --git a/dal/TaskGateway.php b/dal/TaskGateway.php index a5e0b72..8bff2ee 100644 --- a/dal/TaskGateway.php +++ b/dal/TaskGateway.php @@ -51,27 +51,52 @@ class TaskGateway } /*si on veut trouver une liste, juste chercher toutes les taches avec idList= id_de_la_liste*/ - public function find($element="", $valeur=""){ - if(strcmp($element,"")==0) - { - $query='SELECT * FROM Tache'; - $this->con->executeQuery($query); - } - else - { - $query='SELECT * FROM Tache WHERE '.$element.'=:'.$element; - $this->con->executeQuery($query, array( - ':'.$element =>array($valeur,PDO::PARAM_STR))); - } - - $results=$this->con->getResults(); - foreach($results as $row) - { - $tabTaches[]=new Task($row['id'],$row['titre'],$row['description'],$row['priorite'], - $row['idList'],$row['dateDebut'],$row['dateFin'],$row['isDone']); - } - return $tabTaches; - } + # pour toutes les listes d'un user specifique, appeller 2 fois la fonction: + # une fois pour prendre toutes les listes qui ont l'id de l'user + # pour toutes ces listes (foreach), find toutes chaque tache associƩ + public function find($table, $element="", $valeur=""){ + if($table =='task'){ + if(strcmp($element,"")==0) + { + $query='SELECT * FROM Tache'; + $this->con->executeQuery($query); + } + else + { + $query='SELECT * FROM Tache WHERE '.$element.'=:'.$element; + $this->con->executeQuery($query, array( + ':'.$element =>array($valeur,PDO::PARAM_STR))); + } + + $results=$this->con->getResults(); + foreach($results as $row) + { + $tabTaches[]=new Task($row['id'],$row['titre'],$row['description'],$row['priorite'], + $row['idList'],$row['dateDebut'],$row['dateFin'],$row['isDone']); + } + return $tabTaches; + + } else if($table == 'list'){ + if(strcmp($element,"")==0) + { + $query='SELECT * FROM uList'; + $this->con->executeQuery($query); + } + else + { + $query='SELECT * FROM uList WHERE '.$element.'=:'.$element; + $this->con->executeQuery($query, array( + ':'.$element =>array($valeur,PDO::PARAM_STR))); + } + + $results=$this->con->getResults(); + foreach($results as $row) + { + $tabList[]=new ListTask($row['id'],$row['nom'],$row['user'],$row['dc']); + } + return $tabList; + } + } /* # LIST FUNCTIONS */ /*create, update, delete, read(select info)*/ diff --git a/model/TaskModel.php b/model/TaskModel.php index a505afa..7554801 100644 --- a/model/TaskModel.php +++ b/model/TaskModel.php @@ -32,12 +32,12 @@ class TaskModel public function getAllTask() { - return $this->gtw->find(); + return $this->gtw->find('task'); } public function getTaskBy($element,$valeur) { - return $this->gtw->find($element,$valeur); + return $this->gtw->find('task',$element,$valeur); } /* LIST FUNCTIONS */ @@ -57,5 +57,10 @@ class TaskModel { $this->gtw->delete('list',$id); } + + function loadPublicLists() + { + return $this->gtw->find('list','user','NULL'); + } } ?> diff --git a/tests/test.php b/tests/test.php index a55aa07..966084e 100644 --- a/tests/test.php +++ b/tests/test.php @@ -28,12 +28,12 @@ $mt= new TaskModel($con); //$mt->addTask('3','testIsDone','desc.','urgent','001'); //$mt->modifTask('3','isDone','1'); //$tasks = $mt->getTaskBy('titre','tache1'); -$tasks = $mt->getAllTask(); +$tasks = $mt->loadPublicLists(); foreach($tasks as $i) echo $i->get_id()."
"; -$mt->addList('002','todo2','nifranco'); -$mt->modifList('2','nom','22do'); +// $mt->addList('002','todo2','nifranco'); +// $mt->modifList('2','nom','22do'); //mt->supList('2'); /* -------------