$userdir = strtolower("profile/$username");
if ($verify = @file_get_contents("$userdir/.token")
and $verify == $token) {
- $User = [
- 'name' => $username,
- 'dir' => $userdir,
- 'pass' => NULL,
- ];
+ $User = new User($userdir);
+ $User->pass = NULL;
}
else {
+ http_response_code(403);
print "<p class=warn>Code onjuist, geen toestemming om wachtwoord in te stellen.</p>\n";
return TRUE;
}
}
-elseif (!$User) {
- http_response_code(303);
+elseif (!$User->login) {
$target = urlencode($_SERVER['REQUEST_URI']);
- header("Location: /login?goto=$target");
- exit;
+ abort("/login?goto=$target", 303);
}
if ($_POST) {
require_once('login/pass.inc.php');
$error = passform($User, $_POST);
if (empty($error)) {
- print "<p>Het wachtwoord is aangepast. Voortaan met het nieuwe wachtwoord inloggen.</p>\n\n";
+ print "<p>Het wachtwoord is aangepast voor <em>{$User->login}</em>. Voortaan met het nieuwe wachtwoord inloggen.</p>\n\n";
return;
}
+ http_response_code(400);
print "<p class=warn>$error</p>\n\n";
}
?>
<form method="post">
<p>
-<?php if (!empty($User['pass'])) { ?>
+Hier kun je een nieuwe inlogcode instellen voor <em><?= htmlspecialchars($User->login) ?></em>.
+Dit zal de huidige code vervangen.
+</p>
+<p>
+<?php if ($User->login and strlen($User->pass)) { ?>
<input type="password" name="oldpass" value="" placeholder="Huidig wachtwoord" />
<?php } ?>
<input type="password" name="newpass" value="" placeholder="Nieuw wachtwoord" />
+<input type="password" name="passconf" value="" placeholder="Nogmaals" />
<input type="submit" value="Wijzig" />
</p>
</form>