|  |  |  | <?php | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | include_once( 'includes/status_messages.php' ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | function DisplayAuthConfig($username, $password){ | 
					
						
							|  |  |  |   $status = new StatusMessages(); | 
					
						
							|  |  |  |   if (isset($_POST['UpdateAdminPassword'])) { | 
					
						
							|  |  |  |     if (CSRFValidate()) { | 
					
						
							|  |  |  |       if (password_verify($_POST['oldpass'], $password)) { | 
					
						
							|  |  |  |         $new_username=trim($_POST['username']); | 
					
						
							|  |  |  |         if ($_POST['newpass'] !== $_POST['newpassagain']) { | 
					
						
							|  |  |  |           $status->addMessage('New passwords do not match', 'danger'); | 
					
						
							|  |  |  |         } else if ($new_username == '') { | 
					
						
							|  |  |  |           $status->addMessage('Username must not be empty', 'danger'); | 
					
						
							|  |  |  |         } else { | 
					
						
							|  |  |  |           if (!file_exists(RASPI_ADMIN_DETAILS)) { | 
					
						
							|  |  |  |               $tmpauth = fopen(RASPI_ADMIN_DETAILS, 'w'); | 
					
						
							|  |  |  |               fclose($tmpauth); | 
					
						
							|  |  |  |           } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |           if ($auth_file = fopen(RASPI_ADMIN_DETAILS, 'w')) { | 
					
						
							|  |  |  |             fwrite($auth_file, $new_username.PHP_EOL); | 
					
						
							|  |  |  |             fwrite($auth_file, password_hash($_POST['newpass'], PASSWORD_BCRYPT).PHP_EOL); | 
					
						
							|  |  |  |             fclose($auth_file); | 
					
						
							|  |  |  |             $username = $new_username; | 
					
						
							|  |  |  |             $status->addMessage('Admin password updated'); | 
					
						
							|  |  |  |           } else { | 
					
						
							|  |  |  |             $status->addMessage('Failed to update admin password', 'danger'); | 
					
						
							|  |  |  |           } | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |       } else { | 
					
						
							|  |  |  |         $status->addMessage('Old password does not match', 'danger'); | 
					
						
							|  |  |  |       } | 
					
						
							|  |  |  |     } else { | 
					
						
							|  |  |  |       error_log('CSRF violation'); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  | ?> | 
					
						
							|  |  |  |   <div class="row"> | 
					
						
							|  |  |  |     <div class="col-lg-12"> | 
					
						
							|  |  |  |       <div class="panel panel-primary"> | 
					
						
							|  |  |  |         <div class="panel-heading"><i class="fa fa-lock fa-fw"></i><?php echo _("Configure Auth"); ?></div> | 
					
						
							|  |  |  |         <div class="panel-body"> | 
					
						
							|  |  |  |           <p><?php $status->showMessages(); ?></p> | 
					
						
							|  |  |  |           <form role="form" action="?page=auth_conf" method="POST"> | 
					
						
							|  |  |  |             <?php CSRFToken() ?> | 
					
						
							|  |  |  |             <div class="row"> | 
					
						
							|  |  |  |               <div class="form-group col-md-4"> | 
					
						
							|  |  |  |                 <label for="username"><?php echo _("Username"); ?></label> | 
					
						
							|  |  |  |                 <input type="text" class="form-control" name="username" value="<?php echo htmlspecialchars($username, ENT_QUOTES); ?>"/> | 
					
						
							|  |  |  |               </div> | 
					
						
							|  |  |  |             </div> | 
					
						
							|  |  |  |             <div class="row"> | 
					
						
							|  |  |  |               <div class="form-group col-md-4"> | 
					
						
							|  |  |  |                 <label for="password"><?php echo _("Old password"); ?></label> | 
					
						
							|  |  |  |                 <input type="password" class="form-control" name="oldpass"/> | 
					
						
							|  |  |  |               </div> | 
					
						
							|  |  |  |             </div> | 
					
						
							|  |  |  |             <div class="row"> | 
					
						
							|  |  |  |               <div class="form-group col-md-4"> | 
					
						
							|  |  |  |                 <label for="password"><?php echo _("New password"); ?></label> | 
					
						
							|  |  |  |                 <input type="password" class="form-control" name="newpass"/> | 
					
						
							|  |  |  |               </div> | 
					
						
							|  |  |  |             </div> | 
					
						
							|  |  |  |             <div class="row"> | 
					
						
							|  |  |  |               <div class="form-group col-md-4"> | 
					
						
							|  |  |  |                 <label for="password"><?php echo _("Repeat new password"); ?></label> | 
					
						
							|  |  |  |                 <input type="password" class="form-control" name="newpassagain"/> | 
					
						
							|  |  |  |               </div> | 
					
						
							|  |  |  |             </div> | 
					
						
							|  |  |  |             <input type="submit" class="btn btn-outline btn-primary" name="UpdateAdminPassword" value="<?php echo _("Save settings"); ?>" /> | 
					
						
							|  |  |  |           </form> | 
					
						
							|  |  |  |         </div><!-- /.panel-body --> | 
					
						
							|  |  |  |       </div><!-- /.panel-default --> | 
					
						
							|  |  |  |     </div><!-- /.col-lg-12 --> | 
					
						
							|  |  |  |   </div><!-- /.row --> | 
					
						
							|  |  |  | <?php  | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 |