- $nickname = $this->trimmed('nickname');
- $fullname = $this->trimmed('fullname');
- $homepage = $this->trimmed('homepage');
- $description = $this->trimmed('description');
- $location = $this->trimmed('location');
- $aliasstring = $this->trimmed('aliases');
-
- if (!Validate::string($nickname, array('min_length' => 1,
- 'max_length' => 64,
- 'format' => NICKNAME_FMT))) {
- $this->showForm(_('Nickname must have only lowercase letters '.
- 'and numbers and no spaces.'));
- return;
- } else if ($this->nicknameExists($nickname)) {
- $this->showForm(_('Nickname already in use. Try another one.'));
- return;
- } else if (!User_group::allowedNickname($nickname)) {
- $this->showForm(_('Not a valid nickname.'));
- return;
- } else if (!is_null($homepage) && (strlen($homepage) > 0) &&
- !Validate::uri($homepage,
- array('allowed_schemes' =>
- array('http', 'https')))) {
- $this->showForm(_('Homepage is not a valid URL.'));
- return;
- } else if (!is_null($fullname) && mb_strlen($fullname) > 255) {
- $this->showForm(_('Full name is too long (max 255 chars).'));
- return;
- } else if (User_group::descriptionTooLong($description)) {
- $this->showForm(sprintf(_('description is too long (max %d chars).'), User_group::maxDescription()));
- return;
- } else if (!is_null($location) && mb_strlen($location) > 255) {
- $this->showForm(_('Location is too long (max 255 chars).'));
- return;
- }
-
- if (!empty($aliasstring)) {
- $aliases = array_map('common_canonical_nickname', array_unique(preg_split('/[\s,]+/', $aliasstring)));
- } else {
- $aliases = array();
- }
-
- if (count($aliases) > common_config('group', 'maxaliases')) {
- $this->showForm(sprintf(_('Too many aliases! Maximum %d.'),
- common_config('group', 'maxaliases')));
- return;
- }
-
- foreach ($aliases as $alias) {
- if (!Validate::string($alias, array('min_length' => 1,
- 'max_length' => 64,
- 'format' => NICKNAME_FMT))) {
- $this->showForm(sprintf(_('Invalid alias: "%s"'), $alias));
- return;