diff --git a/business/ListTask.php b/business/ListTask.php index 9710ce1..6b696ba 100644 --- a/business/ListTask.php +++ b/business/ListTask.php @@ -6,11 +6,12 @@ private $owner; private int $dc; // done counter # juste visuelle?? - function __construct($id, $nom, $owner="", $dc=0) { + function __construct($id, $nom, $owner="", $dc = 0) { $this->id = $id; $this->nom = $nom; $this->taches = []; $this->owner = $owner; + $this->dc = $dc; } diff --git a/controller/FrontCtrl.php b/controller/FrontCtrl.php index a2a11b5..d458b0a 100644 --- a/controller/FrontCtrl.php +++ b/controller/FrontCtrl.php @@ -6,11 +6,10 @@ class FrontController //private UserModel $ursMdl; //private $action_User; - function __construct($ursMdl=new UserModel(), $action_User=[]){ - $this->$ursMdl = $ursMdl; - $this->$action_User = $action_User; + function __construct(){ session_start(); - + $ursMdl = new UserModel(); + try{ $user = $this->usrMdl.isUser(); // cette fonction retourne quoi? $action = $_REQUEST['action']; @@ -20,20 +19,17 @@ class FrontController # appel controlleur visiteur avec action connecter require("VisitCtrl.php"); $visitCtrl = new VisitCtrl(); - $visitCtrl.handleAction('connecter'); - // inclure la vue de connexion + $visitCtrl->goconnexion(); } else { # sinon # handle action avec controlleur user require("UserCtrl.php"); - $userCtrl = new UserCtrl(); //action ici - $userCtrl.handleAction($action); + $userCtrl = new UserCtrl(); } } else { # sinon forcement action visiteur # appel controlleur visiteur avec l'action require("VisitCtrl.php"); $visitCtrl = new VisitCtrl(); - $visitCtrl.handleAction($action); } } catch (Exception $e){ // verifier si catch bon require("../view/erreur.php"); diff --git a/controller/UserCtrl.php b/controller/UserCtrl.php index 46ee343..063ae51 100644 --- a/controller/UserCtrl.php +++ b/controller/UserCtrl.php @@ -1,56 +1,45 @@ model = $model; - $this->view = $view; + + public function __construct(Connection $con){ $this->con = $con; - } - - public function handleAction(){ + $this->model = new UserModel($this->con); try{ $action=$_REQUEST['action']; switch($action){ - // pas d'action afficher la home page avec toutes les listes - case NULL: - $this->home(); - break; - - // ajouter une liste publique - case 'creer_liste_pub': - $this->newList('private'); + + // voir les listes privees + case 'voir_liste_priv': + $this->loadListePriv(); break; // ajouter une liste privee case 'creer_liste_priv': - $this->newList('public'); - break; - - // supprimer une liste - case 'supprimer_liste': - $this->delList(); - break; - - // changer nom de la liste - case 'changer_nom': - $this->changeListName(); + $this->newListPrivate(); break; - // ajouter une tache - - // completer tache - } } catch(Exception $e) { require("../view/erreur.php"); } } + + public function loadListePriv(){ + $name = "Liste privée"; + $TabList = array(); + // $TabList[] = new ListTask(0, "Projet PHP"); + // $TabList[] = new ListTask(1, "Projet Blazor"); + $TabListPriv = $this->model->getPrivateList(); + require("../view/liste.php"); + } + + public function newListPrivate(){ + $nom=$_POST['listeNom']; + insertL(new ListTask(0, $nom, $_SESSION['login'])); + } } ?> diff --git a/controller/VisitorCtrl.php b/controller/VisitorCtrl.php index d366498..701ceed 100644 --- a/controller/VisitorCtrl.php +++ b/controller/VisitorCtrl.php @@ -69,6 +69,7 @@ class VisitCtrl # dans vue check if isset # display content $public_lists = $this->taskModel.loadPublicList(); + require("../view/home.php"); } function go_connection(){ diff --git a/dal/UserGateway.php b/dal/UserGateway.php index d9db4ad..0308978 100644 --- a/dal/UserGateway.php +++ b/dal/UserGateway.php @@ -44,12 +44,11 @@ } public function findUser($login, $mdp){ - $pwrd = password_hash($mdp, PASSWORD_BCRYPT, array("cost" => 12)); - $query = 'SELECT login FROM User WHERE login = :login AND mdp = :mdp'; - $this->con->executeQuery($query, array(':login'=>array($login, PDO::PARAM_STR), - ':mdp'=>array($pwrd, PDO::PARAM_STR))); + $query = 'SELECT mdp FROM User WHERE login = :login'; + $this->con->executeQuery($query, array(':login'=>array($login, PDO::PARAM_STR))); $result = $this->con->getResults(); - return $result; + if(password_verify($mdp, $result[0]['mdp'])) + return $login; } } ?> \ No newline at end of file diff --git a/model/TaskModel.php b/model/TaskModel.php index b3ea54b..17ba664 100644 --- a/model/TaskModel.php +++ b/model/TaskModel.php @@ -66,7 +66,6 @@ class TaskModel $row = $this->gtw->findListTask($row); } return $lists; - } function loadPrivateLists($user){ diff --git a/model/UserModel.php b/model/UserModel.php index 5ed7c9a..d032998 100644 --- a/model/UserModel.php +++ b/model/UserModel.php @@ -4,13 +4,18 @@ private $con; private $gat; - public function __construct(Connection $con) { - $this->con = $con; - $this->gat = new GatUser($con); } + public function __construct(Connection $con) { + $this->con = $con; + $this->gat = new UserGateway($con); + } function connexion($login, $mdp){ - $gat->findUser($login, $mdp); - $_SESSION['login'] = $login; + $result = $this->gat->findUser($login, $mdp); + if (isset($result)) + { + $_SESSION['login'] = $result; + } + echo $_SESSION['login']; } function deconnexion(){ @@ -20,7 +25,7 @@ } function isConnected($login){ //teste rôle dans la session, retourne instance d’objet ou booleen - if (isset($_SESSION['login'])) + if ($_SESSION['login']) { return true; } diff --git a/tests/test.php b/tests/test.php index ee24aee..b723518 100644 --- a/tests/test.php +++ b/tests/test.php @@ -11,10 +11,10 @@ echo "