/** * Checks a new user's form for errors */ public function postNewUser(PHPWS_User $user) { $new_user_method = PHPWS_User::getUserSetting('new_user_method'); $result = $user->setUsername($_POST['username']); if (PHPWS_Error::isError($result)) { $error['USERNAME_ERROR'] = dgettext('users', 'Please try another user name.'); } if (!User_Action::testForbidden($user)) { $user->username = null; $error['USERNAME_ERROR'] = dgettext('users', 'Please try another user name.'); } if (!$user->isUser() || (!empty($_POST['password1']) || !empty($_POST['password2']))) { $result = $user->checkPassword($_POST['password1'], $_POST['password2']); if (PHPWS_Error::isError($result)) { $error['PASSWORD_ERROR'] = $result->getMessage(); } else { $user->setPassword($_POST['password1'], false); } } if (empty($_POST['email'])) { $error['EMAIL_ERROR'] = dgettext('users', 'Missing an email address.'); } else { $result = $user->setEmail($_POST['email']); if (PHPWS_Error::isError($result)) { $error['EMAIL_ERROR'] = dgettext('users', 'This email address cannot be used.'); } } if (!User_Action::confirm()) { $error['CONFIRM_ERROR'] = dgettext('users', 'Confirmation phrase is not correct.'); } if (isset($error)) { return $error; } else { return true; } }