Sélectionner une révision Git
-
Alexandre Morignot a rédigéAlexandre Morignot a rédigé
espace_perso.php 5,15 Kio
<?php
require '../vendor/autoload.php';
include './utils/utils.php';
include './utils/content.php';
include './utils/requestUtils.php';
session_start();
//postgres
$dbName = getenv('DB_NAME');
$dbUser = getenv('DB_USER');
$dbPassword = getenv('DB_PASSWORD');
$connection = new PDO("pgsql:host=postgres user=$dbUser dbname=$dbName password=$dbPassword");
// sécurité pour rediriger automatiquement si l'utilisateur n'est pas connecté
if (!isset($_SESSION["id_user"])) {
header('Location:index.php');
}
//repositories
$userRepository = new \User\UserRepository($connection);
$reviewRepository = new \Review\ReviewRepository($connection);
$coupdecoeurRepository = new \CoupDeCoeur\CoupDeCoeurRepository($connection);
$listeUser = $userRepository->fetchAll();
$listeReviewperso = $reviewRepository->fetchByIdUser($_SESSION["id_user"]);
$listeCDCperso = $coupdecoeurRepository->fetchByIdUser($_SESSION["id_user"]);
$users = $userRepository->fetchAll();
// valeur par defaut lorsque l'utilisateur arrive sur la page
$ok_mdp=-2;
foreach ($users as $user) {
if ($user->getId() == $_SESSION["id_user"]) {
if (isset($_POST['old_mdp'])&&isset($_POST['mdp']) && isset($_POST['cmdp'])&&isset($_POST['form_mdp']) ) {
if (password_verify($_POST['old_mdp'], $user->getMdp())) {
if($_POST['mdp'] == $_POST['cmdp']) {
$userRepository->updateUser_editer_password($_SESSION["id_user"], $_POST['mdp']);
$ok_mdp = 1;
header("Location: espace_perso.php");
}
else {
// Mdp et confirmation mdp sont différents
$ok_mdp = 0;
}
}
else {
// L'ancien mdp est faux
$ok_mdp = -1;
}
}
}
}
?>
<html>
<?php
generateHeader('espace perso');
generateUserBanner();
//Création modale de modification du mot de passe
echo '
<div class="modal fade" id="modalChgtMDP" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title" id="modalInscriptionLabel">Connexion</h4>
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
</div>';
if ($ok_mdp == 0)
echo '<p>Vos mots de passe doivent être identiques !</p>';
if ($ok_mdp == -1)
echo '<p>Votre mot de passe actuel est erroné !</p>';
if ($ok_mdp == 1)
echo '<p>Mot de passe changé !</p>';
echo "<form class=\"form\" id=\"form_editer_mdp\" action=\"espace_perso.php\" method=\"POST\">
<!-- champs caché pour savoir si on vient de info ou mdp -->
<input type=\"hidden\" name=\"form_mdp\" value=\"42\"/>
Ancien mot de passe: <br>
<input class=\"formulaire\" id=\"mdp0\" type=\"password\" name=\"old_mdp\" required><br>
Nouveau mot de passe :<br>
<input class=\"formulaire\" id=\"mdp1\" type=\"password\" name=\"mdp\" required><br>
Confirmation du nouveau mot de passe :<br>
<input class=\"formulaire\" id=\"mdp2\" type=\"password\" name=\"cmdp\" oninput=\"check_mdp(this)\" required><br>
<input class=\"formulaire\" id=\"valider_mdp\" type=\"submit\" value=\"Envoyer\">
</form>
</div>
</div>
</div>";
if( $ok_mdp == -2 )
echo '<script>$(document).ready(function(){$("#modalChgtMDP").modal(\'hide\');});</script>';
else
echo '<script>$(document).ready(function(){$("#modalChgtMDP").modal(\'show\')$("#modalChgtMDP").on(\'hidden.bs.modal\', function () {fenetreModalFermee(1);});});</script>';
?>
<body onload="startDisplayer('CDClist', 'CDCdisplayArea'); startDisplayer('Reviewlist', 'ReviewdisplayArea')" style="text-align: center;
background-image:url('./ressources/background/test2.jpeg');
background-repeat: no-repeat;
background-attachment: fixed;">
<?php
generateNavBar('espace_perso');
?>
<h1 class="titre">Ceci est la page de votre espace personnel</h1>
<h5 class="titre"> Changement mot de passe</h5>
<!---<a href="modif_mdp.php"><button>Changer mon mot de passe</button></a>-->
<button class="btn btn-primary" data-toggle="modal" data-target="#modalChgtMDP" >Changer le mot de passe</button>
<!-- bibliothèque personnelle de l'utilisateur -->
<!-- balise cachée contenant la liste des images coup de coeur -->
<div id="CDClist" style="display: none">
<?php foreach($listeCDCperso as $CDC): ?>
<li><?php echo $CDC->getIdPhoto(); ?></li>
<?php endforeach; ?>
</div>
<!-- balise cachée contenant la liste des images notées -->
<div id="Reviewlist" style="display: none">
<?php foreach($listeReviewperso as $Review): ?>
<li><?php echo $Review->getIdPhoto(); ?></li>
<?php endforeach; ?>
</div>
<div class="row">
<div class="col CoupDeCoeur">
<h3 class="titre">Vos images coup de coeur :</h3>
<!-- liste des coups de coeur de l'utilisateur -->
<div id="CDCdisplayArea"><div class="spinner-border text-dark"></div></div>
</div>
<!-- bibliothèque personnelle des images notées par l'utilisateur -->
<div class="col Reviewed">
<h3 class="titre">Les images que vous avez note :</h3>
<div id="ReviewdisplayArea"><div class="spinner-border text-dark"></div></div>
</div>
</div>
</div>
</form>
</body>
</html>