82 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			PHP
		
	
	
			
		
		
	
	
			82 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			PHP
		
	
	
| <?php
 | |
| 
 | |
|     $HTML->setHTMLTitle("Passwort ändern");
 | |
|     $HTML->importSeitenInhalt("pages/HTML/profile.html");
 | |
| 
 | |
|     if(isset($_REQUEST['oldPassword']) || @$_REQUEST['oldPassword'] != "")
 | |
|     {
 | |
|         $OLDPassword = trim($_REQUEST['oldPassword']);
 | |
| 
 | |
|         if($OLDPassword != "")
 | |
|         {
 | |
|             if(password_verify($OLDPassword, $_SESSION['PASSWORD']))
 | |
|             {
 | |
|                 if(isset($_REQUEST['newPassword']) && $_REQUEST['newPassword'] != "")
 | |
|                 {
 | |
|                     $NewPassword = trim($_REQUEST['newPassword']);
 | |
|             
 | |
|                     if($NewPassword != "")
 | |
|                     {
 | |
|                         if(isset($_REQUEST['newPasswordRepeate']) || @$_REQUEST['newPasswordRepeate'] != "")
 | |
|                         {
 | |
|                             $NewPasswordRepeate = trim($_REQUEST['newPasswordRepeate']);
 | |
|                     
 | |
|                             if($NewPasswordRepeate != "")
 | |
|                             {
 | |
|                                 if($NewPasswordRepeate == $NewPassword)
 | |
|                                 {
 | |
|                                     $hash = password_hash($NewPassword, PASSWORD_ARGON2ID);
 | |
|                                     $statement = $RUNTIME['PDO']->prepare('UPDATE auth SET passwordHash = :PasswordHash WHERE UUID = :PrincipalID'); 
 | |
|                                     $statement->execute(['PasswordHash' => $hash, 'PrincipalID' => $_SESSION['UUID']]);
 | |
|                                     $_SESSION['PASSWORD'] = $hash;
 | |
|                                     $_SESSION['pwChanged'] = true;
 | |
| 
 | |
|                                     header('Location: index.php?page=password');
 | |
|                                     die();
 | |
|                                 }else{
 | |
|                                     $HTML->ReplaceSeitenInhalt("%%INFOMESSAGE%%", 'Passwörter stimmen nicht überein!'); 
 | |
|                                 }
 | |
|                             }else{
 | |
|                                 $HTML->ReplaceSeitenInhalt("%%INFOMESSAGE%%", 'Bitte gib das Passwort zur bestätigung noch einmal ein!'); 
 | |
|                             }
 | |
|                         }else{
 | |
|                             $HTML->ReplaceSeitenInhalt("%%INFOMESSAGE%%", 'Bitte gib das Passwort zur bestätigung noch einmal ein!'); 
 | |
|                         }
 | |
|                     }else{
 | |
|                         $HTML->ReplaceSeitenInhalt("%%INFOMESSAGE%%", 'Bitte gebe ein neues Passwort ein!'); 
 | |
|                     }
 | |
|                 }else{
 | |
|                     $HTML->ReplaceSeitenInhalt("%%INFOMESSAGE%%", 'Bitte gebe ein neues Passwort ein!'); 
 | |
|                 }
 | |
|             }else{
 | |
|                 $HTML->ReplaceSeitenInhalt("%%INFOMESSAGE%%", 'Das alte Passwort ist nicht richtig!'); 
 | |
|             }
 | |
|         }else{
 | |
|             $HTML->ReplaceSeitenInhalt("%%INFOMESSAGE%%", 'Gebe bitte dein Passwort ein.');
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     include '../app/OpenSim.php';
 | |
|     $opensim = new OpenSim();
 | |
| 
 | |
|     $PartnerName = "";
 | |
|     $PartnerUUID = $opensim->getPartner($_SESSION['UUID']);
 | |
|     if($PartnerUUID != null)$PartnerName = $opensim->getUserName($PartnerUUID);
 | |
| 
 | |
|     $HTML->ReplaceSeitenInhalt("%%offlineIMSTATE%%", ' '); 
 | |
|     $HTML->ReplaceSeitenInhalt("%%firstname%%", htmlspecialchars($_SESSION['FIRSTNAME'])); 
 | |
|     $HTML->ReplaceSeitenInhalt("%%lastname%%", htmlspecialchars($_SESSION['LASTNAME'])); 
 | |
|     $HTML->ReplaceSeitenInhalt("%%partner%%", htmlspecialchars($PartnerName)); 
 | |
|     $HTML->ReplaceSeitenInhalt("%%email%%", htmlspecialchars($opensim->getUserMail($_SESSION['UUID']))); 
 | |
|     $HTML->ReplaceSeitenInhalt("%%listAllResidentsAsJSArray%%", "");
 | |
| 
 | |
|     $pwChanged = false;
 | |
|     if(isset($_SESSION['pwChanged'])) {
 | |
|         $pwChanged = true;
 | |
|         unset($_SESSION['pwChanged']);
 | |
|     }
 | |
|     $HTML->ReplaceSeitenInhalt("%%INFOMESSAGE%%", $pwChanged ? 'Neues Passwort gespeichert.' : ' ');
 | |
|     
 | |
|     $HTML->build();
 | |
|     echo $HTML->ausgabe();
 | |
| ?>
 |