public function loadForgotPassword() { if (isset($_POST['email'])) { if ($_POST['email'] != '') { $user = new DinklyUser($this->db); $user->initWithEmail($_POST['email']); if ($user->getId()) { $token = bin2hex(openssl_random_pseudo_bytes(16)); $user->setAutoLoginHash($token); $user->setAutoLoginExpire(date('Y-m-d H:i:s', strtotime("+30 minutes"))); $user->save(); $user->sendSetPasswordEmail(); DinklyFlash::set('request_success', 'You have been sent a link to change your password that will expire in 30 minutes'); } else { DinklyFlash::set('request_error', 'The provided email did not belong to an account'); } } else { DinklyFlash::set('request_error', 'Please provide an email address'); } } return true; }