parent
4fed04027e
commit
c9486c885c
@ -0,0 +1,33 @@
|
|||||||
|
<?php
|
||||||
|
class Connection extends PDO {
|
||||||
|
|
||||||
|
private $stmt;
|
||||||
|
|
||||||
|
public function __construct(string $dsn, string $username, string $password) {
|
||||||
|
|
||||||
|
parent::__construct($dsn,$username,$password);
|
||||||
|
$this->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/** * @param string $query
|
||||||
|
* @param array $parameters *
|
||||||
|
* @return bool Returns `true` on success, `false` otherwise
|
||||||
|
*/
|
||||||
|
|
||||||
|
public function executeQuery(string $query, array $parameters = []) : bool{
|
||||||
|
$this->stmt = parent::prepare($query);
|
||||||
|
foreach ($parameters as $name => $value) {
|
||||||
|
$this->stmt->bindValue($name, $value[0], $value[1]);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $this->stmt->execute();
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getResults() : array {
|
||||||
|
return $this->stmt->fetchall();
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
@ -0,0 +1,89 @@
|
|||||||
|
<?php
|
||||||
|
require_once("metier/Compte.php");
|
||||||
|
require_once("DAL/gateways/ListeGateway.php");
|
||||||
|
class CompteGateway
|
||||||
|
{
|
||||||
|
// Attributs
|
||||||
|
private $conn;
|
||||||
|
|
||||||
|
// Constructeur
|
||||||
|
public function __construct($conn)
|
||||||
|
{
|
||||||
|
$this->conn = $conn;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Paramètre : comptreAInserer => Objet de type compte déstiné à être mémorisé
|
||||||
|
* Retour : True si la requette a été bien éxécuter. Sinon false
|
||||||
|
* Finalité : Enregistrer en base de données un Compte
|
||||||
|
*/
|
||||||
|
public function inserer(Compte $compteAInserer) : bool
|
||||||
|
{
|
||||||
|
$requette = "INSERT INTO _Compte(pseudonyme, dateCreation, motDePasse)
|
||||||
|
VALUSES(:pseudo, :date, :mdp)";
|
||||||
|
return $this->conn->executeQuerry($requette, [
|
||||||
|
":pseudo" => [$compteAInserer->getPseudonyme(), PDO::PARAM_STR],
|
||||||
|
":date" => ["STR_TO_DATE(".$compteAInserer->getDateCreation().")", PDO::PARAM_STR],
|
||||||
|
":mdp" => [$compteAInserer->getMotDePasse(), PDO::PARAM_STR]
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Paramètre : compteAEditer => Compte à éditer en base de données
|
||||||
|
* Retour : True si la requette a été bien éxécuter. Sinon false
|
||||||
|
* Finalité : Éditer un Compte identifié par son pseudonyme en base de données
|
||||||
|
*/
|
||||||
|
public function modifier(Compte $compteAModifier)
|
||||||
|
{
|
||||||
|
$requette = "UPDATE _Compte SET pseudonyme=:pseudo, dateCreation=:date, motDePasse=:mdp";
|
||||||
|
return $this->conn->executeQuerry($requette, [
|
||||||
|
":pseudo" => [$compteAModifier->getPseudonyme(), PDO::PARAM_STR],
|
||||||
|
":date" => ["STR_TO_DATE(".$compteAModifier->getDateCreation().")", PDO::PARAM_STR],
|
||||||
|
":mdp" => [$compteAModifier->getMotDePasse(), PDO::PARAM_STR]
|
||||||
|
]);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Paramètres : compteASupprimer => compte à supprimer de la base de données
|
||||||
|
* Retour : True si la requette a été bien éxécuter. Sinon false
|
||||||
|
* Finalité : Supprimer un compte de la base de données
|
||||||
|
*/
|
||||||
|
public function supprimer($compteASupprimer)
|
||||||
|
{
|
||||||
|
$requette = "DELETE FROM _Compte WHERE pseudonyme=:id";
|
||||||
|
return $this->conn->executeQuerry($requette, [
|
||||||
|
":id" => [$compteAModifier->getPseudonyme(), PDO::PARAM_INT]
|
||||||
|
]);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Paramètres : pseudo => Pseudonyme du compte a récupérer en base de données
|
||||||
|
* Retour : Un tableau contenant tout les compte avec le pseudonyme <pseudo> (devrais avoir une taille entre 0 et 1)
|
||||||
|
* Finalité : Récupérer un Compte <pseudo> en base de données et l'instancier.
|
||||||
|
*/
|
||||||
|
public function getCompteParPseudo(string $pseudo) : iterable
|
||||||
|
{
|
||||||
|
$gw = new ListeGateway($this->conn());
|
||||||
|
$requete = "SELECT * FROM _Compte WHERE pseudonyme=:pseudo";
|
||||||
|
if(!$this->conn->executeQuerry($requete, [":pseudo" => [$pseudo, PDO::PARAM_STR]]))
|
||||||
|
{
|
||||||
|
return array();
|
||||||
|
}
|
||||||
|
$comptesSQL = $this->conn->getResults();
|
||||||
|
$comptes = array();
|
||||||
|
$listes = array();
|
||||||
|
|
||||||
|
foreach($comptesSQL as $compte)
|
||||||
|
{
|
||||||
|
$comptes[] = new Compte(
|
||||||
|
$compte["pseudonyme"],
|
||||||
|
$compte["dateCreation"],
|
||||||
|
$gw->getListeParCreateur($compte["pseudonyme"]),
|
||||||
|
$compte["motDePasse"],
|
||||||
|
);
|
||||||
|
return $comptes;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
<?php
|
||||||
|
interface Gateway
|
||||||
|
{
|
||||||
|
public function inserer($itemAInserer);
|
||||||
|
public function modifier($itemAModifier);
|
||||||
|
public function supprimer($itemASupprimer);
|
||||||
|
}
|
@ -0,0 +1,182 @@
|
|||||||
|
<?php
|
||||||
|
require_once("metier/Tache.php");
|
||||||
|
require_once("metier/TodoList.php");
|
||||||
|
require_once("DAL/gateways/TacheGateway.php");
|
||||||
|
class ListeGateway
|
||||||
|
{
|
||||||
|
|
||||||
|
// Attributs
|
||||||
|
private $conn;
|
||||||
|
|
||||||
|
|
||||||
|
// Constructeurs
|
||||||
|
public function __construct($conn)
|
||||||
|
{
|
||||||
|
$this->conn = $conn;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Paramètre : l => TodoList à inserer en base de données
|
||||||
|
* Retour : True si la requette à résussie à s'éxécuter. Sinon False
|
||||||
|
* Finalité : Inserer une TodoList en base de données
|
||||||
|
*/
|
||||||
|
public function inserer(TodoList $l) : bool
|
||||||
|
{
|
||||||
|
$requete = "INSERT INTO _TodoList(nom, dateCreation, createur)
|
||||||
|
VALUES(:nom, :date, :createur)";
|
||||||
|
return $this->conn->executeQuery($requete, [
|
||||||
|
":nom" => [$l->getNom(), PDO::PARAM_STR],
|
||||||
|
":date" => ["STR_TO_DATE(".$l->getDateCreation().")", PDO::PARAM_STR],
|
||||||
|
":createur" => [$l->getCreateur(), PDO::PARAM_STR]
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Paramètres : l => TodoList à supprimer de la base de données
|
||||||
|
* Retour : True si la requette à résussie à s'éxécuter. Sinon False
|
||||||
|
* Finalité : Supprimer une liste <l> de la base de données
|
||||||
|
*/
|
||||||
|
public function supprimer(TodoList $l) : bool
|
||||||
|
{
|
||||||
|
$requete = "DELETE FROM _TodoList WHERE listeID=:id";
|
||||||
|
return $this->conn->executeQuery($requete,[
|
||||||
|
":id"=>[$l->getID(), PDO::PARAM_INT]
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Paramètres : l => TodoList à éditer en base de données
|
||||||
|
* Retour : True si la requette à résussie à s'éxécuter. Sinon False
|
||||||
|
* Finalité : Éditer la TodoList <l> en base de données
|
||||||
|
*/
|
||||||
|
public function modifier(TodoList $l) : bool
|
||||||
|
{
|
||||||
|
$requete="UPDATE _TodoList SET
|
||||||
|
nom=:n, public=:p";
|
||||||
|
return $this->conn->executeQuery($requete, [
|
||||||
|
":n" => [$l->getNom(), PDO::PARAM_STR],
|
||||||
|
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Paramètres : page => Numéro de la page à afficher
|
||||||
|
* nbTache => Nombre de tâches à afficher par pages
|
||||||
|
* Retour : Retourne un tableau de listes de taille maximale <nbTache> ordoné par date de création
|
||||||
|
* Finalité : Récuperer les todoLists en bases de données par ordre de création et les instancier
|
||||||
|
*/
|
||||||
|
public function listeParDate(int $page, int $nbTache) : iterable
|
||||||
|
{
|
||||||
|
$gwTache = new TacheGateway($this->conn);
|
||||||
|
$lites = array();
|
||||||
|
$requete = "SELECT * FROM _TodoList ORDER BY dateCreation LIMIT :p+:n, :n";
|
||||||
|
$isOK=$this->conn->executeQuery($requete, [
|
||||||
|
":p" => [$page-1, PDO::PARAM_INT],
|
||||||
|
":n" => [$nbTache, PDO::PARAM_INT]
|
||||||
|
]);
|
||||||
|
if(!$isOK)
|
||||||
|
{
|
||||||
|
return array();
|
||||||
|
}
|
||||||
|
|
||||||
|
$res = $this->conn->getResults();
|
||||||
|
foreach($res as $liste)
|
||||||
|
{
|
||||||
|
$listes[] = new TodoList(
|
||||||
|
$liste["listeID"],
|
||||||
|
$liste["nom"],
|
||||||
|
$liste["Createur"],
|
||||||
|
$liste["dateCreation"],
|
||||||
|
$gwTache->getTachesParIDListe($liste["listeID"])
|
||||||
|
);
|
||||||
|
}
|
||||||
|
return $listes;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Paramètres : page => Numéro de la page à afficher
|
||||||
|
* nbTache => Nombre de tâches à afficher par pages
|
||||||
|
* Retour : Retourne un tableau de listes de taille maximale <nbTache> ordoné par nom de liste (ordre lexicographique)
|
||||||
|
* Finalité : Récuperer les todoLists en bases de données par ordre de lexicographique et les instancier
|
||||||
|
*/
|
||||||
|
public function listeParNom(int $page, int $nbListes) : iterable
|
||||||
|
{
|
||||||
|
$gwTache = new TacheGateway($this->conn);
|
||||||
|
$lites = array();
|
||||||
|
$requete = "SELECT * FROM _TodoList ORDER BY nom LIMIT :p+:n, :n";
|
||||||
|
$isOK=$this->conn->executeQuery($requete, [
|
||||||
|
":p" => [$page-1, PDO::PARAM_INT],
|
||||||
|
":n" => [$nbListes, PDO::PARAM_INT]
|
||||||
|
]);
|
||||||
|
if(!$isOK)
|
||||||
|
{
|
||||||
|
return array();
|
||||||
|
}
|
||||||
|
|
||||||
|
$res = $this->conn->getResults();
|
||||||
|
|
||||||
|
foreach($res as $liste)
|
||||||
|
{
|
||||||
|
$listes[] = new TodoList(
|
||||||
|
$liste["listeID"],
|
||||||
|
$liste["nom"],
|
||||||
|
$liste["Createur"],
|
||||||
|
$liste["dateCreation"],
|
||||||
|
$gwTache->getTachesParIDListe($liste["listeID"], 1, 10)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
return $listes;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Paramètres : page => Numéro de la page à afficher
|
||||||
|
* nbTache => Nombre de tâches à afficher par pages
|
||||||
|
* createur => Pseudonyme du créateur des listes enregistrés en base de données
|
||||||
|
* Retour : Retourne un tableau de listes de taille maximale <nbTache> créer par <createur> de liste
|
||||||
|
* Finalité : Récuperer les todoLists en bases de données créer par créateur et les instancier
|
||||||
|
*/
|
||||||
|
public function getListeParCreateur(int $page, int $nbListes, string $createur) : iterable
|
||||||
|
{
|
||||||
|
$gwTache = new TacheGateway($this->conn);
|
||||||
|
$lites = array();
|
||||||
|
$requete = "SELECT * FROM _TodoList WHERE Createur = :c LIMIT :p+:n, :n";
|
||||||
|
$isOK=$this->conn->executeQuery($requete, [
|
||||||
|
":c" => [$createur, PDO::PARAM_STR],
|
||||||
|
":p" => [$page-1, PDO::PARAM_INT],
|
||||||
|
":n" => [$nbListes, PDO::PARAM_INT]
|
||||||
|
]);
|
||||||
|
if(!$isOK)
|
||||||
|
{
|
||||||
|
return array();
|
||||||
|
}
|
||||||
|
|
||||||
|
$res = $this->conn->getResults();
|
||||||
|
|
||||||
|
foreach($res as $liste)
|
||||||
|
{
|
||||||
|
$listes[] = new TodoList(
|
||||||
|
$liste["listeID"],
|
||||||
|
$liste["nom"],
|
||||||
|
$liste["Createur"],
|
||||||
|
$liste["dateCreation"],
|
||||||
|
$gwTache->getTachesParIDListe($liste["listeID"], 1, 10)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
return $listes;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Paramètres : l => TodoList à acctualiser
|
||||||
|
* pages => Numéro de la page à afficher
|
||||||
|
* nbTache => Nombre de tâches à afficher par pages
|
||||||
|
* Retour : Retourne la liste <l> avec les <nbTaches> tâches de la page <page>
|
||||||
|
* Finalité : Actualiser les taches contenues dans <l> en fonction de <page> et <nbTaches>
|
||||||
|
*/
|
||||||
|
public function ActualiserListe(TodoList $l, int $page, int $nbTaches) : TodoList
|
||||||
|
{
|
||||||
|
$gwTache = new TacheGateway($this->conn);
|
||||||
|
$l->setTaches($gwTaches->getTachesParIDListe($l->getID(), $page, $nbTaches));
|
||||||
|
return $l;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,102 @@
|
|||||||
|
<?php
|
||||||
|
require_once('metier/Tache.php');
|
||||||
|
|
||||||
|
|
||||||
|
class TacheGateway
|
||||||
|
{
|
||||||
|
// Attributs
|
||||||
|
private $conn;
|
||||||
|
|
||||||
|
// constructeur
|
||||||
|
public function __construct(Connection $conn)
|
||||||
|
{
|
||||||
|
$this->conn = $conn;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Paramètre : tacheAInserer => Tache à enregistrer en base de données
|
||||||
|
* Retour : True si la requete c'est correctement éxécuter. Sinon false
|
||||||
|
* Finalité : Enregister en base de données une tache.
|
||||||
|
*/
|
||||||
|
public function inserer(Tache $tacheAInserer) : bool
|
||||||
|
{
|
||||||
|
$requette = "INSERT INTO _Tache(NomTache, TacheFaite, Commentaire) VALUES(
|
||||||
|
:nom, :fait, :commentaire
|
||||||
|
)";
|
||||||
|
|
||||||
|
return $this->conn->executeQuery($requette, [
|
||||||
|
':nom' => [$tacheAInserer->nom, PDO::PARAM_STR],
|
||||||
|
':fait'=> [$tacheAInserer->estFait, PDO::PARAM_BOOL],
|
||||||
|
':commentaire' => [$tacheAInserer->commentaire, PDO::PARAM_STR],
|
||||||
|
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Paramètre : tacheAModifier => Tache à éditer en base de données
|
||||||
|
* Retour : True si la requete c'est correctement éxécuter. Sinon false
|
||||||
|
* Finalité : Édite la tache <tacheAModifier> en base de données.
|
||||||
|
*/
|
||||||
|
public function modifier(Tache $tacheAModifier)
|
||||||
|
{
|
||||||
|
$requette = "UPDATE _Tache SET
|
||||||
|
NomTache = :nom,
|
||||||
|
Commentaire = :commentaire,
|
||||||
|
TacheFaite = :fait
|
||||||
|
WHERE
|
||||||
|
tacheID = :id";
|
||||||
|
return $this->conn->executeQuery($requette,[
|
||||||
|
':nom' => [$tacheAModifier->nom, PDO::PRAM_STR],
|
||||||
|
':commentaire' => [$tacheAModifier->commentaire, PDO::PARAM_STR],
|
||||||
|
':fait' => [$tacheAModifier->estFait, PDO::PARAM_BOOL]
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Paramètre : tacheASupprimer => Tache à supprimer en base de données
|
||||||
|
* Retour : True si la requete c'est correctement éxécuter. Sinon false
|
||||||
|
* Finalité : Supprime la tache <tacheASupprimer> en base de données.
|
||||||
|
*/
|
||||||
|
public function supprimer(Tache $tacheASupprimer)
|
||||||
|
{
|
||||||
|
$requette = "DELETE FROM _Tache WHERE tacheID=:id";
|
||||||
|
return $this->conn->executeQuery($requette,
|
||||||
|
[':id', [$tacheASupprimer->tacheID]]
|
||||||
|
);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Paramètre : l => Identifiant de la TodoList.
|
||||||
|
* page => Numéro de la page à retourner
|
||||||
|
* nbTache => Nombre de tache par page
|
||||||
|
* Retour : Retourne les taches de la liste <l> par orde de nom de tache
|
||||||
|
* Finalité : Récuperer les Taches d'une liste et les instancier
|
||||||
|
*/
|
||||||
|
public function getTachesParIDListe(int $l, int $page, int $nbTache) : iterable
|
||||||
|
{
|
||||||
|
$requete = "SELECT * FROM _Tache WHERE listID=:id ORDER BY NomTache LIMIT :p+:n, :n";
|
||||||
|
if(!$this->conn->executeQuery($requete,[
|
||||||
|
":id" => [$l->getID(), PDO::PARAM_INT],
|
||||||
|
":p" => [$page-1, PDO::PARAM_INT],
|
||||||
|
":n" => [$nbTache, PDO::PARAM_INT]
|
||||||
|
]))
|
||||||
|
{
|
||||||
|
return array();
|
||||||
|
}
|
||||||
|
|
||||||
|
$res = $this->conn->getResults();
|
||||||
|
$taches = array();
|
||||||
|
foreach($res as $tache)
|
||||||
|
{
|
||||||
|
$taches[] = new Tache(
|
||||||
|
$tache["NomTache"],
|
||||||
|
$tache["TacheFaite"],
|
||||||
|
$tache["Commentaire"],
|
||||||
|
$tache["tacheID"]
|
||||||
|
);
|
||||||
|
}
|
||||||
|
return $taches;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,59 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
class Compte
|
||||||
|
{
|
||||||
|
// Attributs
|
||||||
|
private $pseudonyme;
|
||||||
|
private $dateCreation;
|
||||||
|
private $listes;
|
||||||
|
private $motDePasse;
|
||||||
|
|
||||||
|
|
||||||
|
//Constructeur
|
||||||
|
public function __construct(string $nom, string $dateCreation=null, iterable $lists = array(), string $motDePasse)
|
||||||
|
{
|
||||||
|
$this->pseudonyme = $nom;
|
||||||
|
$this->dateCreation = $dateCreation == null ? date("j/m/Y") : $dateCreation;
|
||||||
|
$this->listes = $lists;
|
||||||
|
$this->motDePasse = $motDePasse;
|
||||||
|
}
|
||||||
|
|
||||||
|
//Accesseurs/Mutatteurs
|
||||||
|
public function getPseudonyme() : string
|
||||||
|
{
|
||||||
|
return $this->pseudonyme;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function setPseudonyme(string $nouveauPseudonyme) : void
|
||||||
|
{
|
||||||
|
if(!empty($nouveauPseudonyme))
|
||||||
|
{
|
||||||
|
$this->pseudonyme = $nouveauPseudonyme;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getDateCreation()
|
||||||
|
{
|
||||||
|
return $this->dateCreation;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getMotDePasse()
|
||||||
|
{
|
||||||
|
return $this->motDePasse;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getListes()
|
||||||
|
{
|
||||||
|
return $this->listes;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function setListes(iterable $listes)
|
||||||
|
{
|
||||||
|
$this->listes = $listes;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function addListe(TodoList $l)
|
||||||
|
{
|
||||||
|
$this->listes[] = $l;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,55 @@
|
|||||||
|
<?php
|
||||||
|
class Tache
|
||||||
|
{
|
||||||
|
// Attributs
|
||||||
|
private $nom;
|
||||||
|
private $fait;
|
||||||
|
private $commentaire;
|
||||||
|
private $tacheID;
|
||||||
|
|
||||||
|
// Constructeur
|
||||||
|
public function __construct(string $nom, bool $estFait=false, string $commentaire="", int $tacheID)
|
||||||
|
{
|
||||||
|
$this->nom = $nom;
|
||||||
|
$this->fait = $estFait;
|
||||||
|
$this->commentaire = $commentaire;
|
||||||
|
$this->tacheID = $tacheID;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Accesseurs / Mutatteurs
|
||||||
|
public function getNom() : string
|
||||||
|
{
|
||||||
|
return $this->nom;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function setNom(string $nouveauNom)
|
||||||
|
{
|
||||||
|
$this->nom = $nouveauNom;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getCommentaire() : string
|
||||||
|
{
|
||||||
|
return $this->commentaire;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function setCommentaire(string $nouveauComm)
|
||||||
|
{
|
||||||
|
$this->commentaire = $nouveauComm;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function estFait() : bool
|
||||||
|
{
|
||||||
|
return $this->fait;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function setFait(bool $fait)
|
||||||
|
{
|
||||||
|
$this->fait = $fait;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getID() : int
|
||||||
|
{
|
||||||
|
return $this->tacheID;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,57 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
class TodoList
|
||||||
|
{
|
||||||
|
// Attrubuts
|
||||||
|
private $nom;
|
||||||
|
private $createur;
|
||||||
|
private $dateCreation;
|
||||||
|
private $id;
|
||||||
|
private $taches;
|
||||||
|
|
||||||
|
|
||||||
|
// Constructeurs
|
||||||
|
public function __construct(int $id, string $nom, string $createur, string $dateCreation, iterable $taches)
|
||||||
|
{
|
||||||
|
$this->nom = $nom;
|
||||||
|
$this->createur = $createur;
|
||||||
|
$this->dateCreation = $dateCreation;
|
||||||
|
$this->id = $id;
|
||||||
|
$this->taches = $taches;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Accesseurs / Mutatteurs
|
||||||
|
public function getNom() : string
|
||||||
|
{
|
||||||
|
return $this->nom;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getDateCreation() : string
|
||||||
|
{
|
||||||
|
return $this->dateCreation;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public function getCreateur() : string
|
||||||
|
{
|
||||||
|
return $this->createur;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getID() : int
|
||||||
|
{
|
||||||
|
return $this->id;
|
||||||
|
}
|
||||||
|
public function getTaches() : iterable
|
||||||
|
{
|
||||||
|
return $this->taches;
|
||||||
|
}
|
||||||
|
public function setTaches(array $taches)
|
||||||
|
{
|
||||||
|
$this->taches = $taches;
|
||||||
|
}
|
||||||
|
public function addTache(Tache $t)
|
||||||
|
{
|
||||||
|
$this->taches[] = $t;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in new issue