function register($username, $pwd1, $pwd2) { $error = ErrorHandler::getInstance(); $username = trim($username); $pwd1 = trim($pwd1); if (strlen($username) < $this->username_minlen) { $error->add('Username must be at least ' . $this->username_minlen . ' characters long'); return false; } if (strlen($username) > $this->username_maxlen) { $error->add('Username cant be longer than ' . $this->username_maxlen . ' characters long'); return false; } if (strlen($pwd1) < $this->password_minlen) { $error->add('Password must be at least ' . $this->password_minlen . ' characters long'); return false; } if ($pwd1 != $pwd2) { $error->add('Passwords dont match'); return false; } if ($username == $pwd1) { $error->add('Username and password must be different'); return false; } if (User::getByName($username)) { $error->add('Username taken'); return false; } if (ReservedWord::isReservedUsername($username)) { $error->add('Username is reserved'); return false; } if (Password::isForbidden($pwd1)) { $error->add('Your password is a very weak one and is forbidden to use'); return false; } $user_id = self::create($username, $pwd1); if (!$user_id) { $error->add('Failed to create user'); return false; } if ($this->post_reg_callback) { call_user_func($this->post_reg_callback, $user_id); } return $user_id; }
function handleEditUsername($p) { $p['new_user'] = trim($p['new_user']); $error = ErrorHandler::getInstance(); $session = SessionHandler::getInstance(); // dont put empty names or current username on request queue if (!$p['new_user'] || $p['new_user'] == $session->username) { $error->add('Useless request'); return false; } if (User::getByName($p['new_user'])) { $error->add('Username taken'); return false; } if (ReservedWord::isReservedUsername($p['new_user'])) { $error->add('Username is reserved'); return false; } // put request on queue for admins ModerationObject::add(MODERATE_CHANGE_USERNAME, $p['new_user']); echo '<div class="good">Your request for username change have been submitted and will be handled soon!</div>'; }