92 lines
3.5 KiB
PHP
Executable File
92 lines
3.5 KiB
PHP
Executable File
<?php
|
|
session_start();
|
|
require_once("config.inc.php");
|
|
require_once($yaptc_inc . "functions.inc.php");
|
|
$yaptc_pagename = "Profile";
|
|
require_once($yaptc_inc . "header.inc.php");
|
|
require_once($yaptc_inc . "menu.inc.php");
|
|
if (getSessionStatus() == false):
|
|
killSession();
|
|
else:
|
|
//********** BEGIN CONTENT **********// ?>
|
|
|
|
<?php
|
|
if (!empty($_POST)):
|
|
if (empty($_POST['password']) && empty($_POST['newpassword2'])):
|
|
updateUserProfile($yaptc_db, $_SESSION['user_id'], $_POST['firstname'], $_POST['lastname'], $_POST['email']);
|
|
header('Location: ' . $_SERVER['PHP_SELF']);
|
|
elseif ($_POST['password'] != $_POST['newpassword2']):
|
|
$errors['newpassword2'] = "New passwords do not match.";
|
|
elseif (!empty($_POST['password']) && ($_POST['password'] = $_POST['newpassword2'])):
|
|
require_once($yaptc_lib . "phpass-0.3/PasswordHash.php");
|
|
$hasher = new PasswordHash(8, FALSE);
|
|
$password = $hasher->HashPassword($_POST['password']);
|
|
updateUserPassword($yaptc_db, $_SESSION['user_id'], $password);
|
|
updateUserProfile($yaptc_db, $_SESSION['user_id'], $_POST['firstname'], $_POST['lastname'], $_POST['email']);
|
|
echo $_POST['password'];
|
|
echo $password;
|
|
header('Location: ' . $_SERVER['PHP_SELF']);
|
|
|
|
|
|
endif;
|
|
|
|
|
|
endif;
|
|
?>
|
|
|
|
|
|
<?php
|
|
|
|
$query = "SELECT users.id, users.password, users.created, users.username, users.firstname, users.lastname, users.email, usertypes.typename AS usertype FROM yaptc.users INNER JOIN yaptc.usertypes ON users.usertype = usertypes.id WHERE users.id = :id";
|
|
$stmt = $yaptc_db->prepare($query);
|
|
$stmt->execute(array(':id' => $_SESSION['user_id']));
|
|
$user = $stmt->fetchObject();
|
|
?>
|
|
|
|
<?php if (isset($errors['update'])): ?>
|
|
<p class="error"><?php echo $errors['update']; ?></p>
|
|
<?php endif; ?>
|
|
|
|
<h2 class="content-subhead">Profile Information</h2>
|
|
<p>You may make changes to your user profile below if you wish. Updates will take effect immediately on pressing "Save".</p>
|
|
<p>To change your password, enter a new password twice below and press save.</p>
|
|
<form class="pure-form pure-form-stacked" action="profile.php" method="post">
|
|
<fieldset id="update">
|
|
<div class="pure-g">
|
|
<div class="pure-u-1 pure-u-md-1-3">
|
|
<label for="username">Username</label>
|
|
<input type="text" name="username" maxlength="50" value="<?php echo $user->username; ?>" readonly>
|
|
<label for="created">Created</label>
|
|
<input type="text" name="created" value="<?php echo $user->created; ?>" readonly>
|
|
<label for="usertype">User Type</label>
|
|
<input type="text" name="usertype" maxlength="50" value="<?php echo $user->usertype; ?>" readonly>
|
|
</div>
|
|
<div class="pure-u-1 pure-u-md-1-3">
|
|
<label for="firstname">First Name</label>
|
|
<input type="text" name="firstname" maxlength="50" value="<?php echo $user->firstname; ?>">
|
|
<label for="lastname">Last Name</label>
|
|
<input type="text" name="lastname" maxlength="50" value="<?php echo $user->lastname; ?>">
|
|
<label for="email">Email</label>
|
|
<input type="text" name="email" maxlength="100" value="<?php echo $user->email; ?>">
|
|
</div>
|
|
<div class="pure-u-1 pure-u-md-1-3">
|
|
<label for="password">New Password</label>
|
|
<input type="password" name="password" maxlength="50">
|
|
<label for="newpassword2">Confirm Password</label>
|
|
<input type="password" name="newpassword2" maxlength="50">
|
|
</div>
|
|
<div class="pure-controls pure-u-1">
|
|
<button type="submit" class="pure-input-1 pure-button button-success ">Save</button>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</form>
|
|
|
|
|
|
|
|
|
|
<?php //********** END CONTENT **********//
|
|
endif;
|
|
require_once($yaptc_inc . "footer.inc.php");
|
|
?>
|