Skip to content
Extraits de code Groupes Projets
Sélectionner une révision Git
  • c1904b58ce5daefda010035fd10e03a942c62dbd
  • master par défaut protégée
2 résultats

espace_perso.php

Blame
  • 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">&times;</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>