userctrl
Anna BOUDOUL 2 years ago
commit 814b5219aa

@ -6,12 +6,15 @@
private $owner; private $owner;
private int $dc; // done counter # juste visuelle?? private int $dc; // done counter # juste visuelle??
function __construct($id, $nom, $owner="", $dc = 0) { function __construct($nom, $owner="",$dc=0,$id=0) {
$this->id = $id; if($id=0)
$this->id = (int)null;
else
$this->id = $id;
$this->nom = $nom; $this->nom = $nom;
$this->taches = []; $this->taches = [];
$this->owner = $owner; $this->owner = $owner;
$this->dc = $dc; $this->dc = 0;
} }

@ -10,8 +10,14 @@
private string $idlist; // # id associating task to list private string $idlist; // # id associating task to list
private bool $isDone; // # si la tache est complete private bool $isDone; // # si la tache est complete
function __construct($id,$titre,$description,$priorite,$idl,$dateDeb="",$dateFin="",$isDone=false) { function __construct($titre,$description,$priorite,$idl,$dateDeb="",$dateFin="",$isDone=false,$id=0) {
$this->set_id($id); # if id = 0, on veut donc creer une nouvelle tache
# qui n'est pas encore dans la base de donnée et donc
# le id sera fait avec le auto increment
if($id=0)
$this->set_id((int)null);
else
$this->set_id($id);
$this->set_titre($titre); $this->set_titre($titre);
$this->set_description($description); $this->set_description($description);
$this->set_priorite($priorite); $this->set_priorite($priorite);

@ -8,22 +8,22 @@ class FrontController
function __construct(){ function __construct(){
session_start(); session_start();
$ursMdl = new UserModel();
try{ try{
$user = $this->usrMdl->isUser(); // cette fonction retourne quoi? $user = $this->usrMdl.isConnected(); // cette fonction retourne quoi?
$action = $_REQUEST['action']; $action = $_REQUEST['action'];
if(($i = array_search($action,$action_User)) !== false){ # si action dans la liste d'actions user if(($i = array_search($action,$action_User)) !== false){ # si action dans la liste d'actions user
if($user == null){ # si pas conncter if(!$user){ # si pas conncter
# appel controlleur visiteur avec action connecter # appel controlleur visiteur avec action connecter
require("VisitCtrl.php"); require("VisitCtrl.php");
$visitCtrl = new VisitCtrl(); $visitCtrl = new VisitCtrl();
$visitCtrl.handleAction('connecter'); $visitCtrl->goconnexion();
// inclure la vue de connexion
} else { # sinon } else { # sinon
# handle action avec controlleur user # handle action avec controlleur user
require("UserCtrl.php"); require("UserCtrl.php");
$userCtrl = new UserCtrl(); //action ici $userCtrl = new UserCtrl();
$userCtrl.handleAction($action);
} }
} else { # sinon forcement action visiteur } else { # sinon forcement action visiteur

@ -1,12 +1,13 @@
<?php <?php
require_once("../model/TaskModel"); require_once("../model/TaskModel.php");
class VisitCtrl class VisitorCtrl
{ {
private $taskModel; private $taskModel;
function __construct(){ private $userModel;
function __construct($con){
$dvueErreur = array(); $dvueErreur = array();
$taskModel = new TaskModel(); $taskModel = new TaskModel($con);
$userModel = new UserModel($con);
try{ try{
$action = $_REQUEST['action']; $action = $_REQUEST['action'];
switch($action){ switch($action){
@ -24,6 +25,15 @@ class VisitCtrl
# charge la vue de connexion # charge la vue de connexion
break; break;
case 'pageRegister':
$this->go_connection();
break;
case 'register':
$this->connection();
# charge la vue de connexion
break;
case 'pageListe': case 'pageListe':
$this->go_list(); $this->go_list();
break; break;
@ -64,19 +74,16 @@ class VisitCtrl
} }
function loadHome(){ function loadHome(){
# instancie tableau / donnees
# requere vue
# dans vue check if isset
# display content
$public_lists = $this->taskModel.loadPublicList(); $public_lists = $this->taskModel.loadPublicList();
require("../view/home.php");
} }
function go_connection(){ function go_connection(){
# rediriger vers la page de connection
} }
function connection(){ function connection(){
$this->userModel->connexion($user,$mdp);
} }
function go_list(){ function go_list(){

@ -72,8 +72,13 @@ class TaskGateway
$results=$this->con->getResults(); $results=$this->con->getResults();
foreach($results as $row) foreach($results as $row)
{ {
<<<<<<< HEAD
$tabResult[]=new Task($row['id'],$row['titre'],$row['description'],$row['priorite'], $tabResult[]=new Task($row['id'],$row['titre'],$row['description'],$row['priorite'],
$row['idList'],$row['dateDebut'],$row['dateFin'],$row['isDone']); $row['idList'],$row['dateDebut'],$row['dateFin'],$row['isDone']);
=======
$tabTaches[]=new Task($row['titre'],$row['description'],$row['priorite'],
$row['idList'],$row['dateDebut'],$row['dateFin'],$row['isDone'],$row['id']);
>>>>>>> 55a7b525b1da9fc9a167f6044dbe963c2f3dde57
} }
return $tabResult; return $tabResult;
@ -93,7 +98,11 @@ class TaskGateway
$results=$this->con->getResults(); $results=$this->con->getResults();
foreach($results as $row) foreach($results as $row)
{ {
<<<<<<< HEAD
$tabResult[]=new ListTask($row['id'],$row['nom'],$row['user'],$row['dc']); $tabResult[]=new ListTask($row['id'],$row['nom'],$row['user'],$row['dc']);
=======
$tabList[]=new ListTask($row['nom'],$row['user'],$row['dc'],$row['id']);
>>>>>>> 55a7b525b1da9fc9a167f6044dbe963c2f3dde57
} }
return $tabResult; return $tabResult;
} }
@ -125,7 +134,7 @@ class TaskGateway
$results = $this->con->getResults(); $results = $this->con->getResults();
foreach($results as $row){ foreach($results as $row){
$tabLists[]= new ListTask($row[0],$row[1],$row[2],$row[3]); $tabLists[]= new ListTask($row[1],$row[2],$row[3],$row[0]);
} }
return $tabLists; return $tabLists;
} }
@ -140,8 +149,8 @@ class TaskGateway
$results = $this->con->getResults(); $results = $this->con->getResults();
foreach($results as $row){ foreach($results as $row){
$taches[]= new Task($row['id'],$row['titre'],$row['description'],$row['priorite'], $taches[]= new Task($row['titre'],$row['description'],$row['priorite'],
$row['idList'],$row['dateDebut'],$row['dateFin'],$row['isDone']); $row['idList'],$row['dateDebut'],$row['dateFin'],$row['isDone'],$row['id']);
} }
if(!empty($taches)) if(!empty($taches))
$list->set_taches($taches); $list->set_taches($taches);
@ -154,7 +163,7 @@ class TaskGateway
$results = $this->con->getResults(); $results = $this->con->getResults();
foreach($results as $row){ foreach($results as $row){
$tabLists[]= new ListTask($row[0],$row[1],$row[2],$row[3]); $tabLists[]= new ListTask($row[1],$row[2],$row[3],$row[0]);
} }
return $tabLists; return $tabLists;
} }

@ -47,7 +47,8 @@
$query = 'SELECT mdp FROM User WHERE login = :login'; $query = 'SELECT mdp FROM User WHERE login = :login';
$this->con->executeQuery($query, array(':login'=>array($login, PDO::PARAM_STR))); $this->con->executeQuery($query, array(':login'=>array($login, PDO::PARAM_STR)));
$result = $this->con->getResults(); $result = $this->con->getResults();
if(password_verify($mdp, $result[0]['mdp'])) $hash = password_hash($result[0]['mdp'], PASSWORD_BCRYPT, array("cost" => 12));
if(password_verify($mdp, $hash))
return $login; return $login;
} }
} }

@ -13,9 +13,9 @@ class TaskModel
$this->gtw= new TaskGateway($con); $this->gtw= new TaskGateway($con);
} }
public function addTask($id,$titre,$desc,$priorite,$idList,$dateDeb="",$dateFin="",$isDone=false) public function addTask($titre,$desc,$priorite,$idList,$dateDeb="",$dateFin="",$isDone=false,$id=0)
{ {
$t = new Task($id,$titre,$desc,$priorite,$idList,$dateDeb,$dateFin,$isDone); $t = new Task($titre,$desc,$priorite,$idList,$dateDeb,$dateFin,$isDone,$id);
$this->gtw->insertT($t); $this->gtw->insertT($t);
// retourne quoi? con->lastInsertId() ?? // retourne quoi? con->lastInsertId() ??
} }
@ -41,9 +41,9 @@ class TaskModel
} }
/* LIST FUNCTIONS */ /* LIST FUNCTIONS */
public function addList($id,$nom,$owner="",$dc=0) public function addList($nom,$owner="",$dc=0,$id=0)
{ {
$l = new ListTask($id,$nom,$owner,$dc); $l = new ListTask($nom,$owner,$dc);
$this->gtw->insertL($l); $this->gtw->insertL($l);
// retourne quoi? con->lastInsertId() ?? // retourne quoi? con->lastInsertId() ??
} }
@ -66,7 +66,6 @@ class TaskModel
$row = $this->gtw->findListTask($row); $row = $this->gtw->findListTask($row);
} }
return $lists; return $lists;
} }
function loadPrivateLists($user){ function loadPrivateLists($user){

@ -11,11 +11,11 @@
function connexion($login, $mdp){ function connexion($login, $mdp){
$result = $this->gat->findUser($login, $mdp); $result = $this->gat->findUser($login, $mdp);
if (isset($result)) if(!isset($result)) echo 'not set works';
{ // if (isset($result))
$_SESSION['login'] = $result; // {
} // $_SESSION['login'] = $result;
echo $_SESSION['login']; // }
} }
function deconnexion(){ function deconnexion(){
@ -25,11 +25,11 @@
} }
function isConnected($login){ //teste rôle dans la session, retourne instance dobjet ou booleen function isConnected($login){ //teste rôle dans la session, retourne instance dobjet ou booleen
if ($_SESSION['login']) if(isset($_SESSION['login'])){
{
return true; return true;
} else {
return false;
} }
else return false;
} }
function ajouter($login, $mdp){ function ajouter($login, $mdp){

@ -3,7 +3,8 @@ require_once("../business/Task.php");
require_once("../business/ListTask.php"); require_once("../business/ListTask.php");
require_once("../dal/TaskGateway.php"); require_once("../dal/TaskGateway.php");
require_once("../model/TaskModel.php"); require_once("../model/TaskModel.php");
echo "<h1>2do test</h1>"; require_once("../controller/VisitorCtrl.php");
//echo "<h1>2do test</h1>";
# Test de la Gateway Tache # Test de la Gateway Tache
# nouvelle tache # nouvelle tache
@ -11,7 +12,11 @@ echo "<h1>2do test</h1>";
# connection # connection
include("credentials.php"); include("credentials.php");
<<<<<<< HEAD
$con = new Connection('mysql:host=localhost;dbname=dbanboudoul', 'anboudoul', 'mdpMYSQL'); $con = new Connection('mysql:host=localhost;dbname=dbanboudoul', 'anboudoul', 'mdpMYSQL');
=======
$con = new Connection('mysql:host=localhost;dbname=phpproject', 'nifranco', 'achanger');
>>>>>>> 55a7b525b1da9fc9a167f6044dbe963c2f3dde57
# gateway # gateway
// $t = new Task(3,'richarlison voltar pro flu','desc.','urgent','0'); // $t = new Task(3,'richarlison voltar pro flu','desc.','urgent','0');
@ -28,6 +33,7 @@ $con = new Connection('mysql:host=localhost;dbname=dbanboudoul', 'anboudoul', 'm
foreach($tasks as $i) foreach($tasks as $i)
echo $i->get_id()."<br>"; */ echo $i->get_id()."<br>"; */
<<<<<<< HEAD
# Test du modele Tache # Test du modele Tache
$mt= new TaskModel($con); $mt= new TaskModel($con);
//$mt->addTask('3','testIsDone','desc.','urgent','001'); //$mt->addTask('3','testIsDone','desc.','urgent','001');
@ -39,6 +45,11 @@ $mt= new TaskModel($con);
# Test LOAD PRIVATE TASKS # Test LOAD PRIVATE TASKS
// $mt= new TaskModel($con); // $mt= new TaskModel($con);
=======
# Test LOAD PRIVATE TASKS
$mt= new TaskModel($con);
$mt->addList('private','nifranco');
>>>>>>> 55a7b525b1da9fc9a167f6044dbe963c2f3dde57
// $lists = $mt->loadPublicLists(); // $lists = $mt->loadPublicLists();
// foreach($lists as $l){ // foreach($lists as $l){
@ -48,6 +59,7 @@ $mt= new TaskModel($con);
// echo $t->get_id()."<br>"; // echo $t->get_id()."<br>";
// } // }
// } // }
<<<<<<< HEAD
// //$tasks = $mt->getTaskBy('titre','tache1'); // //$tasks = $mt->getTaskBy('titre','tache1');
// $tasks = $mt->getAllTask(); // $tasks = $mt->getAllTask();
// foreach($tasks as $i) // foreach($tasks as $i)
@ -55,11 +67,17 @@ $mt= new TaskModel($con);
// $tasks = $mt->loadPublicLists(); // $tasks = $mt->loadPublicLists();
// foreach($tasks as $i) // foreach($tasks as $i)
// echo $i->get_id()."<br>"; // echo $i->get_id()."<br>";
=======
>>>>>>> 55a7b525b1da9fc9a167f6044dbe963c2f3dde57
// $mt->addList('002','todo2','nifranco'); // $mt->addList('002','todo2','nifranco');
// $mt->modifList('2','nom','22do'); // $mt->modifList('2','nom','22do');
//mt->supList('2'); //mt->supList('2');
$public_lists = $mt->loadPrivateLists('nifranco');
$user = true;
//require("../view/home.php");
//require("../view/register.php");
//require("../view/connection.php");
/* ------------- /* -------------
TEST ANNA TEST ANNA
----------------*/ ----------------*/

@ -1,28 +0,0 @@
body{
text-align : center;
}
form{
display : flex;
flex-flow : column nowrap;
align-items : center;
}
input{
width : 90%;
border-radius : 5px;
color : #595959;
}
label{
margin-top : 20px;
}
#envoyer{
width : 150px;
height : 30px;
}
#btnEnvoi{
margin: 20px;
}

@ -0,0 +1,75 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="description" content="" />
<meta name="author" content="" />
<!-- Core theme CSS (includes Bootstrap)-->
<link href="../view/css/home.css" rel="stylesheet" />
</head>
<body>
<div class="d-flex" id="wrapper">
<!-- Sidebar-->
<div class="border-end bg-white" id="sidebar-wrapper">
<div class="sidebar-heading border-bottom bg-light">2do</div>
<div class="list-group list-group-flush">
<a class="list-group-item list-group-item-action list-group-item-light p-3" href="#!">Home</a>
<a class="list-group-item list-group-item-action list-group-item-light p-3" href="#!">New List +</a>
<?php
if($user){
echo '<a class="list-group-item list-group-item-action list-group-item-light p-3" href="#!">My Lists &#128274;</a>';
}
?>
<a class="list-group-item list-group-item-action list-group-item-light p-3" href="#!">About</a>
</div>
</div>
<!-- Page content wrapper-->
<div id="page-content-wrapper">
<!-- Top navigation-->
<nav class="navbar navbar-expand-lg navbar-light bg-light border-bottom">
<div class="container-fluid">
<button class="btn btn-primary" id="sidebarToggle">Toggle Menu</button>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"><span class="navbar-toggler-icon"></span></button>
<div class="collapse navbar-collapse" id="navbarSupportedContent">
<ul class="navbar-nav ms-auto mt-2 mt-lg-0">
<?php
if($user){
echo '<li class="nav-item"><a class="nav-link" href="#!">Log out</a></li>';
} else {
echo '<li class="nav-item"><a class="nav-link" href="#!">Log In</a></li>';
echo '<li class="nav-item"><a class="nav-link" href="#!">Register</a></li>';
}
?>
</ul>
</div>
</div>
</nav>
<!--Contenue de la page ici-->
<div class="container-fluid">
<h1 class="text-center my-3 pb-3">Welcome back!</h1>
<form>
<!-- Login input -->
<div class="form-outline mb-4 align-items-center">
<input type="email" id="form2Example1" class="form-control" />
<label class="form-label" for="form2Example1">Username</label>
</div>
<!-- Password input -->
<div class="form-outline mb-4">
<input type="password" id="form2Example2" class="form-control" />
<label class="form-label" for="form2Example2">Password</label>
</div>
<!-- Submit button -->
<button type="button" class="btn btn-primary btn-block mb-4" action="connecter">Sign in</button>
</form>
</div>
</div>
</div>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"></script>
<!-- Core theme JS-->
<script src="../view/js/home.js"></script>
</body>
</html>

File diff suppressed because it is too large Load Diff

@ -0,0 +1,116 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="description" content="" />
<meta name="author" content="" />
<!-- Core theme CSS (includes Bootstrap)-->
<link href="../view/css/home.css" rel="stylesheet" />
</head>
<body>
<div class="d-flex" id="wrapper">
<!-- Sidebar-->
<div class="border-end bg-white" id="sidebar-wrapper">
<div class="sidebar-heading border-bottom bg-light">2do</div>
<div class="list-group list-group-flush">
<a class="list-group-item list-group-item-action list-group-item-light p-3" href="#!">Home</a>
<a class="list-group-item list-group-item-action list-group-item-light p-3" href="#!">New List +</a>
<?php
if($user){
echo '<a class="list-group-item list-group-item-action list-group-item-light p-3" href="#!">My Lists &#128274;</a>';
}
?>
<a class="list-group-item list-group-item-action list-group-item-light p-3" href="#!">About</a>
</div>
</div>
<!-- Page content wrapper-->
<div id="page-content-wrapper">
<!-- Top navigation-->
<nav class="navbar navbar-expand-lg navbar-light bg-light border-bottom">
<div class="container-fluid">
<button class="btn btn-primary" id="sidebarToggle">Toggle Menu</button>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"><span class="navbar-toggler-icon"></span></button>
<div class="collapse navbar-collapse" id="navbarSupportedContent">
<ul class="navbar-nav ms-auto mt-2 mt-lg-0">
<?php
if($user){
echo '<li class="nav-item"><a class="nav-link" href="#!">Log out</a></li>';
} else {
echo '<li class="nav-item"><a class="nav-link" action="page_connection">Log In</a></li>';
echo '<li class="nav-item"><a class="nav-link" href="#!">Register</a></li>';
}
?>
</ul>
</div>
</div>
</nav>
<!-- Page content-->
<div class="container-fluid">
<h1 class="mt-4">Public lists</h1>
<?php
# check if set
foreach($public_lists as $l){
echo '
<section class="vh-0" style="background-color: #eee;">
<div class="container py-5 h-100">
<div class="row d-flex justify-content-center align-items-center h-100">
<div class="col col-lg-9 col-xl-7">
<div class="card rounded-3"><div class="card rounded-3">
<div class="card-body p-4">
<h4 class="text-center my-3 pb-3">'.$l->get_nom().'</h4>
<form class="row row-cols-lg-auto g-3 justify-content-center align-items-center mb-4 pb-2">
<div class="col-12">
<button type="submit" class="btn btn-primary">New task &#128221;</button>
</div>
</form>
<table class="table mb-4">
<thead>
<tr>
<th scope="col">Task</th>
<th scope="col">Importance</th>
<th scope="col">Actions</th>
</tr>
</thead>
<tbody>';
# IF NO TASKS, display NO TASKS
if(!empty($l->get_taches())){
foreach($l->get_taches() as $t){
echo '
<tr>
<td>'.$t->get_titre().'</td>
<td>'.$t->get_priorite().'</td>
<td>
<button type="submit" class="btn btn-success ms-1">Done</button>
<button type="submit" class="btn btn-danger">&#128465;</button>
</td>
</tr>';
}
} else {
echo '<h6 class="text-center my-3 pb-3">No tasks here yet!</h6>';
}
echo ' </tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</section>';
}
?>
</div>
</div>
</div>
<!-- Bootstrap core JS-->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"></script>
<!-- Core theme JS-->
<script src="../view/js/home.js"></script>
</body>
</html>

@ -0,0 +1,56 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css"
rel="stylesheet" integrity="sha384-rbsA2VBKQhggwzxH7pPCaAqO46MgnOM80zW1RWuH61DGLwZJEdK2Kadq2F9CUG65"
crossorigin="anonymous">
</head>
<body>
<section class="vh-100" style="background-color: #eee;">
<div class="container py-5 h-100">
<div class="row d-flex justify-content-center align-items-center h-100">
<div class="col col-lg-9 col-xl-7">
<div class="card rounded-3"><div class="card rounded-3">
<div class="card-body p-4">
<h4 class="text-center my-3 pb-3">My List</h4>
<form class="row row-cols-lg-auto g-3 justify-content-center align-items-center mb-4 pb-2">
<div class="col-12">
<button type="submit" class="btn btn-primary">New task &#128221;</button>
</div>
</form>
<table class="table mb-4">
<thead>
<tr>
<th scope="col">Task</th>
<th scope="col">Importance</th>
<th scope="col">Actions</th>
</tr>
</thead>
<tbody>
<?php
foreach($TabTask as $task){
echo '<tr>
<td scope="col">'.$task->get_titre().'</td>
<td scope="col">'.$task->get_priorite().'</td>
<td>
<button type="submit" class="btn btn-success ms-1">Done</button>
<button type="submit" class="btn btn-danger">&#128465;</button>
</td>
</tr>';
}
?>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</section>
</body>
</html>

@ -0,0 +1,59 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="description" content="" />
<meta name="author" content="" />
<!-- Core theme CSS (includes Bootstrap)-->
<link href="../view/css/home.css" rel="stylesheet" />
</head>
<body>
<div class="d-flex" id="wrapper">
<!-- Sidebar-->
<div class="border-end bg-white" id="sidebar-wrapper">
<div class="sidebar-heading border-bottom bg-light">2do</div>
<div class="list-group list-group-flush">
<a class="list-group-item list-group-item-action list-group-item-light p-3" href="#!">Home</a>
<a class="list-group-item list-group-item-action list-group-item-light p-3" href="#!">New List +</a>
<?php
if($user){
echo '<a class="list-group-item list-group-item-action list-group-item-light p-3" href="#!">My Lists &#128274;</a>';
}
?>
<a class="list-group-item list-group-item-action list-group-item-light p-3" href="#!">About</a>
</div>
</div>
<!-- Page content wrapper-->
<div id="page-content-wrapper">
<!-- Top navigation-->
<nav class="navbar navbar-expand-lg navbar-light bg-light border-bottom">
<div class="container-fluid">
<button class="btn btn-primary" id="sidebarToggle">Toggle Menu</button>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"><span class="navbar-toggler-icon"></span></button>
<div class="collapse navbar-collapse" id="navbarSupportedContent">
<ul class="navbar-nav ms-auto mt-2 mt-lg-0">
<?php
if($user){
echo '<li class="nav-item"><a class="nav-link" href="#!">Log out</a></li>';
} else {
echo '<li class="nav-item"><a class="nav-link" href="#!">Log In</a></li>';
echo '<li class="nav-item"><a class="nav-link" href="#!">Register</a></li>';
}
?>
</ul>
</div>
</div>
</nav>
<!--Contenue de la page ici-->
<div class="container-fluid">
</div>
</div>
</div>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"></script>
<!-- Core theme JS-->
<script src="../view/js/home.js"></script>
</body>
</html>

@ -0,0 +1,41 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css"
rel="stylesheet" integrity="sha384-rbsA2VBKQhggwzxH7pPCaAqO46MgnOM80zW1RWuH61DGLwZJEdK2Kadq2F9CUG65"
crossorigin="anonymous">
</head>
<body>
<section class="vh-100" style="background-color: #eee;">
<div class="container py-5 h-100">
<div class="row d-flex justify-content-center align-items-center h-100">
<div class="col col-lg-9 col-xl-7">
<div class="card rounded-3"><div class="card rounded-3">
<div class="card-body p-4">
<h4 class="text-center my-3 pb-3">New List</h4>
<form class="row row-cols-lg-auto g-3 justify-content-center align-items-center mb-4 pb-2">
<div class="col-12">
<div class="form-outline">
<input type="text" id="form1" class="form-control" />
</div>
</div>
<div class="col-12">
<button type="submit" class="btn btn-primary">Save</button>
</div>
<div class="col-12">
<button type="submit" class="btn btn-primary">Make private &#128274;</button>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</section>
</body>
</html>

@ -0,0 +1,26 @@
/*!
* Start Bootstrap - Simple Sidebar v6.0.5 (https://startbootstrap.com/template/simple-sidebar)
* Copyright 2013-2022 Start Bootstrap
* Licensed under MIT (https://github.com/StartBootstrap/startbootstrap-simple-sidebar/blob/master/LICENSE)
*/
//
// Scripts
//
window.addEventListener('DOMContentLoaded', event => {
// Toggle the side navigation
const sidebarToggle = document.body.querySelector('#sidebarToggle');
if (sidebarToggle) {
// Uncomment Below to persist sidebar toggle between refreshes
// if (localStorage.getItem('sb|sidebar-toggle') === 'true') {
// document.body.classList.toggle('sb-sidenav-toggled');
// }
sidebarToggle.addEventListener('click', event => {
event.preventDefault();
document.body.classList.toggle('sb-sidenav-toggled');
localStorage.setItem('sb|sidebar-toggle', document.body.classList.contains('sb-sidenav-toggled'));
});
}
});

@ -0,0 +1,75 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="description" content="" />
<meta name="author" content="" />
<!-- Core theme CSS (includes Bootstrap)-->
<link href="../view/css/home.css" rel="stylesheet" />
</head>
<body>
<div class="d-flex" id="wrapper">
<!-- Sidebar-->
<div class="border-end bg-white" id="sidebar-wrapper">
<div class="sidebar-heading border-bottom bg-light">2do</div>
<div class="list-group list-group-flush">
<a class="list-group-item list-group-item-action list-group-item-light p-3" href="#!">Home</a>
<a class="list-group-item list-group-item-action list-group-item-light p-3" href="#!">New List +</a>
<?php
if($user){
echo '<a class="list-group-item list-group-item-action list-group-item-light p-3" href="#!">My Lists &#128274;</a>';
}
?>
<a class="list-group-item list-group-item-action list-group-item-light p-3" href="#!">About</a>
</div>
</div>
<!-- Page content wrapper-->
<div id="page-content-wrapper">
<!-- Top navigation-->
<nav class="navbar navbar-expand-lg navbar-light bg-light border-bottom">
<div class="container-fluid">
<button class="btn btn-primary" id="sidebarToggle">Toggle Menu</button>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"><span class="navbar-toggler-icon"></span></button>
<div class="collapse navbar-collapse" id="navbarSupportedContent">
<ul class="navbar-nav ms-auto mt-2 mt-lg-0">
<?php
if($user){
echo '<li class="nav-item"><a class="nav-link" href="#!">Log out</a></li>';
} else {
echo '<li class="nav-item"><a class="nav-link" href="#!">Log In</a></li>';
echo '<li class="nav-item"><a class="nav-link" href="#!">Register</a></li>';
}
?>
</ul>
</div>
</div>
</nav>
<!--Contenue de la page ici-->
<div class="container-fluid">
<h2 class="text-center my-3 pb-3">Make private lists with a personnal account</h2>
<form>
<!-- Login input -->
<div class="form-outline mb-4 align-items-center">
<input type="email" id="form2Example1" class="form-control" />
<label class="form-label" for="form2Example1">Username</label>
</div>
<!-- Password input -->
<div class="form-outline mb-4">
<input type="password" id="form2Example2" class="form-control" />
<label class="form-label" for="form2Example2">Password</label>
</div>
<!-- Submit button -->
<button type="button" class="btn btn-primary btn-block mb-4" action="register">Register</button>
</form>
</div>
</div>
</div>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"></script>
<!-- Core theme JS-->
<script src="../view/js/home.js"></script>
</body>
</html>
Loading…
Cancel
Save