Cookie for the pagination done, improvement of the visual and css for a task done

listePrive
Emre KARTAL 2 years ago
parent 82c7a9fc22
commit da609c6f81

@ -3,7 +3,7 @@
-- https://www.phpmyadmin.net/
--
-- Hôte : localhost
-- Généré le : mar. 06 déc. 2022 à 22:21
-- Généré le : ven. 16 déc. 2022 à 14:49
-- Version du serveur : 10.5.15-MariaDB-0+deb11u1
-- Version de PHP : 7.4.28
@ -47,6 +47,23 @@ INSERT INTO `MaTable` (`Id`, `Nom`, `Prenom`, `Aigritude`, `Age`) VALUES
-- --------------------------------------------------------
--
-- Structure de la table `ToDoList_Admin`
--
CREATE TABLE `ToDoList_Admin` (
`idAdmin` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
--
-- Déchargement des données de la table `ToDoList_Admin`
--
INSERT INTO `ToDoList_Admin` (`idAdmin`) VALUES
(50);
-- --------------------------------------------------------
--
-- Structure de la table `ToDoList_Liste`
--
@ -65,17 +82,29 @@ CREATE TABLE `ToDoList_Liste` (
--
INSERT INTO `ToDoList_Liste` (`id`, `nom`, `description`, `dateCreation`, `estPublic`, `idUtilisateur`) VALUES
(2, 'Work', 'Mes tâches d\'octobres !', '2022-12-01', 1, 1),
(2, 'Work', 'Work', '2022-12-01', 1, 1),
(3, 'Job', 'J\'aime travailler', '2022-12-05', 1, 1),
(4, 'Fourniture Scolaire', 'Acheter les Fournitures Scolaire avant Septembre', '2022-12-06', 1, 1),
(6, 'Projet Blazor', 'Les tâches que je doit faire pour mon projet Blazor', '2022-12-06', 1, 1),
(7, 'SAE', 'Les tâches à faire pour la SAE', '2022-12-06', 1, 1),
(8, 'Supermarché', 'Acheter les courses au Supermarché', '2022-12-02', 1, 1),
(9, 'Voiture', 'Liste des choses à acheter pour ma voiture', '2022-12-01', 1, 1),
(10, 'Analyse', 'Liste des choses à réviser en analyse', '2022-12-01', 1, 1),
(11, 'Ordinateur', 'Les composants pour mon ordinateur', '2022-12-03', 1, 1),
(13, 'Test List', '', '2022-12-01', 1, 1),
(14, 'Test List 2', 'hahaa', '2022-12-02', 1, 1);
(14, 'Test List 2', 'hahaa', '2022-12-02', 1, 1),
(40, 'TestList1', 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. ', '2022-12-15', 1, 49),
(41, 'TestList2', 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. ', '2022-12-14', 1, 1),
(42, 'TestList3', 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. ', '2022-12-15', 1, 49),
(43, 'TestList4', 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. ', '2022-12-15', 1, 49),
(44, 'Montre', 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.', '2022-12-12', 1, 1),
(45, 'Glace', 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.', '2022-12-13', 1, 49),
(46, 'Trotinette', 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.', '2022-12-15', 0, 49),
(47, 'Csharp', 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.', '2022-12-14', 1, 1),
(48, 'Book', 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.', '2022-12-15', 1, 49),
(49, 'Telephone', 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.', '2022-12-10', 1, 1),
(50, 'Clavier', 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.', '2022-12-13', 1, 49),
(51, 'Méthodes d\'optimisation', 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.', '2022-12-07', 1, 49),
(52, 'Casque', 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.', '2022-12-07', 1, 49);
-- --------------------------------------------------------
@ -101,9 +130,9 @@ INSERT INTO `ToDoList_Tache` (`id`, `nom`, `description`, `dateCreation`, `estVa
(2, 'Blazor', 'Finir le projet de Blazor', '2022-12-06', 1, 2),
(3, 'Stage', 'Postuler chez CGI et Apside', '2022-12-06', 0, 3),
(4, 'CV', 'Finir le CV', '2022-12-06', 1, 3),
(5, 'Push', 'rayhan faut penser a push ton taff', '2022-12-06', 0, 6),
(5, 'Push', 'rayhan faut penser a push ton taff', '2022-12-06', 1, 6),
(6, 'Etre le goat', 'je suis le goat', '2022-12-06', 0, 7),
(7, 'Acheter le lait ', 'parce que il faut faire comme papa', '2022-12-06', 0, 8),
(7, 'Acheter le lait ', 'parce que il faut faire comme papa', '2022-12-06', 1, 8),
(8, 'Acheter des stylos', 'parce que Arthur en a pas', '2022-12-06', 0, 4),
(9, 'Réviser prog sys', 'Je suis dans la caca', '2022-12-06', 0, 3);
@ -127,7 +156,9 @@ CREATE TABLE `ToDoList_Utilisateur` (
--
INSERT INTO `ToDoList_Utilisateur` (`id`, `nom`, `prenom`, `pseudo`, `email`, `motDePasse`) VALUES
(1, 'Kartal', 'Emre', 'Malleo', 'emre.kartal@etu.uca.fr', '0000');
(1, 'Kartal', 'Emre', 'Malleo', 'emre.kartal10@etu.uca.fr', '00000'),
(49, 'Khedair', 'Rami', 'Rori63', 'rami.khedair@etu.uca.fr', '$2y$10$aqRyoGoXN9dxpGPsMYTNY.gkSDZwsIwORfb78HqleiuV3PvwQ75iO'),
(50, 'Rayhan', 'Hassou', 'rayhan', 'hassourayhan1@gmail.com', '$2y$10$D0sJ14i8bDdigDZZx1VLguWbviCbVw5cAQkwD/ja336MD3E2tFEH6');
--
-- Index pour les tables déchargées
@ -139,26 +170,33 @@ INSERT INTO `ToDoList_Utilisateur` (`id`, `nom`, `prenom`, `pseudo`, `email`, `m
ALTER TABLE `MaTable`
ADD PRIMARY KEY (`Id`);
--
-- Index pour la table `ToDoList_Admin`
--
ALTER TABLE `ToDoList_Admin`
ADD KEY `idAdmin` (`idAdmin`);
--
-- Index pour la table `ToDoList_Liste`
--
ALTER TABLE `ToDoList_Liste`
ADD PRIMARY KEY (`id`),
ADD KEY `idUtilisateur` (`idUtilisateur`);
ADD KEY `ToDoList_Liste_ibfk_1` (`idUtilisateur`);
--
-- Index pour la table `ToDoList_Tache`
--
ALTER TABLE `ToDoList_Tache`
ADD PRIMARY KEY (`id`),
ADD KEY `idListe` (`idListe`);
ADD KEY `ToDoList_Tache_ibfk_1` (`idListe`);
--
-- Index pour la table `ToDoList_Utilisateur`
--
ALTER TABLE `ToDoList_Utilisateur`
ADD PRIMARY KEY (`id`),
ADD UNIQUE KEY `email` (`email`);
ADD UNIQUE KEY `email` (`email`),
ADD UNIQUE KEY `pseudo` (`pseudo`);
--
-- AUTO_INCREMENT pour les tables déchargées
@ -174,35 +212,41 @@ ALTER TABLE `MaTable`
-- AUTO_INCREMENT pour la table `ToDoList_Liste`
--
ALTER TABLE `ToDoList_Liste`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=15;
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=55;
--
-- AUTO_INCREMENT pour la table `ToDoList_Tache`
--
ALTER TABLE `ToDoList_Tache`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=10;
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=100;
--
-- AUTO_INCREMENT pour la table `ToDoList_Utilisateur`
--
ALTER TABLE `ToDoList_Utilisateur`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=5;
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=51;
--
-- Contraintes pour les tables déchargées
--
--
-- Contraintes pour la table `ToDoList_Admin`
--
ALTER TABLE `ToDoList_Admin`
ADD CONSTRAINT `ToDoList_Admin_ibfk_1` FOREIGN KEY (`idAdmin`) REFERENCES `ToDoList_Utilisateur` (`id`);
--
-- Contraintes pour la table `ToDoList_Liste`
--
ALTER TABLE `ToDoList_Liste`
ADD CONSTRAINT `ToDoList_Liste_ibfk_1` FOREIGN KEY (`idUtilisateur`) REFERENCES `ToDoList_Utilisateur` (`id`);
ADD CONSTRAINT `ToDoList_Liste_ibfk_1` FOREIGN KEY (`idUtilisateur`) REFERENCES `ToDoList_Utilisateur` (`id`) ON DELETE CASCADE;
--
-- Contraintes pour la table `ToDoList_Tache`
--
ALTER TABLE `ToDoList_Tache`
ADD CONSTRAINT `ToDoList_Tache_ibfk_1` FOREIGN KEY (`idListe`) REFERENCES `ToDoList_Liste` (`id`);
ADD CONSTRAINT `ToDoList_Tache_ibfk_1` FOREIGN KEY (`idListe`) REFERENCES `ToDoList_Liste` (`id`) ON DELETE CASCADE;
COMMIT;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;

@ -18,3 +18,4 @@ RewriteRule ^MonProfil$ index.php?action=redirectionProfil [L]
RewriteRule ^supprimerCompte$ index.php?action=supprimerCompte [L]
RewriteRule ^previousPage$ index.php?action=pagePrécédente [L]
RewriteRule ^nextPage$ index.php?action=pageSuivante [L]
RewriteRule ^Users$ index.php?action=voirUser [L]

@ -196,14 +196,14 @@ class CtrlVisiteur {
}
public function listePrécédente(array $dVueErreur){
if($_COOKIE["page"]>1){
$_COOKIE["page"]=$_COOKIE["page"]-1;
if($_COOKIE['page']>1){
setcookie('page', $_COOKIE['page'] - 1, time() + 24*3600);
}
$this->ConsulterListePublic($dVueErreur);
}
public function listeSuivante(array $dVueErreur){
$_COOKIE["page"]=$_COOKIE["page"]+1;
setcookie('page', $_COOKIE['page'] + 1, time() + 24*3600);
$this->ConsulterListePublic($dVueErreur);
}

@ -4,13 +4,15 @@ class FrontControleur {
function __construct(){
global $rep,$vues;
session_start();
setcookie('page', 1, time() + 24*3600);
if(!isset($_COOKIE['page'])){
setcookie('page', 1, time() + 24*3600);
}
try {
$string_actor=' ';
$listeActions=array(
'Utilisateur' => array('logout','redirectionProfil','supprimerCompte','modifMdp'),
'Admin' => array()
'Admin' => array('voirUser')
);
//On récupère l'action

@ -7,34 +7,26 @@ class MdlAdmin
}
public function connection($login,$mdp){
// $gtw=GatewayAdmin();
// $login=Validation::cleanString($login);
// $mdp=Validation::cleanString($mdp);
// if(password_verify($mdp,$gtw->getCredentials($login)){
// $_SESSION['role']='admin';
// $_SESSION['login']=$login;
// return newAdmin($login,admin);
// }
// else return NULL;
}
public function deconnexion(){
session_unset();
session_destroy();
$_SESSION = array();
}
public function isAdmin(){
if(isset($_SESSION["login"]) && isset($_SESSION["role"]))
{
$login=Nettoyer::nettoyer_string($_SESSION['login']);
$role=Nettoyer::nettoyer_string($_SESSION['role']);
return new Admin($login,$role);
} else return null;
}
public function isConnected(){
if(isset($_SESSION['id']) && isset($_SESSION['role']) && $_SESSION['role']=='admin') {
$id=Validation::cleanInt($_SESSION['id']);
$nom=Validation::cleanString($_SESSION['nom']);
$prenom=Validation::cleanString($_SESSION['prenom']);
$pseudo=Validation::cleanPseudo($_SESSION['pseudo']);
$email=Validation::cleanMail($_SESSION['email']);
return new Utilisateur($id,$nom,$prenom,$pseudo,$email);
}
else return null;
}
public function supprimerUtilisateur(){
}
}

@ -26,7 +26,7 @@ class MdlUtilisateur
}
public function isConnected(){
if(isset($_SESSION['id']) && isset($_SESSION['role'])) {
if(isset($_SESSION['id']) && isset($_SESSION['role']) && $_SESSION['role']=='user') {
$id=Validation::cleanInt($_SESSION['id']);
$nom=Validation::cleanString($_SESSION['nom']);
$prenom=Validation::cleanString($_SESSION['prenom']);

@ -18,8 +18,8 @@ class MdlVisiteur
public static function RecupererListePublic(){
$userGtw = new ListeGateway();
if(isset($_COOKIE["page"]))
return $userGtw->getListePublic(($_COOKIE["page"]-1)*10,10);
if(isset($_COOKIE['page']))
return $userGtw->getListePublic(($_COOKIE['page']-1)*10,10);
else
return $userGtw->getListePublic(1,10);
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 976 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.6 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Before

Width:  |  Height:  |  Size: 6.1 KiB

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 247 B

@ -0,0 +1,3 @@
input[type="checkbox"]:checked + label {
text-decoration: line-through;
}

@ -21,6 +21,9 @@
if(isset($_SESSION['id'])){ ?>
<h5><a class="nav-item nav-link text-light" href="VueListePublic">Listes Publiques</a></h5>
<h5><a class="nav-item nav-link text-light" href="#">Mes listes</a></h5>
<?php if($_SESSION['role']=='admin'){?>
<h5><a class="nav-item nav-link text-warning" href="Users">Les utilisateurs</a></h5>
<?php } ?>
<h5><a class="nav-item nav-link text-light" href="MonProfil">Mon Profil</a></h5>
<h5><button class="nav-item btn btn-outline-light" onclick="myFunction()">Se déconnecter</button></h5>

@ -8,6 +8,7 @@
<!-- CSS only -->
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
<link rel="stylesheet" href="https:/stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<link rel="stylesheet" href="./vue/css/task.css">
<!-- JavaScript Bundle with Popper -->
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>
@ -176,20 +177,20 @@
}
$total = $total + 1;
?>
<li class="list-group-item border-0 d-flex align-items-center ps-0">
<form name="action" action="index.php?action=check" method="POST">
<input class="form-check-input me-3" type="checkbox" onChange="submit();"
<input class="form-check-input me-3" id="task-<?= $tache->getId() ?>" type="checkbox" onChange="submit();"
<?php if($tache->getEstValide() == 1) echo "checked" ?>>
<label for="task-<?= $tache->getId() ?>"> <?= $tache->getNom() ?> : <?= $tache->getDescription() ?></label>
<input type="hidden" name="idTache" value="<?= $tache->getId() ?>" >
</form>
<?= $tache->getNom() ?> : <?= $tache->getDescription() ?>
<a href="index.php?action=SupprimerTache&idTache=<?= $tache->getId() ?>">
<button class="btn btn-default">
<img src="./vue/Images/trash.png" width="18" />
<img src="./vue/Images/trash2.png" width="20" />
</button>
</a>
<button type="submit" class="btn btn-default">
<img src="./vue/Images/edit.png" width="18" />
</button>

Loading…
Cancel
Save