diff options
| author | Joseph Hunkeler <jhunkeler@gmail.com> | 2013-08-19 09:41:19 -0400 | 
|---|---|---|
| committer | Joseph Hunkeler <jhunkeler@gmail.com> | 2013-08-19 09:41:19 -0400 | 
| commit | c5eb569f5122d4140952bd5cc7ad4fdc5fbf8a23 (patch) | |
| tree | 37024ec14fde9fef92eef8e9f997f72731e5155d /admin/admins/functions.php | |
| parent | 41d7bde950d6166a6cc414a48d0fa57f3fd9a512 (diff) | |
| parent | 50f14f6bee7e1efaac5971579fc2e76c728ecad6 (diff) | |
| download | bayonetcms-master.tar.gz | |
Some more stuff
Diffstat (limited to 'admin/admins/functions.php')
| -rw-r--r-- | admin/admins/functions.php | 91 | 
1 files changed, 73 insertions, 18 deletions
diff --git a/admin/admins/functions.php b/admin/admins/functions.php index f3da1be..016b7a1 100644 --- a/admin/admins/functions.php +++ b/admin/admins/functions.php @@ -101,25 +101,15 @@  			ReportError("The email and or username you entered is already in use.");  			return;  		} -		 -		 -		$Name = "Rocky the Marne Dog"; -		$subject = "3rd ID Admin Password"; -		$header = "From: ". $Name . " < DO NOT RESPOND >\r\n"; //optional headerfields  -		$mail_body = "Do not respond to this email.\n\n------------------------------\nUsername: ".$username."\nPassword: ".$password."\n------------------------------\n\nTo login click on this link. http://testbed.3rd-infantry-division.org/cms/admin/ \n\nIt is recommended that you change your password once you login. To do so, click on Account Settings>Change Password."; -		 -		$sent = mail($email, $subject, $mail_body, $header); -		if(!$sent){ -			ReportError("Error validating email. This user was not saved."); -			return;		 -		}  -				 + +		EmailPassword($username, $password, $email); +  		$db->Query("INSERT INTO `bayonet_users` (`user_id` ,`username` ,`password` ,`lastname` ,`firstname` ,`email` ,`joined` ,`level` ,`all` ,`squadleader` ,`adjutant` ,`quartermaster`) VALUES (NULL, '$username', '$cryptpassword', '$last', '$first', '$email', CURRENT_TIMESTAMP, $level, $all, $squadleader, $adjutant, $quartermaster)");     		echo "Admin, '$username' level '$level' has been added. An email has been sent to him with his username and password.\n <br /><br />   			Please wait while you are redirected. <br /><br />   			<a href=\"?op=admins\">Click here if you don't feel like waiting.</a>"; -					 +  	    // 3 second redirect to go back to the edit page     		PageRedirect(2, "?op=admins");  	    return; @@ -158,6 +148,22 @@  <?php   } + function EmailPassword($username, $password, $email) + { + 		$name = "Bayonet CMS"; +		$subject = "Bayonet CMS Admin Password"; +		$header = "From: ". $name . " < DO NOT RESPOND >\r\n"; //optional headerfields  +		$mail_body = "Do not respond to this email.\n\n------------------------------\nUsername: ".$username."\nPassword: ".$password."\n------------------------------\n\nTo login click on this link. ".Bayonet_Config::$ini['site']['url']."admin/ \n\nIt is recommended that you change your password once you login. To do so, click on Account Settings>Change Password."; + +		$sent = mail($email, $subject, $mail_body, $header); +		if(!$sent){ +			ReportError("Error validating email. This user was not saved."); +			return false;		 +		} +		 +		return true; + } +    function GetPermissions($user = NULL)   {   ?> @@ -217,7 +223,7 @@      while(strlen($string)<$length) {           $string .= substr($possible_charactors, rand()%(strlen($possible_charactors)),1);       }  -    return($string);  +    return($string);   }   function EditAdmin($user_id) @@ -264,7 +270,11 @@  		Edit the attributes of this administrator.<br />  		<form method="POST" action="<?php $_SERVER['PHP_SELF']?>">  		<table> -			<tr><th>Username:</th><td><input type="text" value="<?php echo $admin['username']; ?>" name="username" /></td></tr> +			<tr><th>Username:</th><td><input type="text" value="<?php echo $admin['username']; ?>" name="username" /> +		<?php if($maxLevel >= 2): ?> +			<a href="?op=admins&resetpassword=<?php echo $user_id; ?>"><input type="button" value="Reset Password" /></a> +		<?php endif; ?> +			</td></tr>  			<tr>  				<th>Level:</th>  				<td> @@ -299,8 +309,8 @@  	global $db;  	$maxLevel = $_SESSION['level']; -	$result = $db->Query("SELECT `username` FROM `bayonet_users` WHERE `user_id` = '$user_id'"); -	$admin = $db->Fetch($result); +	$result = $db->Query("SELECT `username` FROM `bayonet_users` WHERE `user_id` = '$user_id' LIMIT 1"); +	$admin = $db->FetchRow($result);  	if(isset($_POST['proceed']))  	{ @@ -326,4 +336,49 @@  	</center>  	<?php   } +  + function ResetPassword($user_id) + { + 	global $db; + 	$result = $db->Query("SELECT `username`, `email` FROM `bayonet_users` WHERE `user_id` = '$user_id' LIMIT 1"); + 	$admin = $db->FetchRow($result); + 	decho($admin); + 	 + 	if(isset($_POST['proceed'])) + 	{ + 		$password = GeneratePassword(8);		 +		$cryptpassword = crypt(md5($password),'iamnotadirtywhorebitch'); +		 +		$status = EmailPassword($admin['username'], $password, $admin['email']); +		 +		if($status) +		{ +			$db->Query("UPDATE `bayonet_users` SET `password` = '$cryptpassword' WHERE `user_id` = '$user_id' LIMIT 1"); +			echo "Password has been reset and emailed to '{$admin['username']}'"; + 			PageRedirect(3, "?op=admins"); +		} +		else +		{ +			ReportError("An error has occured emailing the new password. It will not take effect."); +		} + 		 + 		return; + 	} + 	if(isset($_POST['cancel'])) + 	{ + 		echo "The password <b>WILL NOT</b> be reset for '{$admin['username']}'"; + 		PageRedirect(3, "?op=admins"); + 		return; + 	} + 	?> +	<center> +	<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post"> +	<table> +	<th>Are you SURE you want to reset this user's password: '<?php echo $admin['username']?>'?</th> +	<tr><th><button name="proceed">Yes</button>   <button name="cancel">No</button></th></tr> +	</table> +	</form> +	</center> +	<?php + }   ?>
\ No newline at end of file  | 
