/** * generate token for user, who can reset password * * @param int $userId * @return bool|string */ public function generateRecoveryToken($userId) { $token = SELF::generateToken(8); $salt = SELF::generateToken(); $tokenHash = SELF::calculateHash($token, $salt); $this->database->table('users_password_reset')->where('userId', $userId)->delete(); $data = array('salt' => $salt, 'token' => $tokenHash, 'userId' => $userId, 'created' => new \DateTime()); $status = $this->database->table('users_password_reset')->insert($data); if ($status) { return $token; } else { return FALSE; } }