From c03bfabf9b83b68bcf4df040382860ed3f0ede07 Mon Sep 17 00:00:00 2001 From: bruneau2017 <valentin.bruneau@ensiie.fr> Date: Fri, 14 Dec 2018 15:46:07 +0100 Subject: [PATCH] Creation page modif identifiants des utilisateurs --- src/WebApp/application/controllers/User.php | 50 ++++++++-- src/WebApp/application/views/accueil.php | 8 ++ src/WebApp/application/views/compte.php | 97 +++++++++++++++++++ .../application/views/compte_success.php | 74 ++++++++++++++ 4 files changed, 221 insertions(+), 8 deletions(-) create mode 100644 src/WebApp/application/views/compte.php create mode 100644 src/WebApp/application/views/compte_success.php diff --git a/src/WebApp/application/controllers/User.php b/src/WebApp/application/controllers/User.php index 3f352ea..b5cb6a0 100644 --- a/src/WebApp/application/controllers/User.php +++ b/src/WebApp/application/controllers/User.php @@ -58,13 +58,6 @@ class User extends CI_Controller { $this->form_validation->set_rules('password_c', 'Mot de passe', 'callback_verif_user'); - $this->db->select('*'); - $this->db->from('utilisateur'); - $this->db->where(array('mail' => $_POST['email'] , 'password' => hash("sha1", $_POST['password_c']) )); - $query=$this->db->get(); - - $user=$query->row(); - if ($this->form_validation->run() == TRUE) { $_SESSION['logged_in']=TRUE; $_SESSION['username']=$_POST['email']; @@ -90,11 +83,52 @@ class User extends CI_Controller { $this->form_validation->set_message('verif_user', 'Aucun compte ne correspond à ces identifiants'); return FALSE; } -} + } public function deconnexion(){ $this->load->library('session'); $this->load->view('deconnexion'); $this->session->sess_destroy(); } + + public function compte(){ + $this->load->view('compte'); + } + + public function compte_success(){ + if(isset($_POST['edition'])) { + + $this->load->database(); + + $this->load->library('session'); + + $this->form_validation->set_error_delimiters('<div class="error">', '</div>'); + + if($_POST['email_edit']!=$_SESSION['username']) { + + $this->form_validation->set_rules('mail_edit', 'Mail', 'valid_email|is_unique[utilisateur.mail]'); + } + + $this->form_validation->set_rules('password_edit', 'Mot de passe', 'min_length[7]'); + + $this->form_validation->set_rules('password_c_edit', 'Confirmation du mot de passe', 'matches[password_edit]' ); + + if ($this->form_validation->run() == TRUE) { + + $this->db->update('utilisateur'); + $this->db->set('mail',$_POST['email_edit']); + $this->db->where(array('mail' => $_SESSION['username'])); + + if (isset($_POST['password_edit'])) { + $mdp_hash = hash("sha1", $_POST['password_edit']); + $this->db->update('utilisateur'); + $this->db->set('password',$mdp_hash); + $this->db->where(array('mail' => $_POST['email_edit'])); + } + } + else { + $this->load->view('compte'); + } + } + } } \ No newline at end of file diff --git a/src/WebApp/application/views/accueil.php b/src/WebApp/application/views/accueil.php index 0bed431..095851b 100644 --- a/src/WebApp/application/views/accueil.php +++ b/src/WebApp/application/views/accueil.php @@ -66,6 +66,14 @@ defined('BASEPATH') OR exit('No direct script access allowed'); echo('</li>'); } ?> + <?php + $this->load->library('session'); + if(isset($_SESSION['username'])){ + echo('<li class="nav-item">'); + echo('<a class="nav-link js-scroll-trigger" href="index.php/User/compte">Compte</a>'); + echo('</li>'); + } + ?> <li class="nav-item"> <a class="nav-link js-scroll-trigger" href="index.php/User/inscription">Inscription </a> </li> diff --git a/src/WebApp/application/views/compte.php b/src/WebApp/application/views/compte.php new file mode 100644 index 0000000..b31bb21 --- /dev/null +++ b/src/WebApp/application/views/compte.php @@ -0,0 +1,97 @@ +<?php +defined('BASEPATH') OR exit('No direct script access allowed'); +?><!DOCTYPE html> +<html> +<head> + <style> + .loading { + position: fixed; + left: 0px; + top: 0px; + width: 100%; + height: 100%; + z-index: 9999; + background: url('https://web.archive.org/web/20170914202017im_/http://bradsknutson.com/wp-content/uploads/2013/04/page-loader.gif') 50% 50% no-repeat rgb(249,249,249); + opacity: 0.8; + } + + </style> + + <link href="<?php echo base_url(); ?>application/css/styles.css" rel="stylesheet" > + <link href="<?php echo base_url(); ?>assets/vendor/bootstrap/css/bootstrap.min.css" rel="stylesheet"> + <link href="<?php echo base_url(); ?>assets/css/grayscale.min.css" rel="stylesheet"> + + <script src="<?php echo base_url(); ?>assets/vendor/jquery/jquery.min.js"></script> + <script src="<?php echo base_url(); ?>assets/js/grayscale.min.js"></script> + <script src="<?php echo base_url(); ?>assets/js/new_film.js"></script> + + <link href="<?php echo base_url(); ?>assets/vendor/fontawesome-free/css/all.min.css" rel="stylesheet"> + <link href="https://fonts.googleapis.com/css?family=Varela+Round" rel="stylesheet"> + <link href="https://fonts.googleapis.com/css?family=Nunito:200,200i,300,300i,400,400i,600,600i,700,700i,800,800i,900,900i" rel="stylesheet"> + + <meta charset="utf-8"> + <title>BingeWatcher</title> +</head> +<body id="page-top"> +<div class="loading"></div> +<script> $('.loading').fadeOut(100); </script> + +<nav class="navbar navbar-expand-lg navbar-light fixed-top" id="mainNav"> + <div class="container"> + <a class="navbar-brand js-scroll-trigger" href="../.." onclick="$('.loading').fadeIn(1);">Accueil</a> + </div> +</nav> + + +<!-- Header --> +<header class="masthead"> + <div class="container d-flex h-100 align-items-center"> + <div class="mx-auto text-center"> + <h1 class="mx-auto my-0 text-uppercase">Vos informations : </h1> + <br><br><br> + + <form action="compte_success" method="POST"> + <div class="form-group"> + <input class="form-control" name="email_edit" id="email_edit" type="email" value="<?php $this->load->library('session'); echo($_SESSION['username']); ?>"> + <?php echo form_error("email_edit");?> + </div> + <br> + <div class="form-group"> + <input class="form-control" name="password_edit" id="password_edit" type="password" placeholder="Entrez votre nouveau mot de passe + ( Non requis si vous souhaitez modifier uniquement votre email ) "> + <?php echo form_error("password_edit");?> + </div> + <br> + <div class="form-group"> + <input class="form-control" name="password_c_edit" id="password_c_edit" type="password" placeholder="Confirmez votre nouveau mot de passe"> + <?php echo form_error("password_c_edit");?> + </div> + <br> + <div> + <button class="btn btn-primary mx-auto" name="edition">Modifier vos identifiants</button> + </div> + </form> + </div> + </div> +</header> + + +<!-- Footer --> +<footer class="bg-black small text-center text-white-50"> + <div class="container"> + Copyright © La team Zer Aka Pichet Hansen Gub Pruneau Barnum & Source (le sang de la veine cette équipe) + </div> +</footer> + +<!-- Bootstrap core JavaScript --> +<script src="<?php echo base_url(); ?>assets/vendor/jquery/jquery.min.js"></script> +<script src="<?php echo base_url(); ?>assets/vendor/bootstrap/js/bootstrap.bundle.min.js"></script> + +<!-- Plugin JavaScript --> +<script src="<?php echo base_url(); ?>assets/vendor/jquery-easing/jquery.easing.min.js"></script> + +<!-- Custom scripts for this template --> +<script src="<?php echo base_url(); ?>assets/js/grayscale.min.js"></script> + +</body> +</html> \ No newline at end of file diff --git a/src/WebApp/application/views/compte_success.php b/src/WebApp/application/views/compte_success.php new file mode 100644 index 0000000..ba9f975 --- /dev/null +++ b/src/WebApp/application/views/compte_success.php @@ -0,0 +1,74 @@ +<?php +defined('BASEPATH') OR exit('No direct script access allowed'); +?><!DOCTYPE html> +<html> +<head> + + <style> + .loading { + position: fixed; + left: 0px; + top: 0px; + width: 100%; + height: 100%; + z-index: 9999; + background: url('https://web.archive.org/web/20170914202017im_/http://bradsknutson.com/wp-content/uploads/2013/04/page-loader.gif') 50% 50% no-repeat rgb(249,249,249); + opacity: 0.8; + } + + </style> + + <link href="<?php echo base_url(); ?>assets/vendor/bootstrap/css/bootstrap.min.css" rel="stylesheet"> + <link href="<?php echo base_url(); ?>assets/css/grayscale.min.css" rel="stylesheet"> + + <script src="<?php echo base_url(); ?>assets/vendor/jquery/jquery.min.js"></script> + <script src="<?php echo base_url(); ?>assets/js/grayscale.min.js"></script> + <script src="<?php echo base_url(); ?>assets/js/new_film.js"></script> + + <link href="<?php echo base_url(); ?>assets/vendor/fontawesome-free/css/all.min.css" rel="stylesheet"> + <link href="https://fonts.googleapis.com/css?family=Varela+Round" rel="stylesheet"> + <link href="https://fonts.googleapis.com/css?family=Nunito:200,200i,300,300i,400,400i,600,600i,700,700i,800,800i,900,900i" rel="stylesheet"> + + <meta charset="utf-8"> + <title>BingeWatcher</title> +</head> +<body id="page-top"> +<div class="loading"></div> +<script> $('.loading').fadeOut(100); </script> + +<nav class="navbar navbar-expand-lg navbar-light fixed-top" id="mainNav"> + <div class="container"> + <a class="navbar-brand js-scroll-trigger" href="../.." onclick="$('.loading').fadeIn(1);">Accueil</a> + </div> +</nav> + + +<!-- Header --> +<header class="masthead"> + <div class="container d-flex h-100 align-items-center"> + <div class="mx-auto text-center"> + <h1 class="mx-0">Les modifications ont été enregistrées!</h1> + </div> + </div> +</header> + + +<!-- Footer --> +<footer class="bg-black small text-center text-white-50"> + <div class="container"> + Copyright © La team Zer Aka Pichet Hansen Gub Pruneau Barnum & Source (le sang de la veine cette équipe) + </div> +</footer> + +<!-- Bootstrap core JavaScript --> +<script src="<?php echo base_url(); ?>assets/vendor/jquery/jquery.min.js"></script> +<script src="<?php echo base_url(); ?>assets/vendor/bootstrap/js/bootstrap.bundle.min.js"></script> + +<!-- Plugin JavaScript --> +<script src="<?php echo base_url(); ?>assets/vendor/jquery-easing/jquery.easing.min.js"></script> + +<!-- Custom scripts for this template --> +<script src="<?php echo base_url(); ?>assets/js/grayscale.min.js"></script> + +</body> +</html> \ No newline at end of file -- GitLab