$page = 'membership'; require 'header.php'; if ($user) { fURL::redirect('/members'); } if (isset($_POST['reset'])) { try { fRequest::validateCSRFToken($_POST['token']); $validator = new fValidation(); $validator->addRequiredFields('password'); $validator->validate(); if ($_POST['password'] != $_POST['passwordconfirm']) { throw new fValidationException('Passwords do not match'); } $user = User::checkPasswordResetToken($_POST['resettoken']); if ($user == False) { throw new fValidationException('Invalid token, please make sure you followed the correct link'); } $user->setPassword(fCryptography::hashPassword($_POST['password'])); $user->store(); fURL::redirect('/login.php'); exit; } catch (fValidationException $e) { echo "<p>" . $e->printMessage() . "</p>"; } catch (fSQLException $e) { echo "<p>An unexpected error occurred, please try again later</p>"; trigger_error($e); } } elseif (isset($_POST['sendtoken'])) { try {