12 changed files with 171 additions and 6 deletions
			
			
		| @ -0,0 +1,80 @@ | |||
| <?php | |||
|   include_once './api/send_mail.php'; | |||
|   @include('components/breadcrumb/breadcrumb.php'); | |||
|   setlocale(LC_MONETARY, 'it_IT.UTF-8'); | |||
| 
 | |||
|   if(isset($_POST['reset_usr'])) { | |||
| 
 | |||
|     $query = "SELECT * FROM `users` WHERE email = '".trim($_POST['reset_usr'])."'"; | |||
|     $q = mysqli_query($conn, $query); | |||
|     if(mysqli_affected_rows($conn)) { | |||
|       $new_password = base_convert(date('Y-m-d H:i:s'), 10, 36); | |||
|       $user = mysqli_fetch_array($q); | |||
| 
 | |||
|       $query = "UPDATE `users` SET `password` = '".md5($new_password)."' WHERE id = '".$user['id']."'"; | |||
|       $q = mysqli_query($conn, $query); | |||
| 
 | |||
|       $toEmail = $user['email']; | |||
|       $toName = $user['first_name']." ".$user['last_name']; | |||
|       $subject = 'Iolovolio - Reimposta password'; | |||
|       $body = emailHeader(); | |||
| 
 | |||
|       $body .= "<tr><td colspan=\"4\" style=\"padding: 10px 20px\">Ciao ".$user['first_name'].",<br>". | |||
|                 "ricevi questa mail perchè hai richiesto il reset della tua password su Iolovolio, di seguito troverai la tua nuova password temporanea, ti consigliamo di modificarla al primo accesso:<br><br>". | |||
|                 "Username: ".$user['email']."<br>". | |||
|                 "Nuova password: ".$new_password."<br>". | |||
|                 "</td></tr>"; | |||
| 
 | |||
|       $body .= "<tr><td colspan=\"4\" style=\"padding: 10px 20px\">Grazie,<br>Servizio Clienti Iolovolio<br><br></td></tr>"; | |||
|       $body .= emailFooter(); | |||
| 
 | |||
| 
 | |||
|       $sent = sendEmail($toEmail, $toName, $subject, $body, 'noreply'); | |||
|       if($sent === true) { | |||
|         $message = "Password reimpostata correttamente!<br> | |||
|                     Ti abbiamo inviato la nuova password provvisoria all'indirizzo ".trim($_POST['reset_usr']); | |||
|       } else { | |||
|         $message = "Erore invio mail!<br> | |||
|                     Contatta l'assistenza"; | |||
|       } | |||
| 
 | |||
|     } else { | |||
|       $message = "ERRORE: L'indirizzo email inserito non è presente nel database!<br>Controlla l'indirizzo inserito e riprova."; | |||
|     } | |||
|   } | |||
| 
 | |||
| ?> | |||
| 
 | |||
| <div class="component-passwordRecovery"> | |||
|   <div class="container"> | |||
|     <div class="row"> | |||
| 
 | |||
|       <?php | |||
|         if($message) { | |||
|           echo "<div class=\"message col-12\">$message</div>"; | |||
|         } | |||
|       ?> | |||
| 
 | |||
|       <div class="content col-12"> | |||
|         <div class="row"> | |||
|           <div class="col-12 col-md-6 mb-5"> | |||
|             <span class="title">Hai dimenticato la password?</span> | |||
|             <span class="subtitle">Inserisci l'indirizzo email-con il quale ti sei registrato</span> | |||
|             <form class="reset-form <?= $no_user ? 'error' : '';?>" action="/recupera-password" method="POST"> | |||
|               <div class="row"> | |||
|                 <div class="col-12"> | |||
|                   <span class="label">E-mail</span> | |||
|                   <input type="email" name="reset_usr" class="input input-text"> | |||
|                 </div> | |||
|                 <div class="col-12 mt-4"> | |||
|                   <button class="button button-brown button-big mr-auto">Reimposta password</button> | |||
|                 </div> | |||
|               </div> | |||
|             </form> | |||
|           </div> | |||
|         </div> | |||
|       </div> | |||
|     </div> | |||
|   </div> | |||
| </div> | |||
| 
 | |||
| @ -0,0 +1,5 @@ | |||
| 
 | |||
| $(document).ready( () => { | |||
|   console.log('Load component - passwordRecovery') | |||
| 
 | |||
| }) | |||
| @ -0,0 +1,60 @@ | |||
| @import "../../src/scss/variables.scss"; | |||
| @import "../../src/scss/mixins.scss"; | |||
| 
 | |||
| .component-passwordRecovery { | |||
|   padding: 10px 0 40px 0; | |||
|   min-height: 100vh; | |||
| 
 | |||
|   .message { | |||
|     color: $white; | |||
|     background: $brown; | |||
|     padding: 10px; | |||
|     margin-bottom: 20px; | |||
|     @include font-style($font-sans, 'regular', $font-12); | |||
|     animation: blinker 2s linear 1; | |||
|   } | |||
| 
 | |||
|   .content { | |||
| 
 | |||
|     .title { | |||
|       display: block; | |||
|       @include font-style($font-serif, 400, $font-32); | |||
|       color: $black; | |||
|       height: 50px; | |||
|     } | |||
| 
 | |||
|     .subtitle { | |||
|       display: block; | |||
|       @include font-style($font-sans, 700, $font-16); | |||
|       color: $gray; | |||
|       height: 40px; | |||
|     } | |||
| 
 | |||
|     .label { | |||
|       display: block; | |||
|       @include font-style($font-sans, 700, $font-16); | |||
|       color: $gray; | |||
|       padding: 15px 0 5px 0; | |||
|     } | |||
| 
 | |||
|     .errors { | |||
|       display: block; | |||
|       @include font-style($font-sans, 700, $font-16); | |||
|       color: $red; | |||
|       padding: 15px 0 5px 0; | |||
|     } | |||
| 
 | |||
|     .input { | |||
|       max-width: 400px; | |||
|       &.error { | |||
|         border: 1px solid $red; | |||
|       } | |||
|     } | |||
| 
 | |||
|     .submit { | |||
|       @include font-style($font-serif, 700, $font-16); | |||
|     } | |||
|   } | |||
| } | |||
| 
 | |||
| 
 | |||
| @ -0,0 +1,2 @@ | |||
| 
 | |||
| ${require('../components/passwordRecovery/passwordRecovery.html')} | |||
					Loading…
					
					
				
		Reference in new issue