/** * Returns true if the given name is a valid username. * * @param string $name username * @return boolean */ public static function isValidUsername($name) { if (!UserUtil::isValidUsername($name)) { return false; } $length = mb_strlen($name); if ($length < REGISTER_USERNAME_MIN_LENGTH || $length > REGISTER_USERNAME_MAX_LENGTH) { return false; } if (!self::checkForbiddenUsernames($name)) { return false; } if (REGISTER_USERNAME_FORCE_ASCII) { if (!preg_match('/^[\\x20-\\x7E]+$/', $name)) { return false; } } return true; }
/** * @see Form::validate() */ public function validate() { parent::validate(); // only for guests if (WCF::getUser()->userID == 0) { // username if (empty($this->username)) { throw new UserInputException('username'); } if (!UserUtil::isValidUsername($this->username)) { throw new UserInputException('username', 'notValid'); } if (!UserUtil::isAvailableUsername($this->username)) { throw new UserInputException('username', 'notAvailable'); } WCF::getSession()->setUsername($this->username); } else { $this->username = WCF::getUser()->username; } }
/** * Validates the username */ protected function validateUsername() { if (!WCF::getUser()->userID) { if (empty($this->username)) { throw new UserInputException('username'); } if (!UserUtil::isValidUsername($this->username)) { throw new UserInputException('username', 'notValid'); } if (!UserUtil::isAvailableUsername($this->username)) { throw new UserInputException('username', 'notAvailable'); } WCF::getSession()->setUsername($this->username); } else { $this->username = WCF::getUser()->username; } }
/** * Shows the page for creating the admin account. */ protected function createUser() { $errorType = $errorField = $username = $email = $confirmEmail = $password = $confirmPassword = ''; $username = ''; $email = $confirmEmail = ''; $password = $confirmPassword = ''; if (isset($_POST['send']) || self::$developerMode) { if (isset($_POST['send'])) { if (isset($_POST['username'])) { $username = StringUtil::trim($_POST['username']); } if (isset($_POST['email'])) { $email = StringUtil::trim($_POST['email']); } if (isset($_POST['confirmEmail'])) { $confirmEmail = StringUtil::trim($_POST['confirmEmail']); } if (isset($_POST['password'])) { $password = $_POST['password']; } if (isset($_POST['confirmPassword'])) { $confirmPassword = $_POST['confirmPassword']; } } else { $username = $password = $confirmPassword = '******'; $email = $confirmEmail = '*****@*****.**'; } // error handling try { // username if (empty($username)) { throw new UserInputException('username'); } if (!UserUtil::isValidUsername($username)) { throw new UserInputException('username', 'notValid'); } // e-mail address if (empty($email)) { throw new UserInputException('email'); } if (!UserUtil::isValidEmail($email)) { throw new UserInputException('email', 'notValid'); } // confirm e-mail address if ($email != $confirmEmail) { throw new UserInputException('confirmEmail', 'notEqual'); } // password if (empty($password)) { throw new UserInputException('password'); } // confirm e-mail address if ($password != $confirmPassword) { throw new UserInputException('confirmPassword', 'notEqual'); } // no errors // init database connection $this->initDB(); // get language id $languageID = 0; $sql = "SELECT\tlanguageID\n\t\t\t\t\tFROM\twcf" . WCF_N . "_language\n\t\t\t\t\tWHERE\tlanguageCode = '" . escapeString(self::$selectedLanguageCode) . "'"; $row = self::getDB()->getFirstRow($sql); if (isset($row['languageID'])) { $languageID = $row['languageID']; } // create user $user = UserEditor::create($username, $email, $password, array(1, 3, 4), array(), array('languageID' => $languageID), array(), false); // go to next step $this->gotoNextStep('installPackages'); exit; } catch (UserInputException $e) { $errorField = $e->getField(); $errorType = $e->getType(); } } WCF::getTPL()->assign(array('errorField' => $errorField, 'errorType' => $errorType, 'username' => $username, 'email' => $email, 'confirmEmail' => $confirmEmail, 'password' => $password, 'confirmPassword' => $confirmPassword, 'nextStep' => 'createUser')); WCF::getTPL()->display('stepCreateUser'); }
/** * Throws a UserInputException if the username is not unique or not valid. * * @param string $username */ protected function validateUsername($username) { if (empty($username)) { throw new UserInputException('username'); } // check for forbidden chars (e.g. the ",") if (!UserUtil::isValidUsername($username)) { throw new UserInputException('username', 'notValid'); } // Check if username exists already. if (!UserUtil::isAvailableUsername($username)) { throw new UserInputException('username', 'notUnique'); } }
/** * Returns true, if the given name is a valid username. * * @param string $name username * @return boolean */ public static function isValidUsername($name) { $length = StringUtil::length($name); return UserUtil::isValidUsername($name) && $length >= REGISTER_USERNAME_MIN_LENGTH && $length <= REGISTER_USERNAME_MAX_LENGTH && self::checkForbiddenUsernames($name); }
/** * Validates the username. */ protected function validateUsername() { // only for guests if (WCF::getUser()->userID == 0) { if (empty($this->username)) { throw new UserInputException('username'); } if (!UserUtil::isValidUsername($this->username)) { throw new UserInputException('username', 'invalid'); } if (!UserUtil::isAvailableUsername($this->username)) { throw new UserInputException('username', 'notUnique'); } WCF::getSession()->register('username', $this->username); } }